awk语句把1.txt的第一列替换成2.txt的最后一列。怎么用awk语句写这个命令
2.txt有三列其中几行如下:0x018ADB20P_MEM_WR00x018ADB28P_MEM_WR10x01A5DB58P_FETCH50x01A5DB50P_FE...
2.txt有三列 其中几行如下:
0x018ADB20 P_MEM_WR 0
0x018ADB28 P_MEM_WR 1
0x01A5DB58 P_FETCH 5
0x01A5DB50 P_FETCH 6
0x01A5DB40 P_FETCH 8
1.txt有 5列 如其中几行如下:
11612977539 12 871842 2 1
11645747070 12 871848 2 1
11658853515 12 871849 1 1
11678515625 12 871849 1 1 展开
0x018ADB20 P_MEM_WR 0
0x018ADB28 P_MEM_WR 1
0x01A5DB58 P_FETCH 5
0x01A5DB50 P_FETCH 6
0x01A5DB40 P_FETCH 8
1.txt有 5列 如其中几行如下:
11612977539 12 871842 2 1
11645747070 12 871848 2 1
11658853515 12 871849 1 1
11678515625 12 871849 1 1 展开
1个回答
展开全部
paste 2.txt 1.txt | awk -F" " '{print $1,$5,$6}'>new.txt
追问
能解释一下这行语句的含义吗?
追答
先把两个文件按列合并到一起(paste),然后再用awk打印需要的列,我刚才的答案少打了1.txt的最后两列。最后重定向到新文件new.txt。
[zc@ap]$ paste 2.txt 1.txt | awk -F" " '{print $1,$5,$6,$7,$8}'>new.txt
[zc@ap]$ cat new.txt
0x018ADB20 12 871842 2 1
0x018ADB28 12 871848 2 1
0x01A5DB58 12 871849 1 1
0x01A5DB50 12 871849 1 1
0x01A5DB40
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询