我遇到了我最初设计的脚本的问题。
我正在尝试获取命令显示的行数,如果数字大于某个值,则应该发生一些事情。
我的问题是,最初这种方法很好,现在却没有。
在我的脚本中,我使用以下命令
NO_LINES=$(ps -ef | grep "sh monitor.sh" | wc -l)
echo $NO_LINES
echo $NO_LINES
打印0
,即使它应该打印1
,这是grep命令的行。
如果我单独执行命令(不将结果分配给环境变量),就像这样
ps -ef | grep "sh monitor.sh" | wc -l
这将打印出1
,这是正确的结果。
为什么通过将结果赋给变量,该值比原始结果低1?
该机器的bash版本是4.3.46(1)-release。
由于