я Ну наконец то учимся использовать sed
редактировать конфиги при установке Ubuntu (Server / Desktop). После долгого скрежета зубами и поисков правильного синтаксиса для не удалить "
(закомментируйте двойные кавычки точно один пустое место после (настоящие комментарии)), в отличие от строк, в которых есть потенциальный код для переключения (нуль пробелы или два пробелы для строк кода с отступом) в файле / etc / vim / vimrc, я понял, как заставить все работать с помощью следующей команды:
$ sudo sed -i.orig '/^\" [a-zA-Z]\|^"set compatible\|^\" let g:skip_defaults_vim = 1b/! s/^\"//' /etc/vim/vimrc
Могут ли Гуру или ученики, в равной степени, сообщить мне, мог бы я сделать это лучше (более плотно / чище / и т. Д.)?
Пример использования awk
для того же результата?
Спасибо.
Использовать \1
пронумерованные переменные захвата в месте назначения изменения, например s/^([[:space:]]*)"[[:space:]]*(let .*)/\1\2/
Также используйте sed 'your change;another change' file > file.tmp$$ && mv file.tmp$$ file
Это более «безопасный» и портативный способ замены файлов на месте, чем sed -i ...
Для точечных файлов вроде ~/.vimrc
в файлах ~ и conf в / etc, используйте git для их локального сохранения. etckeeper отлично подходит для управления / etc с помощью git.
Некоторые люди используют augeas
для редактирования файлов conf, или даже для автоматического управления ими.