如何将一个文件的尾巴与另一个文件的头合并?

时间:2019-02-05 21:58:39

标签: linux shell

我知道如何从.txt数据中提取前两行并将其附加到.txt数据的末尾。但是我应该如何将.txt数据的最后两行添加到.txt数据的第一行

我已经尝试过:

tail -n 2 test1.txt >> head test1.txt # takes last 2 lines of text and adding 
                                      it to the head 

看起来很不对劲,但我找不到答案,用尾巴和头做。

tail n 2 test1.txt >> head test1.txt
cat test1.txt

有人请更正我的代码,以便获得预期的结果。

2 个答案:

答案 0 :(得分:1)

只需一个接一个地运行这两个命令-这样做所产生的标准输出将与您将它们的输出连接在一起而得到的输出完全相同,而无需执行显式/附加的连接步骤:

tail -n 2 test1.txt
head -n 1 test1.txt

如果要将它们的输出重定向在一起,请将它们放在大括号组中:

{
  tail -n 2 test1.txt
  head -n 1 test1.txt
} >out.txt

答案 1 :(得分:1)

那又怎么样:

$ cat file1.txt 
file 1 line 1
file 1 line 2
file 1 line 3
file 1 line 4
$ cat file2.txt 
file 2 line 1
file 2 line 2
file 2 line 3
file 2 line 4
$ tail -n 2 file1.txt > output.txt
$ head -n 1 file2.txt >> output.txt 
$ cat output.txt 
file 1 line 3
file 1 line 4
file 2 line 1