忽略shell脚本中的正斜杠

Eri*_*tto 4 sed

我正在用这个命令编写一个shell脚本:

sed -e 's/OLD_ITEM/NEW_ITEM/g' 
Run Code Online (Sandbox Code Playgroud)

但我实际上想要做一些包含目录的事情:

sed -e 's/FOLDER/OLD_ITEM/NEW_ITEM/g'
Run Code Online (Sandbox Code Playgroud)

如何忽略正斜杠以便正确读取整行FOLDER/OLD_ITEM?

Jes*_*erE 22

您不必/sedregexp中使用分隔符.您可以使用您喜欢的任何字符,只要它不出现在正则表达式本身中:

sed -e 's@FOLDER/OLD_ITEM@NEW_ITEM@g'
Run Code Online (Sandbox Code Playgroud)

要么

sed -e 's|FOLDER/OLD_ITEM|NEW_ITEM|g'
Run Code Online (Sandbox Code Playgroud)


cod*_*ict 5

你需要逃避/as \/.

\字符前面的escape()告诉shell按字面解释该字符.

所以使用 FOLDER\/OLD_ITEM