Преобразование регулярных выражений

Я хочу сделать команду для редактирования /etc/default/grub и изменить таймаут с 10 на 2. Может ли кто-нибудь объяснить, как это сделать?

1
задан 30 April 2015 в 22:17

1 ответ

Вот общий текст:

sudo sed -i.bak 's/^\(GRUB_TIMEOUT=\)[0-9]\+$/\12/' /etc/default/grub

Замените 2 (после \1) любым значением, которое вы хотите поместить.

s/OLD/NEW/ является заменой шаблон для sed. i.bak отредактирует файл /etc/default/grub на месте, сохранив исходный файл в качестве /etc/default.grub.bak. Если вы не хотите, чтобы резервная копия просто использовала -i. Мы сопоставляем строку, начинающуюся с GRUB_TIMEOUT= (удерживаем ее внутри группы, чтобы мы могли ссылаться на нее позже) и заканчивается одной или несколькими цифрами ([0-9]+). В разделе замены мы заменили цифры на значение, которое мы хотим поставить, сохраняя ранее подобранную часть (обозначаемую \1) как есть.
1
ответ дан 23 May 2018 в 20:49

Другие вопросы по тегам:

Похожие вопросы: