Сценарий - резка различных линий и сортировка их

Можете ли вы пропинговать sip2.tellfree.net со своего сервера? В противном случае у вас проблема с сетью.

Если вы можете пинговать его, но он недоступен из вашего экземпляра Asterisk, значит, у вас проблема с конфигурацией / брандмауэром.

Я предполагаю, что это NAT, DNS или SIP-прокси, но чтобы выяснить это, требуется дополнительная информация.

0
01.12.2018, 19:04
3 ответа

Я бы рассмотрел возможность ограничения первоначального поиска конкретным пользователем и сортировки, а затем, возможно, вырезания.

ps hux -u USER | sort -k3 -n

При таком подходе процессы уже ограничены конкретным пользователем. Затем сортировка выполняется для всего полученного процесса. Затем его можно передать через каналы trи cut, если это необходимо для конкретных полей.

Параметры:
h:подавить заголовки
u:пользовательский формат
x:BSD удаляет требование tty

-uПОЛЬЗОВАТЕЛЬ :конкретный пользователь, для которого должны быть выбраны процессы. Обратите внимание, что это может быть список.

2
28.01.2020, 02:16

psпозволяет указать столбцы в выводе, а также порядок сортировки. В зависимости от ваших требований, дополнительная команда может даже не понадобиться для постобработки -.

Вот команда, которая предоставляет список процессов указанного пользователя, отсортированных по проценту использования ими ЦП. (Команда headпредназначена только для ограничения вывода ).

[root@testvm ~]# ps -o pid,uname,pcpu,command -u root --sort=-pcpu | head
  PID USER     %CPU COMMAND
    1 root      0.5 /usr/lib/systemd/systemd --switched-root --system --deserialize 21
  664 root      0.4 /usr/bin/python -Es /usr/sbin/firewalld --nofork --nopid
 1226 root      0.2 sshd: root@pts/0
 1261 root      0.2 [kworker/0:0]
    9 root      0.1 [rcu_sched]
   20 root      0.1 [kworker/0:1]
  293 root      0.1 [kworker/0:1H]
  875 root      0.1 -bash
 1008 root      0.1 /usr/bin/python -Es /usr/sbin/tuned -l -P

Параметр -oопределяет выходной формат, который представляет собой следующие столбцы :Идентификатор процесса, Имя пользователя, Процент использования ЦП и Команда.

Опция -uограничивает psпроцессами конкретного пользователя, которым в данном случае является root.

Параметр --sortопределяет порядок сортировки, который представляет собой процент использования ЦП. Символ с префиксом -определяет сортировку по убыванию.

3
28.01.2020, 02:16

Я бы сделал так:

ps aux | grep user | sort -rk3 > file_name

Прочтите о sort -rk3с помощьюman sort

Пару слов о твоем:

  • пробелы важны, bash не знает, что file name— это один файл, он собирается перенаправить вывод в файл с именем file, а затем задается вопросом, что делать с name. Если вы должны использовать пробелы в именах файлов, вам придется заключать их в кавычки:... > "file name".

  • Многие Linux-приложения умеют выбирать столбцы без подсчета/свертывания пробелов. Если бы мне нужны были только проценты, я бы сделал так:

    ps aux | grep user | sort -rk3 | awk '{print $3}'

    cutнаверное тоже такой умный, просто я с ним менее знаком.

  • Вы также можете рассмотреть top -bn1 | grep user, который делает что-то подобное

0
28.01.2020, 02:16

Теги

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