使用sed移动列

时间:2015-04-17 16:41:41

标签: bash sed

My Awk脚本生成此输出:

1396.0893854748604 jdbc:mysql 192.168.0.8:3306/ycsb 3

我需要将最后一列放在开头,但不希望将其位置与第一列交换。我需要使用sed或其他非awk的管道来做到这一点。

我尝试过这个命令的变种,但没有运气。我的输出保持不变。

sed 's@\(.*\),\(.*\),\(.*\)@\4,\1,\2,\3@g' 

为了清楚起见,我希望的输出看起来像这样:

3 1396.0893854748604 jdbc:mysql 192.168.0.8:3306/ycsb 

1 个答案:

答案 0 :(得分:2)

你应该使用awk。它更好:

awk '{print $4, $1, $2, $3}' yourfilename

更新:哦对了......现在我看到你需要不再使用awk ......这是一个奇怪的要求。离开这里因为这是一个非常出色的答案......