Если у вас «узкий» канал Интернет и при этом каждый КБ/сек. на счету, то вам наверняка будет интересным узнать кто же «кушает» траффик. К сожалению данный метод не поможет определить самого прожорливого потребителя, однако определить потребителей вообще будет легко. И так, запускаем Терминал и выполняем команду:
lsof -i
– Данная команда выведет список всех программ, которые общаются с сетью. Как видно, список в таком виде довольно трудночитаемый и сейчас мы его будем сокращать. Добавим к первой команде ещё пару операторов, которые помогут отсортировать исходное значение. В итоге команда преобразуется в такой вид:
lsof -i | cut -f 1 -d " " | uniq
Результатом выполнения будет довольно краткий и лаконичный список, включающий в себя все приложения, которые коннектились к Интернет в прошедшие несколько минут:
Finder 1Password Dropbox AirServer Yandex.Di Messages Skype Mail ubd TextMate
Интересно как это всё работает? – Консольная утилита lsof показывает все открытые в данный момент файлы, дополнительный параметр -i делает выборку только тех файлов, которые работают с сетью. После оператора «|» выполняется следующая консольная утилита – cut. Она преобразовывает выданный список в соответствии с заданными для неё параметрами. Параметр -f указывает на номер поля, которое нужно оставить после вырезания ненужной информации (в нашем случае первый столбец), а в параметре -d указывается символ-разделитель, после которого нужно вырезать ненужности (в нашем случае это символ пробела). И заключительная операция, идущая после оператора «|» – это выборка уникальных данных, которая выполняется при помощи консольной утилиты uniq.