当文件名的一部分时,Shell脚本不执行星号

时间:2017-06-23 19:24:45

标签: linux bash shell sh

所以用例非常简单,如果我在终端中运行这样的命令

myCommand -input file_prefix* -output outputFolder

它将获取我在目录中具有该前缀的所有文件,运行该命令并将其吐入输出文件夹。相当容易。但是,如果我将精确命令粘贴到Shell脚本中以便在PHP或类似时运行,则表示file_prefix *未找到文件。这是因为它将星号作为文字字符而不是通配符读取。我试过用单引号,双引号等包装星号。有关如何做到这一点的任何想法?我已经看到了一些人们回应星号的例子,但没有人像我作为文件前缀的一部分那样使用它。谢谢你的帮助!

1 个答案:

答案 0 :(得分:0)

看起来对此的正确答案实际上是将我的file_prefix放入引号并单独留下星号。最终工作副本

myCommand -input 'file_prefix'* -output outputFolder

我的file_prefix是一个输入参数,所以实际的最终代码是

myCommand -input '$1'* -output $2