Справочник 70 основных команд Linux: полное описание с примерами

htop — компьютерная программа, предназначенная для вывода на терминал списка запущенных процессов и информации о них (монитор процессов). Создана как альтернатива программы top. Написана на языке Си. Предоставляет пользователю текстовый интерфейс; для вывода на терминал использует библиотеку ncurses.

Htop
Тип Системный монитор процессов
Разработчик Hisham H. Muhammad
ОС GNU/Linux, FreeBSD
Версия 0.8[1] (2008-05-07)
Лицензия GNU GPL
Сайт

htop — продвинутый монитор процессов, написанный для GNU/Linux. Он был задуман заменить стандартную программу top. Htop показывает динамический список системных процессов, список обычно выравнивается по использованию ЦПУ. В отличие от top htop показывает все процессы в системе. Также показывает время непрерывной работы, использование процессоров и памяти.

Htop часто применяется в тех случаях, когда информации даваемой утилитой top недостаточно, например при поиске утечек памяти в процессах.

Htop написан на языке Си и использует для отображения библиотеку Ncurses.

Cask позволяет легко устанавливать программы Mac OS GUI прямо из командной строки, используя Homebrew. Сначала вы устанавливаете cask, а потом можете устанавливать обычные программы из командной строки, используя команду:

brew install cask

К примеру, если вы хотите установить Chrome, команда будет выглядеть так:

brew cask install google-chrome

Если нужно установить iterm2:

brew cask install iterm2

Cask может устанавливать множество программ Mac OS без скачивания их с различных сайтов и прохождения длительного процесса установки.

Однако учтите, что у пакета Cask есть некоторые ограничения. Например, он не может устанавливать программы из Mac App Store, а также не может устанавливать обновления, как команда «softwareupdate». Тем не менее, это всё равно очень удобный и полезный инструмент.

Читайте также:  Как можно скорее обновите iOS и iPadOS до версии 14.4
  1. find

    Осуществляет поиск в файловой системе, файлах и папках. Для результатов поиска можно выполнять дополнительные команды.

  2. pwd

    Отображает на экране текущий каталог.

  3. clear

    Команда полной очистки окна терминала удаляет все ранее выведенные сообщения.

  4. history

    Показывает ранее введённые пользователем команды. Перемещаться по списку введённых команд можно, нажимая на клавиатуре «Вверх» и «Вниз».

  5. locate

    Быстрый поиск файлов по базе данных updatedb для шаблонов имён файлов. Эта БД работает со снимком файловой системы, что многократно ускоряет процесс поиска. Но тут есть и существенный минус. Точность поиска зависит от того, насколько актуальны данные о файловой системе в текущей версии снимка.

  6. zcat / zless / zmore

    Утилиты для просмотра сжатых файлов. С помощью zcat можно найти увидеть список сжатых файлов, zless выводит их списком постранично с возможностью листать вперёд и назад, а zmore — только вперёд.

  7. ;

    Точка с запятой — ещё один оператор для последовательного запуска нескольких команд в одной строке. Если нужно, чтобы команды выполнялись параллельно, используйте оператор так:

    (команда_№1 &); (команда_№2 &); (команда_№3 &)

FC (File Compare)

Команда FC пригодится в основном кодерам, также она может использоваться теми юзерами, которым приходится работать с текстовыми файлами. Эта команда позволяет сравнивать содержимое двух файлов, отыскивая между ними несоответствия. Допустим, у вас имеются два файла и и вы хотите их сравнить. Выполните в консоли следующую команду:

fc /U “D:” “D:”

FC (File Compare)

В данном примере мы сравнили два простых текстовых документа. Интерпретатор командной строки нашел несоответствие в одном из предложений и указал конкретное место. Команда FC также позволяет сравнивать бинарные файлы, файлы в кодировке юникод, определять число несоответствий и т.п. Если сравниваемые файлы окажутся идентичными, при выполнении команды FC будет выведено соответствующее сообщение.

Каналы

Канал — это особая концепция системы Linux, которая автоматизирует перенаправление вывода одной команды посредством использования входных данных на следующую команду. Такое использование каналов приводит к эффективным комбинациям независимых команд. Ниже приведены некоторые из них:

  • find .| less — позволяет прокручивать длинный список файлов постранично;
  • head | grep -i ‘little’ echo $PATH | tr ‘:’ ‘\n’ — переводит на новую строку;
  • history | tail — отображает последние 10 команд;
  • free -m|grep Mem:|awk ‘{print $4}’ — отображает доступную память;
  • du -s *|sort -n|tail — отображает 10 наиболее больших файлов/каталогов в pwd.

Расшифровка и отладка команд каналов

free -m|grep Mem:|awk ‘{print $4}’

Приведённая выше команда эквивалентна выполнению следующих 4 команд:

  • free -m >
  • grep Mem: >
  • awk ‘{print $4}’
  • rm

Сокращение этапов работы с командами зачастую является эффективным и более простым способом, который позволяет сэкономить время и упростить процесс. Например, вышеупомянутый конвейер можно уменьшить следующим образом:

free -m|awk ‘/Mem:/{print $4}’

Ниже приведено ещё несколько примеров каналов:

Чтобы получить доступ к pdf-файлам страниц справочника man:

man -t diff | ps2pdf —  

Чтобы получить актуальные на сегодняшний день файлы:

ls -al —time-style=+%D | grep `date +%D`

Топ-10 самых часто используемых команд:

history | awk ‘{a[$2]++}END{for(i in a){print a[i] » » i}}’ | sort -rn | head

Далее будут команды терминала Linux, которые принимают только литеральные аргументы.

Большинство команд получают входные данные, например, из stdin (канала) и файла:

wc < #ок 

wc #ок

Однако, существуют определённые исключения. Например, некоторые команды получают входные данные только из stdin, а не из файла:

tr ‘N’ ‘n’ #работать не будет

tr ‘N’ ‘n’ < #работать будет

Некоторые команды не получают входные данные ни из stdin, ни из файла. Например, следующие:

  • echo <  — не подходит. Предполагается, что вы собираетесь распечатать содержимое файла;
  • echo  — не подходит. Предполагается, что вы собираетесь распечатать содержимое файла;
  • echo «Привет, как дела?» —  принимает литеральные аргументы.

cp, touch, rm, chmod относятся к другим примерам.

Команда tree

Кому-то команда tree покажется бесполезной, однако она пригодится разработчикам программного обеспечения и техническим писателям. Команда tree отображает структуру каталогов по указанному пути. Например, у нас есть проект c:\my_prj\project1. Нужно построить структуру подкаталогов этого каталога. Для этого можно использовать следующие команды:

tree c:\my_prj\project1 | clip tree c:\my_prj\project1 >

Первая команда копирует структуру каталогов в буфер обмена, а вторая помещает в файл с именем

Команда tree

Рис. 7. Команда tree

PowerShell

В 2012 году «Хакер» публиковал статью «Апгрейды для и альтернативы», в которой обсуждались возможные замены для Напомню, что в статье рассматривались console, clink, cygwin, mintty, PowerCmd. Все они позволяют сделать работу в командной строке эффективнее. В Microsoft тоже понимали, что стандартный уже безнадежно устарел, и вместо того, чтобы подвергнуть его апгрейду, в Microsoft работали над PowerShell. PowerShell — расширяемое средство автоматизации от Microsoft, состоящее из оболочки с интерфейсом командной строки и сопутствующего языка сценариев. Будущее командной строки Windows за PowerShell, поэтому, если ты еще не знаком с ним, самое время начать знакомство. О PowerShell мы писали в февральском номере.