如何颠倒与sed一致的所有单词?

时间:2018-07-20 12:26:53

标签: sed reverse word

例如,我们有:

This is the song that doesn`t end

用什么sed命令可以将它变成这个?

end doesn`t that song the is This

我只找到了如何反转文件中的行(也称为tac):

sed -n '1!G;h;$p'

2 个答案:

答案 0 :(得分:0)

能否请您尝试以下操作,如果有帮助,请告诉我。

awk '{for(i=NF;i>0;i--){printf("%s%s",$i,(i>1?OFS:ORS))}}'  Input_file

答案 1 :(得分:0)

这可能对您有用(GNU sed):

sed -r 'G;:a;s/^(\S+)(\s*)(.*\n)/\3\2\1/;ta;s/\n//' file

将换行符添加为定界符。将当前行分成三部分,并在第一个单词,下一个空格和换行之后的其余部分之前按该顺序排列。迭代直到模式匹配失败,然后删除引入的换行符。