我想用来将sed
斜杠更改为反斜杠和斜杠,即/
-> \/
。但它不起作用。这里有一个小例子:
#!/bin/bash
TEST=/etc/hallo
echo $TEST
echo $TEST | sed "s/hallo/bello/g"
echo $TEST | sed "s/\//\\\//g"
Run Code Online (Sandbox Code Playgroud)
前三行的输出是假设的。但是最后一个不起作用。为什么?如何修正最后一部分?
cho*_*oba 114
对您使用的表达式使用单引号:
sed 's/\//\\\//g'
Run Code Online (Sandbox Code Playgroud)
在双引号中,\
有特殊含义,所以必须反斜杠:
sed "s/\//\\\\\//g"
Run Code Online (Sandbox Code Playgroud)
但是更改分隔符更干净:
sed 's=/=\\/=g'
sed "s=/=\\\/=g"
Run Code Online (Sandbox Code Playgroud)
cuo*_*glm 21
尝试:
sed 's/\//\\\//g'
Run Code Online (Sandbox Code Playgroud)
或使用另一个分隔符来防止您转义斜杠:
sed 's,/,\\/,g'
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
181323 次 |
最近记录: |