Saya tahu ini telah ditanyakan sebelumnya, tetapi saya kesulitan memahami jawaban yang saya temukan. Pada dasarnya saya ingin menggunakan
sed -i 's/string//some/directory/g' file.txt
dan saya tidak dapat menemukan jawaban langsung tentang cara membuat /some/directory
tidak memecah sed
sintaks.
Jawaban yang Diterima:
sed
memungkinkan beberapa pembatas sintaks, /
menjadi satu-satunya yang paling umum digunakan.
Anda juga bisa mengatakan
sed -i 's,<string>,<some/directory>,g' file.txt
dimana ,
sekarang memiliki fungsi yang biasanya dilakukan oleh /
, dengan demikian membebaskan yang terakhir dari makna khususnya.
Namun, perhatikan (seperti yang ditunjukkan oleh @Jeff Schaller), bahwa sekarang ,
tidak boleh muncul dalam nama file atau direktori – dan ini adalah karakter yang valid untuk nama file! Jawaban ini memberikan ikhtisar yang baik tentang cara melanjutkan saat menerapkan sed
ke string dengan karakter khusus.