如何将shell通配符传递给反引号命令
我试图在shell脚本中使用find来计算我匹配通配符模式的文件数,然后获取文件的名称(如果只有一个)。但我无法将通配符模式传递给反引号扩展。
FINDCMD="find . -iname *DATA*.txt"
DATACOUNT=$($FINDCMD | wc -l)
if [ $DATACOUNT -eq 1 ]
then
use-data $($FINDCMD)
else
echo bugger
fi
这不起作用:shell在调用find时扩展DATA.txt。我希望通过星号来寻找。
如果我做到了
FINDCMD="find . -iname '*DATA*.txt'"
然后shell不会扩展星号,但是find会获得单引号并且不会匹配任何内容。
没有找到相关结果
已邀请:
3 个回复
苦诫
编辑: 如果您想重复使用该命令,请使用子程序
羔磺
OR
使用以下bash选项:
如下
在脚本的开头 这应该够了吧。虽然没有在你的脚本上测试过,但你应该从这一点开始。
净爽