For命令
创建一个遍历一系列值得循环,每次迭代都使用其中一个值来执行已定义好的一组命令。格式
for var in list
do
commands
done
在list参数中,提供迭代中要用到的一系列值。
读取复杂的值两种办法解决
- 使用转义字符(反斜线)来将单引号转义
- 使用双引号来定义用到单引号的值
默认情况下shell认为是字段分隔符的有
- 空格
- 制表符
- 换行符
这是由特殊环境变量IFS(内部字段分隔符)定义,在脚本中可临时更改,达到忽略空格和制表符的效果
IFS=$'\n'
代码量较大时,可能会在某个地方需要临时修改IFS的值,其他地方采用IFS的默认值,采用如下实现
IFS.OLD=$IFS
IFS=$'\n'
使用新的IFS值
IFS=$IFS.OLD
IFS支持同时多个赋值
交流群: