#!/bin/bash


num=$(ps aux | grep $1 | grep -v grep  | wc -l)

echo $num

该脚本执行的num的取值为2

wKiom1g9C3PQkR1bAAAbIAKGVMg608.png-wh_50

在终端的执行结果应该为0

wKioL1g9C-rgYigxAAALeDfb3Hg352.png-wh_50

系统为ubuntu14.04

wKiom1g9DG7B75trAAAkEa-GtKU612.png-wh_50


不知道什么问题,先记录一下。



知道问题所在了!!其实并没有问题,放在脚本里执行会grep脚本执行的进程,把wc -l去掉在执行就可以看到。修改为num=$(ps aux | grep $1 | grep -v grep  | grep -v 脚本名 | wc -l) 就可以了。