我正在尝试通过perl脚本执行shell命令,如下所示
$cmd = 'cat <(ssh -o \"StrictHostKeyChecking no\" dev-adm1 \'sudo cat /etc/httpd/conf/httpd.conf\')';
exec $cmd;
这是一个错误
sh: -c: line 0: syntax error near unexpected token `('
sh: -c: line 0: `cat <(ssh -o \"StrictHostKeyChecking no\" dev-adm1 'sudo cat /etc/httpd/conf/httpd.conf')'
该命令直接在shell上运行,但不是这样的。我错过了什么?
答案 0 :(得分:3)
您使用哪个shell来测试此命令?
我的第一个猜测是你使用了bash或ksh,而sh(由perl exec使用)不知道'('syntax