Shellscript Newbie - Wildcards& amp;脚本中的参数

时间:2016-11-20 22:48:53

标签: bash shell wildcard

正如标题所示,我刚刚开始使用shellcript,所以我真的不太了解它!

我的问题是 - 为什么以下通配符在bash中起作用

    mv *.txt /root/Dustbin

但我的shellscript文件只移动一个.txt文件而不是全部?我安装脚本并按如下方式调用

del *.txt

这是剧本:

#!/bin/sh
#sh scriptname del

mv -u $1 /root/Dustbin

#END OF SCRIPT

希望我的问题有道理

提前感谢您提供任何帮助

1 个答案:

答案 0 :(得分:0)

$1是脚本的第一个参数。因此,即使有多个文件匹配*.txt,也只会移动第一个文件。 如果您想移动所有这些内容,请改为使用"$@"

#!/bin/sh

mv -u "$@" /root/Dustbin