【发布时间】:2017-06-23 19:24:45
【问题描述】:
所以用例非常简单,如果我像这样在终端中运行命令
myCommand -input file_prefix* -output outputFolder
它将抓取目录中所有具有该前缀的文件,运行命令并将其吐到输出文件夹中。自己很容易。但是,如果我将确切的命令复制粘贴到 Shell 脚本中以在 PHP 或类似文件中运行,它会显示 file_prefix* 找不到文件。这是因为它将星号读取为文字字符而不是通配符。我试过用单引号、双引号等将星号括起来。知道如何做到这一点吗?我见过一些人回应 asterix 的例子,但没有人像我作为文件前缀的一部分那样使用它。谢谢你的帮助!
【问题讨论】:
-
在 php 内部你不会只使用glob吗?
-
shell 正在扩展
file_prefix*之前myCommand被调用。还有一个bash选项failglob,它决定了shell 是否应该将不匹配的模式视为错误或仅将其视为文字字符串(就像引用一样)。 -
您的回答无法解决发布的问题。您可以使用您正在运行的实际代码更新问题吗?如果您想隐藏它的详细信息,请在运行之前执行此操作,以便它更具重现性