你要
sed --in-place 's/[[:space:]]\+$//' file
这将删除所有POSIX标准定义的空格字符,包括垂直制表符和换页符。此外,它将只做一个替换,如果尾部空白实际上存在,不像使用零或更多匹配器(*)的其他答案。
– in-place只是-i的长整型。我喜欢在脚本中使用长形式,因为它倾向于更多地说明标志实际上做了什么。
它可以很容易地集成发现像这样:
find . -type f -name '*.txt' -exec sed --in-place 's/[[:space:]]\+$//' {} \+
如果你是在Mac上
正如评论中所指出的,如果您没有安装gnu工具,上述方法不起作用。如果是这种情况,您可以使用以下:
find . -iname '*.txt' -type f -exec sed -i '' 's/[[:space:]]\{1,\}$//' {} \+
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。