shift 在shell while 循环中的使用 偏移

向脚本传递参数时,有时需要将每一个参数偏移以处理选项,这就是shift命令的功能

shift在何时使用:
$pg test.sh
#!/bin/sh

while [ $# -ne 0 ]
do
echo $1
done

$sh test.sh arg1 arg2 arg3

不使用shift,就没有办法偏移到脚本中下一个参数,将只会反馈出第一个参数。


$pg test2.sh
#!/bin/sh
while [ $# -ne 0 ]
do
echo $1
shift
done

如何把一个文件的每一行当作参数传给test2.sh??

 

 

使用$ ?检验返回状态,可知脚本有错误,但同时发现c p:c a n n o t . . .,因此检验最后退出状
态已没有必要。在脚本中可以用系统命令处理输出格式,要求命令输出不显示在屏幕上。为
此可以将输出重定向到/ d e v / n u l l,即系统b i n中。

你可能感兴趣的:(linux)