sed - 如何反转所有符合sed的单词?
问题描述
例如,我们有:
This is the song that doesn`t end
什么 sed 命令会把它变成这个?
end doesn`t that song the is This
我只发现了如何反转文件中的行(又名tac
):
sed -n '1!G;h;$p'
解决方案
这可能对您有用(GNU sed):
sed -r 'G;:a;s/^(\S+)(\s*)(.*\n)/\3\2\1/;ta;s/\n//' file
添加换行符作为分隔符。将当前行分成三部分,并按顺序在第一个单词、后面的空格和换行符后面的行的其余部分前面。迭代直到模式匹配失败,然后删除引入的换行符。
推荐阅读
- python - Python:如果char是数字,则Lambda返回字符串
- android - 在android webiew中向请求添加标头
- android - 在Android上使用JSoup在不同的行中提取相同html标签的文本
- python - 如何处理 IndentationError: 意外缩进
- php - Kubernetes 集群中的 Laravel ENV 变量冲突
- c# - 将变量类型更改为/从(TreeViewEventArgs 或 TreeViewCancelEventArgs)
- android - 调用没有任何值的绑定适配器
- android - 如何在滚动视图中动态添加可滚动的水平线性布局
- python - 在python中合并两个排序的项目列表
- c# - Azure 语音服务语音转文本错误