【发布时间】:2021-03-14 04:53:02
【问题描述】:
我有一个将消息输出到标准输出的脚本。 现在我需要从头开始获取第 13 行,并从该输出中获取倒数第二行。
我想知道这是否可以通过单个命令完成,而不是将输出重定向到文件,然后通过它读取几次以提取我的输出。
line 1
line 2
...
line 12
line 13
line 14
...
...
line N-1
line N
我需要获取如下输出:
line 13
line N-1
我有单独的命令来获取我的台词。
获取第 13 行:
scriptoutput | head -n 13
获取 N-1 行:
scriptoutput | tail -n 2 | head -n 1
OR
scriptoutput | sed 'x;$!d'
但是作为标准输出,我无法在一个命令中完成输出。
【问题讨论】:
-
请在您的问题上尽您的努力,这在 SO 上受到强烈鼓励。
-
你试过什么?包括您的代码。你遇到了什么问题?
-
添加了尝试过的命令。
-
使用
scriptoutput | sed 'x;$!d'调用,sed 将处理脚本scriptoutput的输出(因此更好的命名是script而不是scriptoutput)。不确定是什么问题。另请参阅 awk-way 以读取倒数第二行:unix.stackexchange.com/questions/445340/…。