Shell中,命令行参数的遍历

一直以来对命令行输入的参数遍历处理的时候,我都是采用下面的代码。


for p in $#
do
echo "$p"
done


但是最近写了一个工具,用来批量处理视频文件,由于文件名中含有一些空格,中括号之类的特殊字符,使用上面的代码处理就经常会取不出来一个完整的文件名。google了一下,可以使用shift命令,如下面的代码。

while [ $# -gt 0 ]
do
echo "$1"
shift
done


参考44.17 Handling Arguments with while and shift
--END--
END

0 Responses to "Shell中,命令行参数的遍历"