将单词拆分为字符-Unix
如果我有一个叫“橙色”的词,我该如何把它分解成单独的字符呢 我的输出应该是:将单词拆分为字符-Unix,unix,split,character,words,Unix,Split,Character,Words,如果我有一个叫“橙色”的词,我该如何把它分解成单独的字符呢 我的输出应该是: o r a n g e 下面是一个使用sed的解决方案: echo orange | sed 's/./&\n/g' 输出 o r a n g e 下面是一个使用grep的解决方案: echo“orange”| grep-o.一个纯bash解决方案(比在短字符串上调用外部工具更快): 我正在寻找一个Unix单行程序…可能使用awk或sed这在某些特定版本的sed上不起作用,例如macos版本和假定的bsd
o
r
a
n
g
e
下面是一个使用sed的解决方案:
echo orange | sed 's/./&\n/g'
输出
o
r
a
n
g
e
下面是一个使用
grep
的解决方案:
echo“orange”| grep-o.
一个纯bash解决方案(比在短字符串上调用外部工具更快):
我正在寻找一个Unix单行程序…可能使用awk或sed这在某些特定版本的
sed
上不起作用,例如macos版本和假定的bsd版本。@favoretti,另一个答案更好:)是的,肯定是+1。刚学到一些新东西;)谢谢@sehe:)
o
r
a
n
g
e
$ a="orange"
$ [[ $a =~ ${a//?/(.)} ]] && printf '%s\n' "${BASH_REMATCH[@]:1}"
o
r
a
n
g
e