繁体   English   中英

在PHP中使用AWK不会产生输出

[英]AWK is not producing an output when used in PHP

<?php 
$dd="/root/report/lastDate-28-11-2013.csv";
$c_row=exec("awk 'BEGIN { FS = \",\" } ; { print $1 }'" .$dd);
//echo $c_row;
print_r($c_row); 
?>

当我运行此代码时,它只是挂起并且不打印任何输出。

看看手册 ,您缺少了output和/或return_var参数。

要获取已执行命令的输出,请确保设置并使用输出参数。

句法:

string exec ( string $command [, array &$output [, int &$return_var ]] )

产量

如果存在output参数,则命令的输出的每一行都将填充指定的数组。 尾随空格(例如\\ n)不包含在此数组中。 请注意,如果数组已经包含一些元素,则exec()将追加到数组的末尾。 如果您不希望函数追加元素,请在将数组传递给exec()之前在数组上调用unset()。

return_var

如果return_var自变量与输出自变量一起存在,则已执行命令的返回状态将被写入此变量。

就您而言,它可能看起来像...

$csv = "/your/file.csv"; 
$comm = "awk 'BEGIN { FS = \",\" } ; { print $1 }'" .$dd;
exec($comm, $output);
var_dump($output);

(到目前为止,我尚未检查您的awk命令,我怀疑它返回了所需的结果)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM