我有一个空格分隔的文件,如下所示:
-1 'xyz
1 'dfg
1 'frt
-1 'pop
以逗号分隔的文件,如下所示:
1,-1,1,-1
-1,-1,1,-1
1,1,-1,1
1,-1,1,-1
是否有一个Linux命令行一行代替第一个文件的第一列和第二个文件的第n列?例如,如果n = 2,则新文件将变为:
-1 'xyz
-1 'dfg
1 'frt
-1 'pop
答案 0 :(得分:2)
你可以尝试下面的awk命令,
$ awk -F'[, ]' 'FNR==NR{a[FNR]=$2; next}{print a[FNR],$2}' file2 file1
-1 'xyz
-1 'dfg
1 'frt
-1 'pop
提到要在此处a[FNR]=$2
插入的列,在我们的示例中,它将文件2中第2列的内容存储在关联数组中。
答案 1 :(得分:1)
cut
在bash中paste -d " " <(cut -d, -f4 file2) <(cut -d " " -f2 file1)
-1 'xyz
-1 'dfg
1 'frt
-1 'pop