linux - 如何将两个文件(列)粘贴到第三个文件递增行+1?

标签 linux bash awk paste

我想使用命令 linux paste 粘贴两个文件(也欢迎任何其他选项)但增加第二个文件的行数。最好举个例子:

文件1

a
b
c
d
e
f

文件2

1
2
3
4
5
6
7
8
9
10
11
12

我想将 file3 创建为:

a 1
b 3
c 5  
d 7
e 9
f 11

最佳答案

使用 awk 只打印文件二中的奇数行:

$ awk 'NR%2' file2 | paste -d' ' file1 -
a 1
b 3
c 5
d 7
e 9
f 11

# Using process substitution 
$ paste -d' ' file1 <(awk 'NR%2' file2)
a 1
b 3
c 5
d 7
e 9
f 11

关于linux - 如何将两个文件(列)粘贴到第三个文件递增行+1?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15427809/

相关文章:

linux - iscsiadm : Login I/O error, 接收 PDU 失败

bash - 我可以使用子命令运行 watch 吗?

AWK 字段分隔符消失

linux - 是否可以绕过已编译可执行文件所需的共享库依赖项?

c# - 在 C# 中使用自定义 Linux 驱动程序

linux - 使用模式拆分文件并使用包含此模式的字符串命名每个结果文件 (perl)

bash - 在 Windows 远程计算机上设置 Git 服务器

linux - 使用 Bash 在字符串中搜索子字符串?

python - grep、awk、bash 和 friend ?有什么工具可以处理这些数据吗?

正则表达式:返回括号内的字符