剪切 file1 中的列并替换 file2 中的列

cutting column in file1 and replacing column in file2

我正在尝试用文件 2 的第 3 列替换整个列(文件 1 中的第 2 列)。我知道如何使用 awk 对一个文件执行此操作,但我认为使用 cut 会更好,因为我的文件超过awk 允许的列数(见下文)

文件是 space 分开的,并且有很多列...但我只对用文件 2 的第 3 列替换文件 1 的第 2 列感兴趣,并保持其他一切不变。

所有行相互匹配,因此无需重新排列任何内容。

示例文件

文件 1

ID X A 2

身份证我8

文件 2

ID E 8 4

ID T 2 4

   awk 'FNR==NR{a[NR]=;next}{=a[FNR]}1' f2 f1

使用 awk 和多个文件收到此错误。 awk:超出程序限制:最大字段数大小=32767

我觉得这样的事情应该是我应该做的...

cut -f3 file2 | paste - 

但我不知道如何替换 file1 中的 f2

cut -f1 file1 > temp.1
cut -f3 file2 > temp.2
cut -f3- file1 > temp.3post

合并文件以获得最终输出

paste temp.1 temp.3 temp.3post