如何在每个字符后添加特定字符?

tob*_*obe 6 text-processing

我有一个号码 -> 12345

我想要以下格式的输出

1+2+3+4+5
Run Code Online (Sandbox Code Playgroud)
echo `cat fl.txt | paste -s -d ''`
Run Code Online (Sandbox Code Playgroud)

只给12345.

但是当我在下面的命令中添加这个 + 时,它给出了相同的12345.

echo `cat fl.txt | paste -s -d '' | tr -s '' '+'`
Run Code Online (Sandbox Code Playgroud)

αғs*_*нιη 9

使用 GNU sed,您还可以执行以下操作:

sed 's/./+&/2g'
Run Code Online (Sandbox Code Playgroud)


nez*_*dka 6

将字符串拆分为字符更容易:

fold -w1 file | paste -sd+ -
Run Code Online (Sandbox Code Playgroud)

某些版本的fold命令没有-c选项但有-w选项。在这种情况下,它们可以互换。
或者:

grep -o '.' file | paste -sd+ -
Run Code Online (Sandbox Code Playgroud)

也许用一个命令:

awk -v OFS='+' -F '' '{$1=$1; print}' file
Run Code Online (Sandbox Code Playgroud)

和:

sed 's/\B/+/g' file
Run Code Online (Sandbox Code Playgroud)