我正在处理看起来很常见的数据库:
age:position:name:
我仍然不知道为什么这个数据库按此顺序制作,但为了更好的定位和操作,我想颠倒这样的顺序:
name:age:position.
我正在尝试使用unix这样做:
datab=`cut -d : -f1,2,3 inf.major`
age=`echo "$datab" | cut -d : -f1 > age`
pos=`echo "$datab" | cut -d : -f2 > pos`
name=`echo "$datab" | cut -d : -f3 > name`
paste -d : "age" "pos" "name" > inf.major
这非常费力。如果数据只有少数“部分”除以:
但它有10个以上就没关系。有没有办法如何实现相同的结果但是动态/更快?
答案 0 :(得分:1)
您可以使用awk
/ gawk
:
gawk -F":" '{print $3":"$2":"$1;}' inf.major
这将在:
分隔文件的每一行,并按相反的顺序打印前三个元素。