shell
测试开发-学习笔记
时刻保持学习。
展开
-
cut、sort、uniq命令
cut提取列参数:-c,-f,-d-c,以字符为单位进行分割,截取/etc/passwd文件从第二个字符到第九个字符cut -c 2-9 /etc/passwd-f,指定截取区域,以’:'为分隔符-d指定分割符,默认为制表符,不是空格,awk默认是空格.cut的缺点是,空格时候没法操作截取出/etc/passwd的第二列到最后一列 cut -d ‘:’ -f 2- /etc/passwduniq用于检查或者统计文本出现的重复行,常用参数 -c,它用于连续重复行次数的统计sort 的默认原创 2022-05-11 22:40:25 · 195 阅读 · 0 评论 -
三剑客-awk
awk文本与数据处理输出:printf格式化输出,自动换行,和\n一起用。print打印内容,会自动换行。参数:-F 指定分隔符 ,不指定是空格。awk -F ‘:’ ‘{print $1}’ /etc/passwdawk -F ‘:’ ‘{print $1,$2}’ /etc/passwd 打印的两列有空格或者 cat /etc/passwd | awk -F ‘:’ ‘{print $1,$3}’awk -F ‘:’ ‘{print $1"\t" $2}’ /etc/passwd原创 2022-05-11 14:43:58 · 308 阅读 · 0 评论 -
三剑客-grep
grep–查找显示文件中匹配的行,过滤字符串信息,对大小写敏感参数:-E,-i,-v,-w ,^,$,-n, -cgrep adm /etc/passwdgrep -c adm /etc/passwd-E表示或-i忽略大小写-v输出不匹配行,--w匹配指定字符串^匹配开头行首$匹配结尾行尾-表示对提取的内容显示所在行号...原创 2022-05-10 21:42:16 · 1033 阅读 · 0 评论 -
三剑客sed
sed编辑—流编辑器,主要对数据进行处理sed常用参数:n 把匹配到的行打印、输出到屏幕,和p一起使用p是以行为单位查询。打印第二行输出到屏幕:cat /etc/passwd | sed -n ‘2p’a表示新增,在下方新增,如第二行下方新增:sed ‘2a---------------’ 1.txt想把刚才打印的内容保存,用sed ‘2a---------------’ 1.txt > 1_update.txti表示新增,在上方新增,如第二行上方新增,不改变原文件:sed.原创 2022-05-10 14:19:06 · 106 阅读 · 0 评论 -
shell流程控制语句if else
目标能够使用if条件语句进行条件判断1.if语法多行写法语法if 条件then命令fi可以将if语句放入一行语法if 条件:then 命令:fiif ((1==1));then echo “成立”;else echo “buchengli”;fi;2.if else语法if 条件then命令else命令fi3.if else else语法if 条件1then命令1elif 条件2then命令2elif 条件3then命令3else命令nfi#!原创 2021-12-28 16:12:02 · 192 阅读 · 0 评论 -
shell中非互动式的输入重定向运算
输入重定向运算将计算表达式输出给bc去执行,类似于文件流中输入,可以输入多行表达式,更加清晰语法第一种方式var_name=bc [options] << EOF 第一行表达式1 第一行表达式2 第一行表达式3 第一行表达式4 ... EOF第二种方式var_name=$(bc [options] << EOF第一行表达式1第一行表达式2第一行表达式3第一行表达式4…EOF)var_name是shell变量的名字bc 执行bc的命令EOF输入流表达式原创 2021-12-28 10:21:50 · 90 阅读 · 0 评论 -
shell中非互动式的管道运算
在shell脚本中,我们可以借助管道使用bc计算器直接进行bc表达式计算输出echo “expersion” | bc [options]“expression” 表达式必须符合bc命令要求的公式"expression"表达式里面可以引用shell变量shell变量 a=2 在表达式里面引用的语法:"$a"...原创 2021-12-28 09:42:46 · 486 阅读 · 0 评论 -
shell计算命令-bc命令详解
bc中进行互动式的数学运算在shell中进行非互动式的bc管道运算在shell中非互动式的输入重定向bc运算bash shell内置了对整数运算的支持,但是并不支持浮点运算,而linux bc命令可以很方便的进行浮点运算,bc命令是linux简单的计算器,能进行进制转换与计算,能转换的进制包括十六进制、十进制、八进制、二进制,可以使用的运算符号包括±*/^%参数:指定包含计算任务的文件大量的计算写起来比较长,把计算的表达式放到一个文件中,对文件进行计算1.互动式的数学运算作原创 2021-12-27 16:43:34 · 5579 阅读 · 1 评论 -
shell计算命令:$[]命令
和(()),let命令类似,$[]也只能进行整数运算,但是只对单个表达式的计算求值与输出语法[表达式]1.[表达式]1.[表达式]1.[]会对表达式进行计算,并获得计算结果2.表达式内部不可以赋值给变量原创 2021-12-21 15:04:41 · 393 阅读 · 0 评论 -
shell计算命令:let命令详解
能够使用let命令进行整数的数学运算let命令和双小括号(())在数学计算方面功能一样,但是没有(())强大,let只能用于赋值计算,不能直接输出来,不可以条件判断语法let 赋值表达式注意:1.语法功能等价于(( 表达式))2.多个表达式之间使用空格,不是,号3.对于类似 let a+b 这样的写法, shell虽然计算了a+b的值,但却将结果丢弃,如果 echo let a+b 会直接输出字符串a+b,若不想这样,可以使用 let sum=a+b将a+b的结果保存在变量sum中#!/原创 2021-12-21 14:49:15 · 11187 阅读 · 0 评论 -
shell计算命令(( ))命令详解
介绍比较运算符不建议用,但是在整数计算推荐双小括号(()),用于进行数学运算表达式的执行,将数学运算表达式放在(( 和))之间可以使用获取(())表达式命令的结果,这和使用获取(( ))表达式命令的结果,这和使用获取(())表达式命令的结果,这和使用获得变量值是一样的语法((表达式))用法:...原创 2021-12-21 14:17:10 · 183 阅读 · 0 评论 -
expr字符串语法
计算表达式expr ( 10 + 10 ) * 2 + 100计算字符串的长度语法expr length 字符串例如:expr length “ceshi" 返回:5截取字符串语法:expr substr 字符串 start endstart截取字符串的起始位置,从1开始end截取字符串的结束位置,包含这个位置截取expr substr “ceshi” 1 2返回ce获取第一个字符在字符串中出现的位置语法expr index 被查找字符串 需要查找的字符expr原创 2021-12-21 10:58:58 · 429 阅读 · 0 评论 -
shell运算符-文件测试运算符
测试文件是否存在、是否可读、是否可执行、是否为空、是否可写、是否是目录、是否是普通文件块设备文件:比如计算机硬盘/dev/sda字符设备文件:比如计算机的usb文件/dev/usb设备文件都是对应计算机硬件的,不同的设备文件代表不同的传输数据方式...原创 2021-11-27 21:30:47 · 95 阅读 · 0 评论 -
shell运算符--逻辑运算符
注意:使用&&和 ||的运算符必须放在[ [ ] ]或(( ))才有效,否则报错!可以用在[ ] 和[[ ]],不可以在(( ))布尔运算符和逻辑运算符的区别:布尔运算符:! -o -a,必须由 [ ]或test命令执行逻辑运算符:! && ||!可以用在[ ] 和[[ ]],不可(( ))&& ||必须用在[[ ]] 和(( ))...原创 2021-11-20 23:28:10 · 685 阅读 · 0 评论 -
shell运算符-布尔运算符
注意布尔运算符放在[ ]或与test命令配合使用才有效。原创 2021-11-19 23:13:57 · 212 阅读 · 0 评论 -
shell运算符--[[ ]] [ ]的区别
区别1:会有分隔符出现[ ]会有分隔符出现会将含有空格字符串进行分割后比较,而[[ ]]不会出现分隔符。区别2:转义字符[ ]需要对<,>进行转义格式为[ 字符串1 < 字符串2 ],而[[ ]]不会出现分隔符。小结:整数比较运算符[ ] 和 [[ ]]方式一: [ 整数1 options 整数2 ]options:-eq,-ne,-gt,-ge,-lt,-le方式二:((整数1 options 整数2))options:<,<=,>,>=原创 2021-11-19 22:54:09 · 335 阅读 · 0 评论 -
shell运算符-字符串比较运算符
1.可以比较两个变量,变量的类型可以为数字(整数、小数)与字符串2.列出了常用的字符串运算符,假定变量a为“abc”,变量b为“efg”字符串比较可以使用[[ ]] 和[ ]两种方式注: [ ]大于、小于需要加转义[[ ]]不需要 小于等于写成 [[ “abc” < “abc” && “abc” = “abc” ]]大于等于写成 [[ “abc” < “abc” && “abc” = “abc” ]]...原创 2021-11-18 19:46:10 · 242 阅读 · 0 评论 -
shell运算符--比较运算符
列出了常用的比较运算符,假定变量a为1,变量b为2;原创 2021-11-18 17:40:05 · 232 阅读 · 0 评论