1.for循环的格式如下
for loop_variable in argument_list
do
commands
done
argument_list是loop_variable的取值空间,我们可以用
{a.sh,b.sh,c.sh}
这样的形式来指定loop_variable的取值,特别注意,argument_list最好用大括号括起来,方便阅读
也可以利用命令替换的两种方式来指定取值空间
命令替换方式1 `ls /home/user1`
命令替换方式2 $(ls /home/user1)
需要注意的是,方式一命令的两边不是单引号,而是数字键1左边的那个键打出来的!!!
2.shell中几个特殊的字符
~+ 当前工作目录
~- 前一个工作目录
=~ 正则表达式符合
^ 匹配行首
$ 匹配行尾
3. 空给变量赋值时,等号左右都不能有格
4.双引号引用一个变量,然后用echo输出该引用,保留变量字符串中间的空格
hello="a b c d"
echo $hello
echo "$hello"
可以发现echo的输出不一样
5.批量修改文件后缀的脚本
for file in `ls $1`;do mv $file ${file%.$2}.$3;done