echo wc结果在shell脚本中不正确

时间:2016-12-09 02:29:11

标签: shell wc

这是我的shell脚本

headers: {'Content-Type': undefined }

然后,我在命令行执行shell脚本。

#!/bin/sh
echo "===="
echo $1
echo "===="
ps -ef | grep -w $1 | grep -v -e "grep" 
echo "===="
echo  $(ps -ef | grep -w $1 | grep -v -e "grep" | wc -l)
echo "===="
exit 0

结果是:

./test.sh php-fpm

所以,我的问题是:为什么最后的输出是7而不是6?

感谢。

1 个答案:

答案 0 :(得分:1)

您可以使用命令

ps -C $1 --no-headers

更新的代码

#!/bin/sh
echo "===="
echo $1
echo "===="
ps -C $1 --no-headers
#ps -lfC $1 --no-headers
echo "===="
COUNT=$(ps -C $1 --no-headers | wc -l)
echo $COUNT
echo "===="
exit 0

运行

sh /tmp/test.sh java

O / P

====
java
====
4969 ?        00:01:00 java
6884 ?        00:00:34 java
10200 ?        00:00:18 java
====
3
====