![](/img/trans.png)
[英]Read lines from a file enclosed matching pattern of starting line and ending line and append it to another text file in bash
[英]Bash read N lines from file starting from line Z
我有文本文件:
34
3467uy
56ytyyu
And so on
我想從線Z開始這個文件的N行我知道如何閱讀第一N行與(頭-N N)或最后用尾巴閱讀。 我現在知道如何從Z行讀取到文件尾的尾部。 但我找不到如何讀取特定量的特定行開始。 救命!
這可以使用sed
完成。 例如,要在文件中發出第10至20行:
sed -n '10,+10p' a_file
管tail
的輸出head
:
tail -n +
| head -n
例如:
$ seq 100 | tail -n +15 | head -n 5
15
16
17
18
19
使用awk
:下面的示例將從第3行打印到第5行(3 + 2行)。設置start_line
和buffer
變量以從start_line
開始打印該行並buffer
更多行。
awk -vstart_line=3 -vbuffer=2 'NR>=start_line && NR<=start_line+buffer' file
使用GNU sed:
seq 1 10 | sed '2,+3!d'
輸出:
2 3 4 5
來自man sed
:
addr1,+N
:將匹配addr1和addr1之后的N行。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.