如何用空格替换斜杠

如何用空格替换斜杠

我正在尝试用空格替换斜杠:

category='dir1/dir2/dir3'
category="${category//\// /}"
echo $category
dir1 /dir2 /dir3

我想得到dir1 dir2 dir3.

我怎样才能使用 Bash 得到这个?

答案1

bashis中的“全部替换”语法${variable//OLD/NEW},不带尾部斜杠。您现在的斜杠被视为替换的一部分,因此您将每个斜杠替换为空格斜杠,而不仅仅是空格。删除最后的斜线以获得你想要的:

$ category='dir1/dir2/dir3'
$ category="${category//\// }"
$ echo "$category"
dir1 dir2 dir3

相关内容