是否可以在bash脚本中抓取特定的顶部行?
以下命令在命令shell中有效,但在bash脚本中不起作用,我也尝试了grep
echo " " `top | awk 'NR==7'`
echo " " `top | awk 'NR==8'`
(我也尝试过这种方法,但它产生了相同的空白文本(
使用GNU top,我认为最简单的方法是
top -n 1 -b | sed -n '7,17 p'
CCD_ 1仅从CCD_ 2的输出中选择第7至第17行。
我怀疑您观察到的差异是由于top
的交互性质造成的。考虑将命令行参数传递到top以禁用它的交互方面。例如,在MAC上,这里有一个命令,用于对前5个进程进行单个采样(并返回(:
top -l 1 -n 5
如果你想使用awk来选择特定的线路,比如说7到17,试试这个:
top -l 1 | awk 'NR >= 7 && NR <= 17'