У меня есть файл, который содержит несколько строк XML. Я хотел бы заменить определенные части файла. Некоторые части файла содержат кавычки ( "), которые я хотел бы заменить. Я пытался избежать кавычки \, но я не думаю, что это работает на основе результатов моего файла.
Вот пример одной из моих команд sed:
sed -e "s/\"text\"/'text'/ig" file.xml > temp.tmp
Это то, как вы избегаете кавычек в команде sed или я делаю что-то не так?
\"правильный ли способ избежать кавычек в команде sed?
". Но ваша команда оболочки использует строку в двойных кавычках, и \"там все правильно. sedПрограмма видит в s/"text"/'text'/igкачестве аргумента -e.
s/\"text\" /'text'/igбы, он нашел бы только "text" с пробелом после этого?
sedэто правильный инструмент для работы, может быть, вам нужен анализатор XML.
"text"на'text'. Конечно, это ничего не даст"othertext". Покажите несколько строк ввода, соответствующий нежелательный вывод, и объясните, какой вывод вы хотите вместо этого.