将多个文件合并为一个没有标题的文件

时间:2019-02-26 10:24:43

标签: shell unix scripting

我是Unix脚本的新手,并且需要有关Unix cmd的一些信息- 我们能否cat在一个文件中abc_20190226_Part*.txt的所有文件,例如.loginarea .loginerror { display:none; color: Red; font-size: 1.8em; ,而在unix命令中没有它们的头。

1 个答案:

答案 0 :(得分:0)

首先是一些测试文件:

$ cat foo
11
12
13
$ cat bar
21
22
23

一种方法是使用tailman tail

-n, --lines=[+]NUM
       output the last NUM lines, instead of the last 10; or use -n +NUM 
       to output starting  with  line  NUM

如此:

$ tail -n +2 foo
12
13

但是:

$ tail -n +2 foo bar
==> foo <==
12
13

==> bar <==
22
23

哦,不,我们需要绕一圈:

$ for f in foo bar ; do tail -n +2 "$f" ; done
12
13
22
23

另一种方法是使用awk:

GNU awk documentation说:

FNR 
       FNR is the current record number in the current file. FNR is incremented 
       each time a new record is read (see section Explicit Input with getline). 
       It is reinitialized to zero each time a new input file is started.

如此:

$ awk 'FNR>1' foo bar
12
13
22
23

最后,您需要将输出重定向到新文件(one_file),例如:

$ awk 'FNR>1' foo bar > one_file
$ cat one_file
12
13
22
23