$ echo "123 345 678 789" | sed 's/ /\n/g'
123
345
678
789
但是在Mac OS X中,上面的命令是无法正常的,结果如下
$ echo "123 345 678 789" | sed 's/ /\n/g'
123n345n678n789
究其原因就是Max OS X上的sed是BSD的版本,Linux上的是Gnu的版本,导致的不一致。
怎样解决这个问题呢
第一就是使用tr,这样也能得到期望的结果
$ echo "123 345 678 789" | tr ' ' '\n'
第二就是使用BSD版本的写法。
$ echo "123 345 678 789" | sed -e 's/ /\'$'\n/g'
123
345
678
789
没有评论:
发表评论