noo*_*rub 2 macos sed osx-lion
朋友,同事,狡猾的知情人士,以及受人尊敬的职业羞辱受害者,
当我在Max OSX中尝试执行简单的UNIX操作时,我会遇到这种独特的疲劳.有人可以告诉我如何使用sed(不是awk,不是perl,除了sed之外的任何东西)来获取包含以下内容的file.txt:
Oh my I have Mac fatigue
Run Code Online (Sandbox Code Playgroud)
并使它看起来像这样:
Oh my I have Mac fatigue
Run Code Online (Sandbox Code Playgroud)
非常感谢你在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
Run Code Online (Sandbox Code Playgroud)
告诉我在linux机器上使用sed会让我微笑,但它不会得到一个upvote :)在此先感谢.不知道没有StackOverflow我会做什么.
这有效(在现货OS X 10.8.3上测试):
cat file.txt | sed -e "s/ */ /g"
Run Code Online (Sandbox Code Playgroud)
(注意星号前有两个空格)
sed -e "s/ */ /g" < file.txt
Run Code Online (Sandbox Code Playgroud)