如何将命令作为参数传递给 bash 脚本?在下面的脚本中,我试图这样做,但它不起作用!
#! /bin/sh
if [ $# -ne 2 ]
then
echo "Usage: $0 <dir> <command to execute>"
exit 1;
fi;
while read line
do
$($2) $line
done < $(ls $1);
echo "All Done"
Run Code Online (Sandbox Code Playgroud)
此脚本的示例用法是
./myscript thisDir echo
Run Code Online (Sandbox Code Playgroud)
执行上面的调用应该回显thisDir目录中所有文件的名称。
你可以尝试:(在你的代码中)
echo "$2 $line"|sh
Run Code Online (Sandbox Code Playgroud)
或者eval:
eval "$2 $line"
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
14835 次 |
| 最近记录: |