shell编程
文章平均质量分 70
shell编程
锦衣admin
每个鬼故事都是别人的悲惨世界!
展开
-
Linux之expect命令
Linux之expect命令expect是一个自动化交互套件,主要应用于执行命令和程序时,系统以交互形式要求输入指定字符串,实现交互通信。expect自动交互流程:spawn启动指定进程—expect获取指定关键字—send向指定程序发送指定字符—执行完成退出.注意该脚本能够执行的前提是安装了expect...原创 2021-06-24 17:21:49 · 12058 阅读 · 0 评论 -
Linux之shell脚本编程
Linux之shell脚本编程shell脚本介绍shell编程命令数据检索命令grep命令egrep命令cut数据命令截取tr命令数据处理命令shell脚本介绍shell编程是什么?通过shell语言将执行一个任务的所有代码(命令)写入一个文件,并给执行权限。以后需要执行该任务的时候,只需要执行该文件,计算机就会自动完成这个任务shell编程是一门过程语言,只需要一步步完成执行的代码(命令)就能完成一个任务shell编程能干什么?解放双手,将重复性的工作,全部通过脚本来完成。高效且不会出错原创 2021-06-05 17:38:20 · 1064 阅读 · 2 评论 -
shell编程之awk(数据筛选与处理)
shell编程之awk(数据筛选与处理)awk 命令介绍awk 语法awk 的基本应用awk 对字段(列)的提取awk 对记录(行)的提取awk 程序的优先级awk 高级应用-F命令选项awk 定义变量(-v命令)awk 定义数组awk 运算awk 比较预算:>、>=、==、<、<=、!=awk 数学运算:+、-、\*、/、\*\*、%、++、+=、--、-=awk 字符串匹配运算:==、!=、\~、!\~awk 逻辑运算:&&、||awk 环境变量FIELDWIDT原创 2021-06-05 17:37:42 · 10666 阅读 · 0 评论 -
shell编程之行编辑器 - sed 对文件进行操作
shell编程之行编辑器 - sed 对文件进行操作行编辑器 - sed 介绍sed 语法command 命令说明增 演示:a 后、i 前删 演示:d 删改 演示:s 替换、c 更改、y 转换查 演示:p 打印(两遍)options 选项说明-e 演示:多条件用 ; 分割-f` 演示:调用文本命令-n 演示:抑制内存输出-i 演示:更改原文件-i.bak 演示:先备份再更改原文件-r 演示:扩展正则flags 标志说明数字 演示:匹配第几个替换字符串g 演示:替换所有w filename 演示:将替换结原创 2021-06-05 17:35:55 · 389 阅读 · 0 评论 -
shell编程之正则表达式
shell编程之正则表达式正则表达式介绍第一套字符定位符匹配符限定符第二套POSIX 字符正则表达式介绍正则表达式: 是一组特殊符号,通过这些符号可以根据需要匹配内容的格式生成一个公式作用: 用这个公式将想要的内容全部匹配出来shell下能使用正则表达式的命令有:grep 、sed、awk、vim、find限定符第一套字符定位符定位符使用技巧: 同时锚定开头和结尾,做精确匹配;单一锚定开头或结尾,做模糊匹配定位符描述^锚定开头;如:^a,表示以a开头。默认锚定一个字原创 2021-06-04 02:51:23 · 510 阅读 · 0 评论 -
shell编程之函数和case多条件分支语句
shell编程之函数函数介绍函数语法定义通过函数编写功能脚本case语句普通相亲nginx 启动关闭服务正则表达式函数介绍函数介绍:shell 中允许将一组命令集合或语句形成一段可用代码,这些代码块称为shell函数。给这段代码起个名字称为函数名,后续可以直接调用该段代码的功能即将完后一个功能的代码进行命名和封装,后续按需调用函数的优点:代码模块化,调用方便,节省内存代码模块化,代码量少,排错简单代码模块化,可以改变代码的执行顺讯函数的调用:直接键入函数名就可以调用可原创 2021-06-04 00:13:38 · 633 阅读 · 0 评论 -
shell编程之流程控制-循环语句
shell编程之流程控制-循环语句循环语句介绍循环语句 - forfor C格式语法for 嵌套 iffor 嵌套 forfor 与数组遍历循环控制循环控制 - sleep(控制)循环控制 - break(打断)循环控制 - continue(跳过某次循环)脚本退出命令 - exit参数控制命令 - shift循环语句 - whilewhile 与 shell 运算(比较运算)while 与 整数的比较运算while 与 浮点数的比较运算while 与 字符串的比较运算循环语句介绍循环语句介绍:工作中原创 2021-06-02 19:39:35 · 827 阅读 · 0 评论 -
if 判断语句与shell运算
if 判断语句与shell运算if 与 shell 运算if 条件是浮点型比较运算if 条件是文件类型总结if 条件是字符串比较运算if 条件是逻辑运算if 高级用法if 使用双小圆括号:`if (( 条件 ))`if 使用双方括号:`if [[ 条件 ]]`if 语句简写if 与 shell 运算if 条件是浮点型比较运算处理浮点型数字前需要将其转换成整数类型,再进行比较方法:需要比较的浮点数同时放大N倍处理成整形再进行比较if 实现浮点型比较运算:#l 编写脚本: [原创 2021-06-01 18:40:30 · 596 阅读 · 0 评论 -
shell编程之 if 判断语句
shell编程之判断语句 - if判断语句介绍 - if单if语法判断语句介绍 - if当编写程序时,需要对上一步执行代码是否执行成功进行判断,可以用if语句进行判断。通过查看if语句执行的判断结果查看代码是否执行成功单if语法对给定的条件进行判断,条件返回Ture执行Ture语句,条件为False则退出脚本语法格式:if [condition] => true or false then => 条件为ture时执行commands代码块 commands =>原创 2021-06-01 02:04:10 · 1875 阅读 · 0 评论 -
shell编程之数组
shell编程之数组数组介绍普通数组关联数组数组介绍数组可以让用户一次性赋予多个值,读取数据时只需要通过索引调用普通数组: 只能使用整数作为数组索引(元素的下标)关联数组: 可以使用字符串作为数组索引(元素的下标)元素的下标从0开始,即下标0代表元素1,下标1元素2,下标2代表元素3普通数组普通数组说明:普通数组定义: #l 数组名称=(元素1 元素2 元素3 ..) 下标: 0 1 2数组赋取值: 一次赋取一个值: 命令格式:通过下标赋取值 #l 数组原创 2021-05-31 06:53:01 · 312 阅读 · 0 评论 -
shell编程之shell 运算
shell运算shell 运算shell 运算赋值运算:=赋值运算符: = :赋值运算符演示: a=10 name='pdd'备注:字符串必须用引号引起来算术运算(四则运算):expr命令:不能开方let命令$(())命令bc命令:只有bc命令能做浮点运算算术运算符: +、-、*、\ :四则运算符,加减乘除 扩展: % :取余 ** :开方 运算命令:expr、let、$(())、bc命令。前三个只能做整数运算;bc命令能做浮点运算演示: #原创 2021-05-30 23:09:42 · 399 阅读 · 0 评论 -
shell编程之shell格式化输出
shell格式化输出shell格式化输出echo 命令输出字体颜色shell格式化输出echo 命令功能:将内容输出到默认显示设备应用场景:需要计算机程序输出的地方echo命令的功能是在显示器上显示一段文字,一般起到一个提示的作用echo命令说明:命令格式: # echo 选项 字符串 补充说明:echo命令会将输出的字符串送往标准输出。输出的字符串以空白符隔开,并在最后加上换行符 选项说明: --help:显示帮助。如:echo --help --version:显示版原创 2021-05-30 20:45:48 · 1554 阅读 · 0 评论 -
shell编程之shell脚本语法
shell脚本语法shell脚本语法shell脚本语法shell 脚本组成:脚本的命名:要有意义,如:nginx_install.sh ,脚本名称+脚本扩展名(加上脚本扩展名易于辨识)名字不要太长,26字节内代码规范:1. #!/bin/bash => 脚本第一行,"#!" 表示魔法字符,指定脚本代码执行的程序(命令存放的路径)。 => 即它告诉系统这个脚本需要什么解析器来执行,也就是使用哪一种shell类型2. # 代表注释符,#! 是特例,通过注释原创 2021-05-30 15:19:30 · 180 阅读 · 0 评论 -
shell编程之变量定义
shell编程之变量定义变量介绍变量定义变量分类本地变量环境变量全局变量系统变量(内置变量)变量介绍计算机中的单位: 1B = 8b 1KB = 1024B 1MB = 1024KB 1GB = 1024MB 1TB = 1024GB 1PB = 1024TB 1EB = 1024TB b:是计算机内部数据储存的最基本单位(bit 位) B:计算机中数据处理的基本单位,计算机中以字节为单位存储和解释信息(byte 字节)cpu读取数据时的操作:读:计算机将数据从硬盘这种读出原创 2021-05-30 15:16:56 · 5174 阅读 · 0 评论 -
shell编程之shell字符
Linux之shell编程shell字符shell字符shell字符shell基本字符说明:基本字符说明: #l ! :执行历史命令。如:!100 就是执行历史命令的第100条;!! 是执行上一条命令 #l $ :变量中取内容符号 #l \ :转义字符。不跟运算是是转义字符 #l + - * \ % :运算符。对应 加 减 乘 除 取余数 #l & :后台执行。 #l ; :分号可以在shell中一行执行多条命令,命令之间用分号";" 分割 #l `` :反引号,在命令原创 2021-05-29 16:30:29 · 430 阅读 · 0 评论 -
shelll编程之xargs命令:上一个命令输出作为下一个命令的输入
shelll编程之xargs命令:上一个命令输出作为下一个命令的输入xargs命令xargs命令xargs命令: 可以将管道或者标准输入(stdin)的数据转换成命令行参数,也能够从文件的输出中读取参数xargs命令: 一般是和管道一起使用xargs命令说明:命令格式: #l 命令 | xargs 选项 选项的值 选项说明: -a filename:从文件中读入作为stdin,如:xargs -a 1.txt(就是读取1.txt的内容作为下一参数的stdin) -E flag:f原创 2021-05-29 14:18:55 · 3574 阅读 · 0 评论 -
shell编程之tee命令和paste命令:数据输出命令
shell编程之tee命令和paste命令:数据输出命令tee命令:双向输出命令paste命令:多文件合并输出命令tee命令:双向输出命令作用:双向输出用途:多路径输出tee命令说明:命令格式: #L 命令 | tee 选项 filenema 选项说明: -a:双向追加重定向 #l 注意:tee命令从标准输入读取并写入标准输出和文件,即:双向覆盖重定向<屏幕输出|文本输入> 演示: # echo "hello word" [root@server原创 2021-05-28 17:38:59 · 878 阅读 · 0 评论 -
shell编程之sort命令和uniq命令:数据排序去重命令
sort命令sort命令sort命令sort:将文件的每一行作为一个单位,从首字符向后,依次按ASCII码值进行比较,最后将他们按升序输出。-u :去除重复行-r :降序排列,默认是升序-o : 将排序结果输出到文件中 类似 重定向符号>-n :以数字排序,默认是按字符排序-t :分隔符-k :第N列-b :忽略前导空格。-R :随机排序,每次运行的结果均不同。 示例:# sort -n -t: -k3 1.txt 按照用户的uid进行升序排列# sort -n原创 2021-05-28 17:06:26 · 3217 阅读 · 0 评论 -
shll编程之cut命令和tr命令:数据处理命令
tr命令tr命令tr命令作用:tr命令用来从标准输入中通过替换或删除操作进行字符转换主要用于删除文件中控制字符或进行字符转换使用tr命令时要转换两个字符串:字符串1用于查询,字符串2用于处理各种转换。tr命令说明:命令格式: # tr 选项 字符串1 [字符串2] < filename 选项说明: -d:删除字符串1中所有输入字符 -s:删除所有重复出现字符序列,只保留第一个。如:"aabbabab",只保留:"ababab" 字符串选择说明: a-z:代表原创 2021-05-28 15:07:13 · 217 阅读 · 0 评论 -
shell编程之grep命令和egrep命令:行截取命令
grep命令和egrep命令grep命令和egrep命令grep命令和egrep命令grep命令用于根据关键字进行检索过滤,从数据源中检索相应的字符串进行过滤输出egrep命令是grep命令的增强版grep命令说明:命令格式: # grep 选项 "关键字" 文件名 选项说明: -i:不区分大小写 -w:按单词搜索 -c:统计匹配到的次数 -v:查找不包含指定"关键字"的行,反向选择 -o:打印匹配关键字 -n:显示行号 -r:逐层遍原创 2021-05-28 14:14:47 · 2326 阅读 · 0 评论