shell 将2个文件按行合并
时间: 2023-09-06 12:09:42 浏览: 34
Shell脚本中使用for循环和cat命令实现按顺序合并文件
在 Linux shell 中,可以使用 `paste` 命令将两个文件按行合并。`paste` 命令默认会将两个文件的每一行按照制表符分隔开来,然后将它们合并成一行。如果我们需要将两个文件的每一行按照行来合并,可以使用 `-d` 参数指定分隔符为空格或其他字符。
以下是一个示例,假设我们有两个文件 `file1.txt` 和 `file2.txt`,分别包含以下内容:
file1.txt:
```
apple
banana
orange
```
file2.txt:
```
red
yellow
orange
```
可以使用以下命令将这两个文件按行合并:
```
paste -d '\n' file1.txt file2.txt > merged.txt
```
这个命令会将 `file1.txt` 和 `file2.txt` 中的内容按行合并,并将结果输出到 `merged.txt` 文件中。`-d '\n'` 参数指定了分隔符为换行符,这样 `paste` 命令会将两个文件的每一行按照行来合并。执行上述命令后,`merged.txt` 文件中的内容如下所示:
```
apple
red
banana
yellow
orange
orange
```
注意,`paste` 命令只会按照文件的行数进行合并,如果有文件的行数比其他文件少,那么它的缺失行会被空行代替。
阅读全文