如何使用命令行更改它?

如何使用命令行更改它?

有一个txt文件

ID1 PROJECT1 USER1 ROLE1 USER2 ROLE2 USER3 ROLE3
ID2 PROJECT2 USER1 ROLE2 USER2 ROLE2 USER3 ROLE3

我需要如下

ID1 PROJECT1 USER1 ROLE1
ID1 PROJECT1 USER2 ROLE2
ID1 PROJECT1 USER3 ROLE3
ID2 PROJECT2 USER1 ROLE1
ID2 PROJECT2 USER2 ROLE2
ID2 PROJECT2 USER3 ROLE3

答案1

这种事情适合于awk

$ awk '{for (i=3;i<NF;i=i+2) print $1,$2,$i,$(i+1)}' file.txt
ID1 PROJECT1 USER1 ROLE1
ID1 PROJECT1 USER2 ROLE2
ID1 PROJECT1 USER3 ROLE3
ID2 PROJECT2 USER1 ROLE2
ID2 PROJECT2 USER2 ROLE2
ID2 PROJECT2 USER3 ROLE3

相关内容