linux - 在 shell 中追加两个文件的输出?

标签 linux bash shell awk paste

我有两个这样的文件

文件1

a
b
c

文件2

0
1
2

我要输出

a,0
b,1
c,2

像这样附加两个文件

row(n) of file1 +","+ row(n) file2
for every n, total n is same in both files

我想知道 shell 中是否有任何实用程序可以帮助我执行此操作,我不想为此或任何循环使用 java 文件读取文件写入。可以使用 awk 完成吗?

最佳答案

你想要粘贴:

$ paste -d',' file1 file2
a,0
b,1
c,2

awk 中可以通过多种方式完成,这里是一个:

$ awk 'FNR==NR{a[FNR]=$0;next}{print a[FNR]","$0}' file1 file2
a,0
b,1
c,2

关于linux - 在 shell 中追加两个文件的输出?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15454744/

相关文章:

java - 从 JSch 中的命令输出中删除 shell 内容(如提示)

linux shell脚本printf数字格式颜色

linux - 将 PDF 与 PDFTK 与书签合并?

linux - 获取一个文件中不存在于另一个文件中的值

linux - 终端如何知道它要应用哪个功能?

shell - (如何)是否可以仅向那些使用标准 shell 命令和/或 Unix utils 已经拥有 r 权限的人添加 x 权限?

BASH/命令行字节数

linux - 我如何启用/禁用内核 kaslr、smep 和 smap

c++ - Linux 3D 编程该走哪条路?

bash - 为什么 `cat` 在这里列出文件而不是文件内容?