gpt4 book ai didi

macos - 在 Mac OSX Lion 中,如何使用 sed 将多个空格替换为一个空格?

转载 作者:行者123 更新时间:2023-12-02 05:08:58 24 4
gpt4 key购买 nike

friend 、同事、油嘴滑舌的知情人以及受人尊敬的“最羞辱性职业”的受害者同胞,

当我试图在 Max OSX 中做简单的 UNIXy 事情时,我正遭受着那种特别的疲劳。谁能告诉我如何使用 sed(不是 awk,不是 perl,而是 sed)获取包含以下内容的 file.txt:

Oh         my I         have Mac                 fatigue

让它看起来像这样:

Oh my I have Mac fatigue

如果您真的在 Mac OSX Lion 上执行此操作,非常感谢。 (编辑:也不是 Mountain Lion,不同的操作系统)。我只是花了很长时间在谷歌上搜索一般回答 linux 或 UNIX 的人,遗憾的是没有太大帮助。

我尝试了标准模式匹配的幸福、被遗忘已久的日子里的许多事情,那时人们可以快速发出 UNIXy 命令,瞧!他们会表现:

cat file.txt | sed 's/ */ /g'        - O h m y I h a v e M a c f a t i g u e
cat file.txt | sed 's/ \+/ /g' - no effect
cat file.txt | sed 's/\s\+/ /g' - no effect
cat file.txt | sed -E -e 's/ */ /g' - O h m y I h a v e M a c f a t i g u e

告诉我在 Linux 机器上使用 sed 会让我微笑,但它不会得到赞成票:)提前致谢。不确定如果没有 StackOverflow 我会做什么。

最佳答案

这有效(在 stock OS X 10.8.3 上测试):

 cat file.txt | sed -e "s/  */ /g"

(注意星号前有两个空格)

或者去掉 useless use of cat :

 sed -e "s/  */ /g" < file.txt

关于macos - 在 Mac OSX Lion 中,如何使用 sed 将多个空格替换为一个空格?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15822711/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com