系统相关
首页 > 系统相关> > 为什么结果等于0,有时等于1-shell_exec(‘pgrep -f

为什么结果等于0,有时等于1-shell_exec(‘pgrep -f

作者:互联网

剧本:

$S = 'pgrep -f test.php | wc -l';
$U = trim(shell_exec($S));
echo $U;

为什么此脚本的结果等于0,有时等于1?

文件test.php没有运行.

解决方法:

问题是在执行命令pgrep -f test.php时. wc -l,有时会在结果中显示自己(取决于时间).您可以使用以下语法根据a question on Linux & Unix SE防止出现这种情况:

pgrep -f '[t]est.php' | wc -l

带有方括号的部分基本上说“找到字母t后跟est.php”,如果文件正在运行,它将找到文件,但与当前执行的命令不匹配,因为t后面是括号[.

标签:shell-exec,bash,grep,php
来源: https://codeday.me/bug/20191108/2009709.html