Saya memiliki file yang berisi banyak baris xml. Saya ingin mengganti bagian file tertentu. Beberapa bagian file berisi tanda kutip ( "
) yang ingin saya ganti. Saya telah mencoba untuk melarikan diri dari tanda kutip \
, tetapi saya tidak berpikir ini berfungsi berdasarkan hasil file saya.
Berikut adalah contoh dari salah satu perintah sed saya:
sed -e "s/\"text\"/'text'/ig" file.xml > temp.tmp
Apakah ini cara Anda menghindari tanda kutip dalam perintah sed atau apakah saya melakukan sesuatu yang salah?
\"
apakah cara yang benar untuk menghindari tanda kutip dalam perintah sed?
"
. Tetapi perintah shell Anda menggunakan string yang dikutip ganda, dan \"
benar di sana. The sed
Program melihat s/"text"/'text'/ig
sebagai argumen untuk -e
.
s/\"text\" /'text'/ig
Apakah ia hanya menemukan "text"
spasi setelahnya?
sed
adalah alat yang tepat untuk pekerjaan itu, mungkin Anda ingin parser XML.
"text"
dengan'text'
. Tentu saja tidak akan melakukan apa pun untuk itu"othertext"
. Tampilkan beberapa jalur input, output yang sesuai yang tidak diinginkan, dan jelaskan output apa yang Anda inginkan.