在 bash 脚本中,带有空格的文件显示为 "File\ with\ spaces.txt"
我想用 _
替换那些斜线空格或 +
.
我怎么能告诉 sed 这样做?我没有成功使用;
$1=~/File\ with\ spaces.txt
ext=$1
web=$(echo "$ext" | sed 's/\ /+/')
如果有比通过 sed 更好的方法,我愿意接受建议。
[编辑]:Foo Bah 的解决方案效果很好,但它只替换了第一个空格,因为它后面的文本被视为参数而不是 $1 的一部分。有什么办法解决这个问题吗?
最佳答案
sed 's/\\\\ /+/';
\\\\
计算结果为 \\
在 shell 级别,然后变成文字 \
sed 内。
关于sed - sed 如何替换 "\"(反斜杠 + 空格)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7394123/