【发布时间】:2017-06-30 13:50:33
【问题描述】:
我想将File2中的文本粘贴到File1中
文件1:
1
2
4
5
7
8
文件2:
3
6
输出:
1
2
3
4
5
6
7
8
作为这个问题Insert text into blank lines in bash的示例尝试:
sed -e '/^$/{R file2' -e 'd}' file1
但它仅适用于每隔一行空白的情况。我想问一下,在更复杂的情况下可能吗?换句话说,有没有通用的解决方案?
例如:
文件1
1
2
3
5
6
9
文件2
4
7
8
输出
1
2
3
4
5
6
7
8
9
【问题讨论】:
-
使用 GNU sed 你的 sed 脚本在第二个例子中对我来说很好,在注意
File1和File2以单个换行符结尾之后。例如:注意在8和9之后点击 Return 一次。 -
“通用解决方案”是指 1) 获取两个文件,2) 合并,3) 排序 4) 消除空白?你可以做
cat f1 f2 | sort | grep .