我试图像这样在php脚本中执行unix命令。
<?php
echo shell_exec('head -n 1 log_list_23072014|awk -F ',' '{print $2}'');
?>
这是文件,试图获取第一行的第一列。
NODE,CGR,TERMID,VMGW,ET
但是我收到错误消息
Parse error: syntax error, unexpected 'shell_exec' (T_STRING), expecting ',' or ';'.
无法找到请帮助。
答案 0 :(得分:1)
您使用的字符串无效,您必须在字符串中转义单引号:
<?php echo shell_exec('head -n 1 log_list_23072014|awk -F \',\' \'{print $2}\'');
您也可以使用exec()
答案 1 :(得分:1)
你的命令中有一个额外的'
。在变量中使用命令可以帮助识别错误,并且在使用标准exec
时需要它。
$cmd = 'head -n 1 log_list_23072014 | awk -F , \'{print $2}\'';
echo shell_exec($cmd);
将其更改为上述格式应该有效。