我有这个小bash脚本:
#!/bin/bash
PATH1="/home/user100/files"
CMD1=$(find . -type f -iname "*.sh" -exec rm -fr {} +;)
cd $PATH1
$CMD1
如果我一个一个地运行命令,那么所有命令都将成功执行;如果运行脚本,则根本不执行任何操作。
任何帮助或想法,将不胜感激。
如果要将命令作为字符串存储在变量中,则不应使用$()
CMD1="find . -type f -iname '*.sh' -exec rm -fr {} +;"
然后,您稍后可以使用eval
命令来调用变量。因此,您的脚本应类似于:
#!/bin/bash
PATH1="/home/user100/files"
CMD1="find . -type f -iname '*.sh' -exec rm -fr {} +;"
cd $PATH1
eval $CMD1;
然后,别忘了授予脚本执行权限
chmod +x script.sh
然后运行脚本
./script.sh
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句