整数测试:
-eq:判断两个整数是否相等
-ne:判断两个数是否不等,不等为真、否则为假
-gt:判断一个数是否大于另一个整数,大于为真,否则为假
-lt:判断一个整数是否小于另一个整数,小于为真,否则为假
-ge:大于或等于
-le:小于或等于
在if语句中出现exit就强制退出脚本,只后的语句不论是什么都不在执行;只有在l两个数值进行比较是才会使用中括号,其他判断不用中括号。
文件测试:
-e file: 文件是否存在
-f file: 测试文件是否为普通文件
-d file: 测试路径是否为目录
-r file: 测试文件对当前用户而言是否可读;
-w file: 测试文件对当前用户而言是否可写
-x file :测试文件对当前用户而言是否可执行
bash命令:
bash -n 脚本:测试脚本是否有语法错误
bash -x 脚本:单步执行脚本,每一步的过程都显示出来
seq命令:
sed是一种流编辑器,它是文本处理中非常中的工具,能够完美的配合正则表达式使用,功能不同凡响。处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。接着处理下一行,这样不断重复,直到文件末尾。文件内容并没有 改变,除非你使用重定向存储输出。Sed主要用来自动编辑一个或多个文件;简化对文件的反复操作;编写转换程序等。
用法:sed 参数 'addresscommand' file
参数:
-n:静默模式,不再显示模式空间中的内容,sed默认除了打印一遍处理结果,还会显示一遍模式空间
-i:直接修改原文件
-e:可同时执行多个脚本,一次-e代表一次AddressCommand操作
-f:制定一个文件,来作为AddressCommand执行脚本
-r:使用扩展正则表达式
命令:
d:删除符合条件的行,例如删去匹配到的1和2行,显示剩下的
p:显示符合条件的行
a :在指定的行后面追加新行,内容为“string”
i :在指定的行前面追加新行,内容为“string”
r :将指定的文件的内容添加至符合条件的行处
w :将指定的文件的内容另存至指定的文件中