使用 bash 将字符串中的字符 X 替换为字符 Y

使用 bash 将字符串中的字符 X 替换为字符 Y

我正在做巴什脚本,我想用字符串变量中的另一个字符替换一个字符。

例子:

#!/bin/sh

string="a,b,c,d,e"

我想替换,\n.

输出:

string="a\nb\nc\nd\ne\n"

我该怎么做?

答案1

方法很多,这里列举几种:

$ string="a,b,c,d,e"

$ echo "${string//,/$'\n'}"  ## Shell parameter expansion
a
b
c
d
e

$ tr ',' '\n' <<<"$string"  ## With "tr"
a
b
c
d
e

$ sed 's/,/\n/g' <<<"$string"  ## With "sed"
a
b
c
d
e

$ xargs -d, -n1 <<<"$string"  ## With "xargs"
a
b
c
d
e

相关内容