Shellscript 新手 - 脚本中的通配符和参数问题
Shellscript Newbie - Issue with Wildcards & Arguments in a Script
正如标题所暗示的,我刚刚开始使用 shellscript,所以不太了解它!
我的问题是 - 为什么以下通配符在 bash
中有效
mv *.txt /root/Dustbin
但是我的 shellscript 文件只移动一个 .txt 文件而不是全部?我安装脚本并按如下方式调用它
del *.txt
这是脚本:
#!/bin/sh
#sh scriptname del
mv -u /root/Dustbin
#END OF SCRIPT
希望我的问题有意义
提前感谢您的帮助
</code> 是脚本的第一个参数。所以即使有多个文件匹配<code>*.txt
,也只会移动第一个。
如果要移动所有这些,请改用 "$@"
:
#!/bin/sh
mv -u "$@" /root/Dustbin
正如标题所暗示的,我刚刚开始使用 shellscript,所以不太了解它!
我的问题是 - 为什么以下通配符在 bash
中有效 mv *.txt /root/Dustbin
但是我的 shellscript 文件只移动一个 .txt 文件而不是全部?我安装脚本并按如下方式调用它
del *.txt
这是脚本:
#!/bin/sh
#sh scriptname del
mv -u /root/Dustbin
#END OF SCRIPT
希望我的问题有意义
提前感谢您的帮助
</code> 是脚本的第一个参数。所以即使有多个文件匹配<code>*.txt
,也只会移动第一个。
如果要移动所有这些,请改用 "$@"
:
#!/bin/sh
mv -u "$@" /root/Dustbin