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. 이는 동일한 라인에서 여러 교체를 수행하려는 경우에만 유용합니다.

관련 정보