如何在php中执行unix命令

时间:2014-07-24 05:27:09

标签: php unix

我试图像这样在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 ';'.

无法找到请帮助。

2 个答案:

答案 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);

将其更改为上述格式应该有效。