Известное решение агностика ОС, когда конфликты, кажется, прослеживает это, состоит в том, чтобы отключить все плагины один за другим и пытающийся искать снова с N
. Это скучно, но это сделает задание.
Только для получения информации, если Вы вводите ?
, это сделает это также.
В зависимости от версии SED
в вашей системе вы можете сделать
sed -i 's/Some/any/; s/item/stuff/' file
, вам не нужен G
после окончания Slash в команде S
здесь, поскольку вы делаете только одну замену на строку.
В качестве альтернативы:
sed -i -e 's/Some/any/' -e 's/item/stuff/' file
Опция -I
SED SED
для редактирования файлов на месте; Если есть символы сразу после -I
, то SED
создает резервную копию исходного файла и использует эти символы в качестве расширения файла резервного копирования. Например,
sed -i.bak 's/Some/any/; s/item/stuff/' file
или
sed -i'.bak' 's/Some/any/; s/item/stuff/' file
будет изменять файл
, сохраняя оригинал в file.bak
.
Конечно, на системе Unix (или UNIX), мы обычно используем «~», а не «.bak», поэтому
sed -i~ 's/Some/any/;s/item/stuff/' file
Многократное выражение с использованием нескольких -E
. Опции :
sed -i.bk -e 's/Some/any/g' -e 's/item/stuff/g' file
Или вы можете использовать только один:
sed -i.bk -e 's/Some/any/g;s/item/stuff/g' file
Вы должны дать расширение для файла резервного копирования, поскольку при некоторой реализации Из SED
, как osx SED не работает с пустым расширением (вы должны использовать SED -I ''
, чтобы переопределить исходные файлы).
Вы можете цеплять SD-выражения вместе с «;»
%sed -i 's/Some/any/g;s/item/stuff/g' file1
%cat file1
anything 123 stuff1
anything 456 stuff2
anything 768 stuff3
anything 353 stuff4
Вы можете использовать Vim в режиме Ex:
ex -sc '%s/Some/any/|%s/item/stuff/|x' file
%
выбрать все строки
s
заменить
x
сохранить и закрыть