KSH で文字列があり12345
、それを に変換したい場合は1.2.3.4.5
、どうすればいいでしょうか?
使ってみましたcut
が、簡単ではありません。
echo "12345" | cut -c1
答え1
義務的なawk
回答:
echo "12345" | awk '$1=$1' FS= OFS="."
出力は次のとおりです。
1.2.3.4.5
回答は、以下の解決策の1つから変更されています。このスタックオーバーフロー役職。
答え2
Perl 正規表現 (ルックアップとバック参照付き) の回答は、最後の 1 つを除くすべてを、すべてプラスドットで置き換えます (これが質問の内容であると仮定)。
$ echo "12345" | perl -wlpe 's/(.(?=.))/$1\./g'
1.2.3.4.5
答え3
OpenSolaris 上の ksh と /usr/bin/sed でテストされた sed ソリューション
echo "12345" | /usr/bin/sed -e 's/./&\./g' -e 's/\.$//'