Shell高级篇
老徐是个铁憨憨
这个作者很懒,什么都没留下…
展开
-
Shell扩充-[]与[[]]、bc命令、seq命令、数组
请坐![]与[[]]bc命令seq命令数组**基础用法**数组遍历脚本数组元素的添加、修改数组切片元素切片数组替换、删除[]与[[]]在条件判断时,使用 [ ] 与 [ [ ] ] 的区别在使用==或!=时,可以使用[ ] 与 [ [ ] ],但是符号两侧必须加空格[ $a == $b ] 或 [[ $a == $b ]]在使用<或>时,只能使用[ [ ] ],但是符号两侧有无空格都可以[[ $a>$b ]] 或 [[ $a > $b ]]在使用>=原创 2020-05-17 17:47:43 · 324 阅读 · 0 评论 -
Shell编程高级篇之流程控制-特殊流程控制语句
请坐!exitbreakcontinueexit系统中的exit是退出当前登录,但是在shell中则只是退出脚本,回到Linux命令行。exit [ 值 ]exit 退出时如果定义好了返回值,那么我们可以通过“$?”来查看break当程序执行到break 语句时,会结束当前的循环程序,执行循环程序后面的程序。(个人理解,离开当前循环,继续执行当前循环后面的循环)continuecontinue则仅是结束当前循环程序中的本次循环(单次循环),然后继续进行当前循环中变量的下一个值的循环。原创 2020-05-16 18:14:25 · 232 阅读 · 0 评论 -
Shell编程高级篇之流程控制-函数及脚本
函数语法格式:函数名 () {程序}函数名 变量#调用函数原创 2020-05-16 18:10:58 · 132 阅读 · 0 评论 -
Shell编程高级篇之流程控制-while循环以及脚本案例、until循环
while循环只要条件判断式成立,循环就会一直继续,直到条件判断式不成立,循环才会停止。语法格式:while [ 条件判断式 ]do程序doneuntil循环until循环和while循环相反,只要条件判断式不成立,则一直循环,什么时候成立,什么时候结束循环语法格式:until [ 条件判断式 ]do程序done...原创 2020-05-16 18:08:55 · 178 阅读 · 0 评论 -
Shell编程高级篇之流程控制-for循环、脚本案例
for循环for循环是固定循环,循环次数是有限的次数,也叫计数循环。语法一:for 变量 in 值1 值2 值3 ……#依次把值1、值2....带入到变量中do#把变量带进程序中运行程序done注:这种语法中for循环的次数,取决于in后面值的个数(空格分隔),有几个值就循环几次,并且每次循环都把值赋予变量。也就是说,假设in后面有三个值,for会循环三次,第一次循环会把值1赋予变量,第二次循环会把值2赋予变量,依次类推。语法二:for ((初始值;循环控制条件;变量变原创 2020-05-16 17:33:19 · 265 阅读 · 0 评论 -
Shell编程高级篇之流程控制-case分支语句、脚本案例
case分支语句case分支语句与if多分支语句相似不过,case分支语句只能判断一种条件语法格式:case $变量名 in值1) 程序#变量的值等于值1,则执行程序1;;值2) 程序#变量的值等于2,则执行程序2;;#省略多个分支…………*) 程序#变量的值都不匹配上面的值,则执行此程序;;esac注意:case语句,会取出变量名中的值,依次与多分支的值进行比较1. 如果数值/字符串满足,则执行相对应的程序,执行完成结束2. 如果当前对比,数值/字符原创 2020-05-16 17:02:53 · 250 阅读 · 0 评论 -
Shell编程高级篇之流程控制-if条件判断、if脚本案例
请坐!if条件判断单分支if条件语句双分支if条件语句多分枝if分支语句if条件判断单分支if条件语句语句格式:if [ 条件判断式 ]#如果条件判断式满足条件,就执行then后的程序命令#如果不满足条件,则直接退出 then 程序fi注意:if语句必须用fi结束条件判断式的[],[]中的判断式条件必须要有空格(如:[ $a -le $b ]都要有一个空格)then后后面的程序,是在条件判断式成立后采取执行双分支if条件语句语句格式:if [条件判断式]then原创 2020-05-16 16:46:48 · 431 阅读 · 0 评论 -
Shell编程高级篇之条件判断
请坐!条件判断种类根据文件类型进行判断按照文件权限进行判断俩个文件之间的比较判断两个整数之间的比较判断字符串的判断多重条件判断条件判断种类根据文件类型进行判断按照文件权限进行判断俩个文件之间的比较判断两个整数之间的比较判断字符串的判断多重条件判断根据文件类型进行判断按照文件权限进行判断俩个文件之间的比较判断两个整数之间的比较判断字符串的判断多重条件判断...原创 2020-05-13 08:42:28 · 241 阅读 · 0 评论 -
Shell编程高级篇之字符截取与替换命令(sed、sort、uniq)
请坐!sed命令sort命令uniq命令sed命令sed实现数据的选取,替换,删除,新增等功能,在不使用编辑器的情况下,对文件内容进行修改格式:sed +参数 '动作' 文件名参数-n 把sed命令修改的行输出到命令行(不加-n,就是把输出全文内容+修改行的内容)-i 可以直接把修改的内容更新到文件中动作p:把输出的指定行打印到屏幕上,要打印第几行就是几pa:追加内容,在当前行的行后,添加一行或多行追加多行i:插入内容,在当前行的行前,插入一行或原创 2020-05-11 23:20:40 · 518 阅读 · 0 评论 -
Shell编程高级篇之字符截取和替换命令(cut、printf、awk)
请坐!字符截取和替换命令cut命令printf命令(动作)awk命令awk 预定义条件awk 关系运算条件awk 包含匹配关系awk 内置变量awk 的数值运算字符截取和替换命令cut命令命令格式:cut +参数 +文件名参数:-f 列号:提取第几列,默认识别制表符分割出来的列-d 分隔符:按照指定的分割符进行分割,然后结合-f提取指定列,如:-d “:” 表示以冒号为分隔符-c 字符范围:不依赖分割符来分割,而是通过字符范围进行提取n-m表示从第n提取到第m个字符n-表示从第n原创 2020-05-09 23:22:07 · 1318 阅读 · 0 评论 -
Shell编程高级篇之正则表达式
请坐!基础正则表达式. (英文的。)[]*?{}^与$()扩展正则表达式+|正则表达式与之前学过的通配符很相似,但是功能有区别通配符:find 模糊匹配(默认是精准匹配)正则表达式:grep精准匹配(默认是模糊匹配)基础正则表达式. (英文的。)表示匹配任意一个字符(字母、数字、符号等任意字符)[][]表示匹配[]中任意一个字符,不过只能匹配一个字符如:[abc]要么匹配a,要...原创 2020-05-07 18:07:27 · 169 阅读 · 0 评论