Найти и заменить текст (мультикарты) в файлах.js в Linux
У меня есть много файлов.js, названных так же (got.js), где мне просто нужно найти и заменить текст на них. Текст для поиска: \x72\x6Fx75\x6E
И должен быть заменен на: \x72\x6F\x75\x6E
(просто \ в середине)
Я попробовал САС с найти, именно этот:find '/home/' -name 'got.js' -exec sed -i -e 's%\x72\x6Fx75\x6E%\x72\x6F\x75\x6E%g' '{}' %;
но я получаю ошибку find: missing argument to '-exec'
, Если я изменюсь %
в \
, это не показывает никакой ошибки, дата последнего изменения файлов изменяется, но ничего не меняется в файлах.
Кроме того, я должен отметить, что это \x72\x6Fx75\x6E
текст является частью большой закодированной фразы. Я подумал, что это может быть проблемой, и положил всю фразу в sed, но результат был тот же: ничего не меняется:-(
Надеюсь, что кто-то может помочь мне в этом.
Спасибо всем!
1 ответ
Попробуй это:
find '/home/' -name 'got.js' -exec sed -i -e 's/\\x72\\x6Fx75\\x6E/\\x72\\x6F\\x75\\x6E/g' {} \;
Редактировать: была ошибка опечатки в исходной командной строке. 2 одинарные кавычки после../g