Более эффективный способ отсортировать результат команды netstat

Я пытался отсортировать только IP-адреса, не связанные с Firefox и записать им в файле. Я закончил с этой командной строкой, сделал задание, но я задаюсь вопросом, существует ли способ добиться большего успеха.

netstat -antp | grep -E ?:80 | grep -v firefox > ipadress.txt &&  awk '{print $5}' ipadress.txt > ipadress1.txt

И есть ли способ иметь инструмент для очистки, произведенный путем удаления:80 портов? Я использовал ipadress1.txt потому что то, когда я пытался перезаписать его, не работает.

1
задан 8 March 2017 в 08:13

1 ответ

Сделайте awk, делают всю работу:

$ netstat -antp | awk '/:80/ && !/\/firefox/{print $5}'                                                           
(Not all processes could be identified, non-owned process info
 will not be shown, you would have to be root to see it all.)
151.101.129.69:80
67.132.183.24:80
91.189.89.144:80
151.101.129.69:80
:::*

Объяснение

Типичный awk программа структурирована этот путь:

/pattern/ {code to run if pattern matched}

В данном случае мы используем два шаблона: мы ищем :80 строка и строки, которые не имеют /firefox в них. Эти && логично И, что означает соответствие и шаблоны на левом и на праве. Если мы имеем достойный такой строки - выполняют codeblock, который печатает только 5-е поле.

5
ответ дан 3 December 2019 в 06:38

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

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