2012-10-03 64 views

回答

1

下面是使用SED解决方案:

echo orange | sed 's/./&\n/g' 
+0

这对于'sed'的某些特定版本无效,例如macos版本和所谓的bsd版本。 – favoretti

+0

@favoretti那么,其他答案是更好:) – squiguy

15
echo orange | fold -w 1 

输出

o 
r 
a 
n 
g 
e 
+0

+1我不知道fold util! – squiguy

+0

是的,肯定+1。刚刚学到了新东西;)谢谢@sehe :) – favoretti

2

这里是grep的一个解决方案:

echo "orange" | grep -o .

1

纯bash的解决方案(而不是调用外部工具,更快,短字符串):

$ a="orange" 
$ [[ $a =~ ${a//?/(.)} ]] && printf '%s\n' "${BASH_REMATCH[@]:1}" 
o 
r 
a 
n 
g 
e