SED正确使用换线

SED正确使用换线

我想用下面的替换来更改该行

STUNNIX_BIN_PATH=~/bpd/external/stunnix-cxx-obfus/bin
STUNNIX_BIN_PATH=/home/test-matcher/Obfuscated_Tools/stunnix-cxx-obfus

我尝试使用命令进行一些尝试sed,但无法使用以下命令替换/home/字符串。~ string有人可以帮忙吗?

sed -i 's/~/home/g' /home/test-matcher/Sources/QMMatcher/$(date +"%m_%d_%y")_"$2_Viper"/scripts/obfuscate/qmobfus.sh
sed -i 's/bpd/test-matcher/g' /home/test-matcher/Sources/QMMatcher/$(date +"%m_%d_%y")_"$2_Viper"/scripts/obfuscate/qmobfus.sh
sed -i 's/external/Obfuscated_Tools/g' /home/test-matcher/Sources/QMMatcher/$(date +"%m_%d_%y")_"$2_Viper"/scripts/obfuscate/qmobfus.sh

答案1

您可以在 sed 中使用任何字符作为分隔符

尝试

sed -i 's:~/bpd/external/stunnix-cxx-obfus/bin:/home/test-matcher/Obfuscated_Tools/stunnix-cxx-obfus:' ...

我不确定你需要/g旗帜。仅当您想在同一行上进行多次替换时,这才有用。

相关内容