如何将空格分隔的文本转换为Bash中的行

时间:2014-07-11 18:46:09

标签: linux string bash

我有一个简单的字符串:

 foo bar boo you too

我在命令行(而不是在脚本中)中寻找一种简单的方法来通过管道或输入重定向获取此字符串并将其转换为

 foo
 bar
 boo
 you
 too

4 个答案:

答案 0 :(得分:3)

你可以使用' tr'将空间转换为新行:

~$ echo 'foo bar boo you too' | tr ' ' '\n'
foo
bar
boo
you
too

答案 1 :(得分:1)

echo "one two three" | sed 's/ /\n/g'

答案 2 :(得分:0)

使用grep和正则表达式的工作解决方案:

echo "foo bar boo you too" | grep -oE "[a-z]+"

答案 3 :(得分:0)

[在Bash]点燃。

$ echo "foo bar boo you too" | ( read -a A; printf '%s\n' "${A[@]}"; )
foo
bar
boo *
you
too