2017-04-16 49 views
-1

目錄中有3個文件。如何使用UNIX命令打印第一個文件第一行,第二個文件第三行和第三個文件第四行?在Unix中打印3個文件所需的行

我試過cat filename.txt | sed -n 1p但它只適用於一個文件。我怎樣才能一次查看所有三個文件?

+0

看看'find'和'xargs'。 –

+0

你不需要使用'cat'(參見[UUOC award](http://porkmail.org/era/unix/award.html))。'sed -n'1p'filename.txt'會做很好......我認爲你是在[命令分組]之後(http://www.gnu.org/software/bash/manual/bashref.html#Command-Grouping),但如果你只需要在終端輸出,只需發出所有三個命令用';'分隔 – Sundeep

回答

1

使用awk。在每個文件f年初增加跟隨我們正在處理的文件,然後我們剛剛隊了每個文件所需的記錄號(FNR):

$ awk 'FNR==1 {f++} f==1&&FNR==1 || f==2&&FNR==3 || f==3&&FNR==4' 1 2 3 
11 
23 
34 

的第一個文件的記錄中,其他類似:

$ cat 1 
11 
12 
13 
14 
相關問題