我可以使用以下bash脚本一次启动多个终端:
for i in 0 1 2 3; do urxvt -name Terminal$i&; done
但是,如果我尝试从PHP脚本运行该bash脚本,如果失败并出现错误:
sh: -c: line 0: syntax error near unexpected token `;'
sh: -c: line 0: `for i in 0 1 2 3; do urxvt -name Terminal$i&; done'
PHP脚本:
<?php
system('for i in 0 1 2 3; do urxvt -name Terminal$i&; done');
?>
这也失败了:
<?php
exec('for i in 0 1 2 3; do urxvt -name Terminal$i&; done');
?>
没有'&amp;'没有错误发生,但我想在后台开始。逃离'&amp;'导致urxvt的参数错误无效。
任何想法??
答案 0 :(得分:4)
删除;
,&
是命令的终止。
在shell中输入man bash
,然后查看“SHELL GRAMMAR”部分下的“列表”。