一、使用循环来迭代命令:
任务重复表现为一次对多个目标执行某个操作,例如对系统上的每个数据库进行备份,for循环是Bash提供的多个shell循环结构之一,可用于任务迭代。
1、Bash的for循环结构语法:
for VARIABLE in LIST; do
COMMAND VARIABLE
done
循环按顺序注意处理LIST所提供的字符串,并且在处理列表中的最后一个字符串之后退出,可以通过多种方式来为for循环提供字符串列表,可以是用户直接输入的字符串的列表,或者是通过不同类型的shell扩展生成,如变量扩展、花括号扩展、文件名扩展或命令替换。
例如:
2、在脚本中退出代码:
在处理完自己的所有内容后,脚本会退出到调用它的进程,可使用exit命令来实现。
可以使用可选的整数参数(0到255之间,表示退出代码)来执行exit命令,退出代码是进程完成后返回的代码,退出代码值为0表示没有错误,所有其他非零值都表示存在错误的退出代码,此退出代码传回到父进程后存储在?变量中,可通过$?进行访问。
#!/bin/bash
echo "hello,world"
exit 0
3、测试脚本输入:
为保证脚本不会由于意外情况中断,可以使用Bash的test命令来执行完整性检查。
test #在完成后生成一个退出代码,该退出代码存储为值$?,可使用test查看测试结论,显示$?的值
#退出状态为0表示测试成功,非零值表示测试失败
执行测试时会用到多种运算符。
(1)数字运算符:
用于确定某个数值大于(-gt)、大于等于(-ge)、小于(-lt)、不等于(-ne)、还是等于(-eq)另一个数值。
(2)字符串比较运算符:
逻辑等于(==)、不等于(!=)
(3)字符串一元运算符:
-z(返回为空)、-n(返回不为空)