Bash自动增量运行

时间:2013-09-30 07:50:55

标签: bash grep sh ps

请使用递增值解释此问题,我们有下一个名为test.sh的文件

#!/bin/bash

ps aux | grep test.sh -c
echo $(ps aux | grep test.sh -c)

然后运行它

$ ./test.sh
2
3

我知道grep slice后有两行(test.sh为1,grep为2),为什么3进来?感谢

1 个答案:

答案 0 :(得分:1)

在第二种情况下,您得到3,因为第二个命令$(...)(即命令替换)在子shell 中执行。

来自manual

  

命令替换,用括号分组的命令和   异步命令在子shell环境中调用   shell环境的重复,......