Как распечатать IP-адрес из сценария оболочки? - PullRequest
0 голосов
/ 28 мая 2020

Ниже моя командная строка

$ps -eaf | grep consul_exporter | grep -v grep
root      4020     1  6 Mar20 ?        4-08:51:18 ./consul_exporter --consul.server=10.1.2.133:8500 --kv.prefix=/ --web.listen-address=0.0.0.0:80

Я хочу получить вывод только IP-адреса (10.1.2.133) в качестве вывода. Как написать для этого командную строку?

1 Ответ

0 голосов
/ 29 мая 2020

Если вы не возражаете против решения, которое не является элегантным, но выполняет свою работу, просто перенаправьте вывод вашей команды grep в

... | cut -f 2 -d = | cut -f 1 -d :

Это разделит строку сначала на = а затем :. Если шаблон не такой регулярный и IP-адрес может появиться в любом месте строки, перенаправьте его в

... | grep -oE '([0-9]{1,3}[.]){3}[0-9]{1,3}'

Параметр -o просто извлекает совпадающие шаблоны из входных данных.

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