簡體   English   中英

與Unix中的head和tail命令相關

[英]Related to head and tail command in Unix

我知道head -ntail -n將提供什么輸出。

是否有任何命令,例如head +nhead +2 filename )或tail +ntail +2 filename )?

如果是,那么任何人都可以對此有所了解嗎?

tail支持正負偏移,而head不支持。

從文件末尾的第10行開始輸出:

tail -10 filename

從文件開頭的第10行開始:

tail +10 filename

單一Unix規范版本2(1997) tail聲明如下

在非過時形式中,如果未指定-c-n ,則假定為-n 10

在過時的版本中,以“-”或“ +”開頭的參數可以用作單個選項。 以字母c指定為后綴的參數± number等效於-c ± number ; 帶后綴b的± 等於-c ± * 512; 指定為一個后綴字母l± ,或者與無B,C也不升的作為后綴,相當於-n± 如果未在這些表格中指定數字 ,則將使用10。 指定為后綴的字母f等同於指定-f選項。 如果使用[ number ] c [f]格式,並且未指定number或f后綴,則將其解釋為-c 10選項。

換句話說,每個組中的以下命令是等效的:

tail -2 file
tail -n 2 file

tail +2 file
tail -n +2

tail -2c file
tail -c 2 file

tail +3lf file
tail -f -n +3 file

注意,除非使用“ +”,否則給出的數字表示“輸出最后N行”。 如果使用“ +”,則表示“輸出從行N開始的行”。 例如,在一個40行的文件中, tail +2 (或等效的tail -n +2 )將輸出2..40行,而使用-2或僅使用2將輸出39..40行。

2001年的Unix單一規范的下一個版本完全刪除了過時的格式 ,因此沒有以“ +”開頭的“選項”。

我認為管道是您要找的東西: https : //en.wikipedia.org/wiki/Pipeline_(Unix)

要使用您給出的第一個示例:

head +2 filename | head +n

我相信是您想要的,不過請注意,我尚未測試

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM