Ste*_*han 2 linux string bash replace
这是我的脚本:
my_var="foo
bar
baz"
echo ${my_var//\n/\\n}
Run Code Online (Sandbox Code Playgroud)
我想用替换所有换行符\\n.
然而,这就是我所拥有的:
foo bar baz
Run Code Online (Sandbox Code Playgroud)
我错过了什么?
我认为这样做你想要的:
$ echo "${my_var//$'\n'/\\n}"
foo\nbar\nbaz
Run Code Online (Sandbox Code Playgroud)
有两件重要的事情需要注意:
echo打印由单个空格分隔的每个参数.$'\n'了C风格的字符串,在得到一个换行符搜索扩展的一部分.