15 Примеров использования в linux команды top

Этот раздел посвящён нескольким примерам использования стандартных утилит для решения разных типичных (и не очень) задач. Эти примеры не следует воспринимать как исчерпывающий список возможностей, они приведены просто для демонстрации того, как можно организовать обработку данных при помощи конвейера. Чтобы освоить их, нужно читать руководства и экспериментировать.

less – существенно более развитая команда для пролистывания текста. При чтении данных со стандартного ввода она создает буфер, который позволяет листать текст как вперед, так и назад, а также искать как по направлению к концу, так и по направлению к началу текста. Заполнение буфера идет блоками по 64KB, поэтому (если текст на стандартный ввод подается медленно) возможна ситуация «подвисания», когда less показывает очередные поступившие строки, но не позволяет выполнить какую-либо команду.

less понимает все команды more плюс свои.

  • h – вызов справки
  • q – выход
  • SPACE – на экран вперёд
  • b – пролистать экран назад
  • k и j или стрелки вверх и вниз – вертикальная прокрутка по строке
  • g – перейти на 1-ую строку
  • <N>g – перейти на строку N
  • G – перейти на последнюю строку
  • F – перейти на последнюю строку файла и ожидать записи новых строк (аналог tail -f, не работает со стандартным вводом)
  • /pattern – поиск по шаблону вперёд
  • ?pattern – поиск по шаблону назад
  • n – следующее совпадение
  • N – предыдущее совпадение
  • mбуква – отметить позицию буквой
  • ‘буква (апостоф и буква) – перейти на отмеченную позицию
  • ! – запуск shell-команды (% – имя текущего файла, к примеру: ! cat % > /tmp/)

Только для файла

  • v – запуск редактора

Только для стандартного ввода

  • s filename – сохранить выводимый текст в файл filename
Читайте также:  Как найти репозиторий Ubuntu нужной программы?

Параметры вывода текста less можно указывать как в виде опций, так и в интерактивном режиме. Повторный ввод опции в интерактивном режиме отменяет действие.

  • -g – при поиске подсвечивать только текущее найденное слово (по умолчанию подсвечиваются все вхождения)
  • -N – показывать номера строк

Описание книги

Рассмотрены команды Linux, основы работы в командной строке, а также настройка системы с помощью программ, обладающих только текстовым интерфейсом. Работа с системой выполняется только в режиме консоли, что требует определенной квалификации пользователя. Подробно описаны наиболее полезные команды Linux, особенности файловой системы Linux, системы инициализации, загрузчики GRUB и GRUB2. С позиции пользователя оценены интерактивные возможности оболочки zsh. Даны практические примеры разработки сценариев на языках оболочек bash и tcsh. Рассмотрено управление пакетами для наиболее актуальных на данный момент дистрибутивов. Для энтузиастов Linux написана отдельная глава о разработке собственного дистрибутива Linux и создании загрузочного LiveCD.

Для системных администраторов, программистов и квалифицированных пользователей Linux.

Подсчёт

В европейской культуре очень большим авторитетом пользуются точные числа и количественные оценки. Поэтому пользователю часто бывает любопытно и даже необходимо точно посчитать что-нибудь многочисленное. Компьютер как нельзя более удобен для такой процедуры. Стандартная утилита для подсчёта строк, слов и символов — wc (от англ. «word count» — «подсчёт слов»). Однако Мефодий запомнил, что в Linux многое можно представить как слова и строки, и решил с её помощью посчитать свои файлы.

[[email protected] methody]$ find . | wc -l 42 [[email protected] methody]$Пример 10. Подсчёт файлов при помощи find и wc

Удовлетворённый Мефодий получил желаемое число — «42». Для этого ему потребовалась команда find — рекомендованный ему Гуревичем инструмент поиска нужных файлов в системе. Мефодий вызвал find с одним параметром — каталогом, с которого начинать поиск. find выводит список найденных файлов по одному на строку, а поскольку критерии поиска в данном случае не уточнялись, то find просто вывела список всех файлов во всех подкаталогах текущего каталога (домашнего каталога Мефодия). Этот список Мефодий передал утилите wc, попросив её посчитать количество полученных строк «-l». wc выдала в ответ искомое число.

Задав find критерии поиска, можно посчитать и что-нибудь менее тривиальное, например, файлы, которые создавались или были изменены в определённый промежуток времени, файлы с определённым режимом доступа, с определённым именем и т. п. Узнать обо всех возможностях поиска при помощи find и подсчёта при помощи wc можно из руководств по этим программам.

Расшифровка значений индикаторов команды top

Нагрузка на процессор (CPU) это первые два значения:

Cpu(s): 31.7%us, 4.2%sy, 0.0%ni, 54.4%id, 9.2%wa, 0.2%hi, 0.4%si, 0.0%st

Кнопка «1» выведет нагрузку по каждому из процессоров.

PID — id процесса USER — пользователь запустивший процесс PR — приоритет процесса NI — nice процесса VIRT — количество памяти, которое может использовать программа RES — потребление физической памяти SHR — размер потенциальной памяти, которая может быть задействована совместно с другими программами

S — состояние процесса:

S — завершен D — ожидание R — выполняется T — остановлен Z — зависCPU — использование ресурсов центральным процессором MEM — использование оперативной памяти сервера TIME+ — время работы процесса COMMAND — название процесса

Клавиша «С» отобразит в строке COMMAND ключи с которыми запущены процессы.

Читайте также:  Выбор дистрибутива Linux для слабого компьютера

Клавиша «Q» — выйти из команды Top.

Стандартный вывод

Стандартный вывод записывает данные, сгенерированные программой. Когда стандартный выходной поток не перенаправляется в какой-либо файл, он выводит текст на дисплей терминала.

При использовании без каких-либо дополнительных опций, команда echo выводит на экран любой аргумент, который передается ему в командной строке:

echo Пример

Аргументом является то, что получено программой, в результате на дисплей терминала будет выведено:

Пример

При выполнении echo без каких-либо аргументов, возвращается пустая строка.

Пример

Команда объединяет три файла: file1, file2 и file3 в один файл bigfile:

cat file1 file1 file1 > bigfile

Команда cat по очереди выводит содержимое файлов, перечисленных в качестве параметров на стандартный поток вывода. Стандартный поток вывода перенаправлен в файл bigfile.

Обновление по требованию выходных данных команды top системы unix (или) изменение интервала обновления данных

По умолчанию команда top системы linux обновляет выходные данные каждые 3 секунды. Если вы хотите дать запрос на обновление выходных данных, нажмите клавишу пробела.

Для того, чтобы изменить частоту обновления выходных данных, нажмите в интерективном режиме клавишу d и введите время, указываемое в секунда, так, как показано ниже:

Change delay from 3.0 to: 10 PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 1309 geek 23 0 2483m 27m S 0 21.8 45: gagent 1882 geek 25 0 2485m 26m S 0 21.7 22: gagent