bash:整数到字符串,拆分并用分隔符连接

时间:2013-11-19 10:16:46

标签: bash shell sh

我是'sh'的新手。有可能:

#!/usr/bin/env ruby
i=123
i.to_s.split('').join('.') #=> "1.2.3"

我尝试了一些但没有成功的事情:

i=123
IFS='' read -a array <<< "$i"
echo $array #=> "123"

3 个答案:

答案 0 :(得分:5)

您可以使用foldpaste

$ i=123
$ echo $i | fold -w1 | paste -sd.
1.2.3
$ i=1234567890
$ echo $i | fold -w1 | paste -sd.
1.2.3.4.5.6.7.8.9.0

答案 1 :(得分:2)

这样做的一种方法是使用sed:

sed -e 's/\(.\)/\1./g' -e 's/\.$//' <<< "$i"
1.2.3

答案 2 :(得分:2)

试试这个:

sed -r 's/\B/./g' <<< "$i"

尽管如此,您的sed需要能够处理扩展正则表达式(选项-r)。