Удаление строки из файла hosts, содержащего имя, начинающееся с указанного c id - PullRequest
1 голос
/ 06 января 2020

Попытка автоматизировать очистку и генерацию файла hosts с несколькими экземплярами docker.

Записи в файле hosts будут выглядеть следующим образом:

172.19.0.5 srs_develop_memcached-1_1 # docker-hosts.php
172.19.0.8 srs_test_memcached-1_1 # docker-hosts.php

Я использовал sed для удаления строки, оканчивающиеся на # docker-hosts.php.

Теперь мне нужно быть более точным c и нацелиться на строки, оканчивающиеся на # docker-hosts.php, а также на имя экземпляра, начинающееся с srs_test или srs_develop .

То, с чего я начал, было:

sed -i '/# docker-hosts.php\$/d' /etc/hosts

Теперь мне нужно быть более точным c, основываясь на экземпляре docker, с которым я работаю.

1 Ответ

0 голосов
/ 06 января 2020

Вы можете сделать:

sed -i '/.*srs_develop.*# docker-hosts\.php$/d' /etc/hosts

Регулярное выражение соответствует строкам, которые содержат "srs_develop", и заканчивается "# docker -hosts. php".

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...