追加两个文件不同的总记录



我有两个文件。文件1包含7列,记录为100。文件2包含2列和1条记录。我想把文件2中的第2列放在文件1的最后一列。

我尝试粘贴-d和pr-mtr,它只是在第一条记录中添加新列。

以下是预期过程

files1.txt

aaaa|bbb|ccc|dddd|eee|fff|ggg
aawe|bab|fcc|dcvd|ere|fasdf|g12g
aaas|bcb|dcc|ddsd|efe|ff|g2
.....
aaa2|bb3|ccd|ddsd|eef|ffd|gag

files2.txt

abc|def

输出

files3.txt

aaaa|bbb|ccc|dddd|eee|fff|ggg|def
aawe|bab|fcc|dcvd|ere|fasdf|g12g|def
aaas|bcb|dcc|ddsd|efe|ff|g2|def
.....
aaa2|bb3|ccd|ddsd|eef|ffd|gag|def

awk

awk 'BEGIN{FS=OFS="|"} NR==FNR{x=$2;next} $(NF+1)=x' file2 file1 > file3

sed似乎是一个显而易见的选择。

IFS='|' read x add < file2.txt
sed "s/$/|$add/" file1.txt > file3.txt

最新更新