Основы работы в командной оболочке Linux. Основные Linux команды консоли

    Командная строка, оболочка, консоль - эти термины используются для обозначения взаимодействия человека-оператора с операционной системой с применением стандартных устройств ввода-вывода, обеспечивающих ввод команд и получение результатов их выполнения. В операционных системах семейства Linux подобное взаимодействие обеспечивается специальным программным продуктом - оболочкой (shell) . Наиболее распространенной из них, является оболочка проекта GNU bash (B ourne A gain SH ell). Bash основывается на оболочке Bourne (sh) созданной Стефеном Борном и включает в себя свойства множества других оболочек - C (csh) , Korn (ksh) , tc (tcsh) . Bash была написана Брайаном Фоксом (Brian Fox) и в настоящее время поддерживается Четом Рейми (Chet Ramey).

    Свойства оболочки Bash делают ее наиболее универсальным и удобным средством взаимодействия с ОС Linux:

- Bash обеспечивает редактирование командной строки. Курсор может быть перемещен в любую позицию команды для изменения ее содержания.

- Bash поддерживает режим истории команд, позволяя отображать и изменять ранее введенные команды. Оболочка bash также имеет несколько переменных, значения которых влияют на сохранение и повторный вызов ранее введенных команд.

- Bash обеспечивает завершение частично введенных слов для имен переменных, пользователей, хостов, команд и файлов.

- Bash обеспечивает гибкое управление процессами, позволяя приостанавливать их, перезапускать, переключаться между задачами переднего плана и фоновыми, и даже продолжать выполнение задачи при завершении родительского процесса.

- Bash позволяет использовать функции и псевдонимы, выполнять арифметические операции и вводить арифметические выражения в качестве команд.

- Bash позволяет создавать целые наборы последовательно выполняемых команд (сценарии или скрипты) с использованием гибкого и функционального языка программирования данной оболочки.

- Bash имеет гибкие настройки, обеспечивающие изменение внешнего вида командной строки.

Оболочка bash может выполняться как в интерактивном, так и в неинтерактивном режимах. В первом случае программа bash взаимодействует с пользователем, во втором - используется для выполнения скриптов (специально подготовленных текстовых файлов с последовательностью команд) .

    Команда оболочки Linux - это строка символов из имени команды и аргументов, разделенных пробелами. Аргументы предоставляют команде дополнительные параметры, определяющие ее поведение. Например, команда
echo 12345
выведет на экран строку символов 12345, введенных в качестве аргумента команды.

Команды, являющиеся частью оболочки называются встроенными . Естественно, они могут отличаться для различных оболочек. Кроме того, в качестве команд используются имена исполняемых файлов. В качестве аргументов, командам передаются ключи или опции , состоящие из тире и одного или нескольких символов. Пример такой команды:

Ls -l

ls - команда для отображения информации о файлах.. При вводе без аргументов, эта команда просто отобразит список файлов в текущем каталоге. При вводе с параметром -l - список в длинном формате - с отображением атрибутов, владельцев, даты и времени.

При использовании нескольких ключей, их можно объединить. Ниже приведенные варианты команд идентичны:

Как получить подсказку по использованию команды Linux

При работе в командной оболочке Linux, в большинстве случаев, можно получить справочную информацию по использованию конкретной команды, введя ее имя с параметром --help :

Ls --help - отобразить справку для команды ls . В большинстве случаев, для получения справочной информации, допускается использование ключа -h

Ls -h В операционных системах семейства Linux, более подробную справочную информацию можно получить из комплекта документации, известного как man-страницы , поскольку он доступен по команде man . Этот комплект включает в себя 8 разделов, содержащих справочную информацию, которую можно вывести на экран с использованием команды man

Перечень разделов man-страниц :

1 - Команды уровня пользователя.

2 - Системные вызовы. Документация о библиотечных системных вызовах, как open, read, exec и т. п. Данный раздел обычно используется программистами.

3 - Библиотеки. Этот раздел также предназначен для программистов и содержит справочную информацию о библиотеках прикладных программ (abs, rint и т.п.)

4 и 5 - Форматы системных и пользовательских файлов. Содержит документацию о различных форматах файлов, как например, файл passwd

6 - Игры. Описание игр, поставляемых с установленной системой.

7 - Драйверы. Документация к драйверам, как например ip или ipv6

8 - Поддержка системы. Документация с информацией о командах для системного администрирования (init, fdisk, ifconfig и т.п.).

Примеры:

Man 1 ls - отобразить справку для команды ls из первого раздела документации (в нем хранится информация о командах уровня пользователя).

На практике, если требуется справка именно о команде, номер раздела опускают. В таком случае, поиск будет выполнен по всем разделам, начиная с первого до совпадения с аргументом, заданным в команде man :

Man ls - отобразить справку для команды ls из первого раздела документации, где она будет найдена.

Иногда отсутствие номера раздела в команде man даже предпочтительнее. Например, справка по команде

Man 1 init - отобразить справку для команды init из первого раздела документации, завершится сообщением об отсутствии справочной информации, потому, что данная команда относится к командам поддержки системы и информация о ней содержится в 8-м разделе.

Для поиска справочной документации во всех разделах, используется опция -a :

Man -a passwd - отобразить справку для аргумента passwd из всех разделов, где она будет найдена: В результате, отобразится справка по команде passwd из первого раздела и описание формата файла паролей passwd из пятого.

В качестве аргумента для строки поиска в команде man можно использовать шаблон:

Man -a ip* - отобразить справку для всех параметров, начинающихся с ip из всех разделов справочной документации.

При просмотре справочной документации, отображаемой по команде man используются клавиши:

стрелка вверх/вниз - переход на строку вверх/вниз.

PgUp/PgDown - переход на страницу вверх/вниз.

Enter - переход на строку вниз.

Пробел - переход на страницу вниз

Q - выход из справки.

Также, удобным средством поиска справочной информации являются утилиты apropos и whatis , позволяющие выполнить поиск по ключевому слову в базе данных документации. Первая из них выводит те строки, которые содержат строку поиска в в именах справочных страниц и кратких описаниях, а вторая – показывает однострочные описания справочных страниц, которые имеются в начале каждой страницы. С параметрами по умолчанию команды выдадут различающуюся информацию. Например, команда whatis tar , выдаст информацию имеющую отношение к утилите архивирования tar , а команда apropos tar - выдаст информацию и об утилите tar , и, кроме этого, справочные данные, где строка “tar” является частью слова, например “star t”. Использование утилиты apropos на первый взгляд кажется не очень эффективным, однако, это не так. Например, команда apropos net позволит быстро получить краткую справку по сетевым утилитам, присутствующим в данной системе. В данных командах можно использовать параметр -s указывающий номер раздела справочной системы, в котором будет выполняться поиск:

apropos –s 1 net - выполнить поиск только в первом разделе man.

При поиске обе утилиты используют индексные базы данных, которые обновляются с помощью программы mandb (или традиционной текстовой базы данных, создаваемой программой makewhatis ), поэтому поиск выполняется очень быстро. Дополнительные параметры командной строки, используемые apropos и whatis можно получить с помощью команды man .

    Работа в командной строке Linux имеет некоторые принципиальные отличия по сравнению с работой в среде Windows.

    Во-первых, не забывайте, что строчные и заглавные буквы для Linux - это разные символы. В операционной системе Windows каталог TEMP и каталог Temp - это один и тот же каталог, в Linux - это два разных. То же самое касается команд, их ключей, имен пользователей,паролей и т.п.

    Во-вторых, справка по команде с параметром --help и справка из man-страницы различаются. Последняя, как правило, более подробная, с примерами и ссылкой на связанные разделы документации.

В-третьих, доступный список команд и результат их выполнения зависит от ваших прав в системе. Как правило, потенциально опасные для целостности системы команды, и команды, влияющие на работу других пользователей, не доступны обычному пользователю. Полными правами по отношению к системе имеет только один пользователь (суперпользователь)- root . Обычно, учетная запись данного пользователя используется только для изменения настроек системы, и в большинстве дистрибутивов Linux, после установки системы, нет возможности работать под root ‘ом в графической среде, в сеансах удаленного подключения, или даже при локальном входе в систему, как это сделано в Ubuntu . Такой подход позволяет предотвратить разрушение системы при ошибках пользователя, и вполне оправдан, однако существуют случаи, когда без прав root не обойтись. Для получения прав пользователя root (суперпользователя, superuser) , которому доступны все возможные команды, используйте команду su . Она позволяет сменить текущего пользователя. Если пользователь не задан, то подразумевается root. .

Для выполнения отдельно взятой команды от имени суперпользователя root или другого пользователя используется команда sudo :

sudo ifconfig - выполнить команду ifconfig от имени суперпользователя root

sudo su - Комбинация sudo и su - выполнить команду su от имени суперпользователя root. Данный вариант команды позволяет пользователю перейти в учетную запись root без сохранения текущей пользовательской среды (знак "-").

Обычно, использование команды sudo предпочтительнее, чем использование su и, при дополнительных настройках системы, позволяет легко отдавать отдельным пользователям только строго необходимые привилегии. Основная часть настроек sudo хранится в файле /etc/sudoers и задает правила, определяющие, какие пользователи, каких компьютеров, какие команды могут выполнять с вводом или без ввода пароля. Администратор системы может даже на какое-то время передать полномочия суперпользователя root любому пользователю, не передавая ему пароль от учетной записи root .

    Начинающих пользователей Linux обычно пугает работа в командной оболочке из-за необходимости набирать слишком длинные строки команд, имен каталогов или файлов. Однако, очень часто в таком наборе нет необходимости. При работе в среде командной оболочки очень удобно использовать режим подстановки имен с помощью клавиши Tab . Например, для получения списка файлов каталога /home/everyone пользователю необходимо набрать команду

ls /home/everyone

Однако, оболочка позволяет обойтись без полного набора пути. Если после набора ls /h нажать клавишу Tab , то в командной строке будет подставлена недостающая часть имени каталога - ome , и в строке ввода отобразится

ls /home/

Аналогично, не нужно набирать полностью оставшуюся часть пути, а только e и Tab . Если существуют частично совпадающие имена файлов или каталогов, то подстановка выполняется только для общей части имени. Если в каталоге /home имеются подкаталоги everyone1 и everyone2 то после нажатия клавиши Tab выполнится подстановка общей части everyone и на экране отобразится список из возможных вариантов ввода - everyone1 и everyone2 . Остается только ввести недостающую часть имени (1 или 2). Тот же прием используется и при наборе команд. Например, если набрать в качестве команды символ e и нажать Tab то отобразится список всех доступных команд, начинающихся с буквы e , если затем набрать символ c и снова нажать Tab , то будет выставлена подстановка имени до echo , или если есть другие варианты - подстановка общей части и возможные варианты имени.

Как управлять выводом на экран.

  Для просмотра текста, ушедшего за пределы видимости экрана используются комбинации клавиш SHIFT и PAGE UP или PAGE DOWN (в зависимости от направления просмотра).
Для приостановки вывода на экран - CTRL-S , отмена приостановки - CTRL-Q

 Для вывода большого объема текста на экран в постраничном режиме используется команда less , в цепочке с основной командой. Объясню на примере. Пусть у нас есть текстовый файл mytxt размером на 10 экранов. Для вывода текста на экран (стандартный вывод) можно воспользоваться командой cat имя файла
cat mytxt

После выполнения этой команды вы увидите быстро промелькнувший текст и последний (десятый) экран вывода. Можно, конечно, воспользоваться комбинациями клавиш SHIFT-PAGEDOUN или SHIFT-PAGEUP для просмотра текста, но существует возможеость воспользоваться и командой less .
cat mytxt | less
Символ | означает объединение в цепочку выполнения команды выдачи текста cat и команды управления постраничным выводом less . В результате, после отображения на экране первой страницы текста, вывод будет приостановлен до нажатия
PAGE DOWN
или ENTER (построчное перемещение). Для завершения постраничного вывода нажмите клавишу Q .
  В цепочки можно объединять несколько команд. Например, вам понадобилось вывести на экран в постраничном режиме все строки, содержащие слово mail . Для поиска можно воспользоваться командой
grep
Итоговая цепочка из трех команд:
cat mytxt | grep mail | less

  Для большинства дистрибутивов Linux вместо less можно использовать more .

Иногда удобно использовать одновременно несколько терминалов, переключаясь между ними (например, когда необходимо смотреть информацию журнала в одном окне и управлять процессами и настройками в другом).

Для переключения используется комбинация клавиш CTRL - ALT - F1...F6 (от первого терминала до 6-го или далее). Для переключения в графическую оболочку используется одна из комбинаций, которая может отличаться для разных дистрибутивов. Например, CTRL-ALT-F7 .

Чтобы запустить еще один графический сервер на этом же компьютере, используйте команду startx 1 -- :1 . У вас добавится новый графический терминал. Чтобы перейти во второй графический терминал, нажмите Alt+F8 ., а чтобы вернуться в первый - Alt+F7 . Таким образом можно открывать до 64 графических терминалов. (startx 2 -- :2 и т.д).

Для завершения сеанса работы в командной оболочке используется команда exit .

    Вы можете создать журнал своей консольной сессии, в котором будет отображено все, что вы вводили с клавиатуры, и все, что выдавалось на экран терминала.
Для этого используется команда

script имя файла журнала

Например:

script /home/user/mysession.log

Чтобы прекратить запись в журнал введите команду exit .

Для просмотра истории ранее введенных команд используются стрелки Вверх/Вниз. При вводе набранной или вызванной из истории команды положение курсора относительно строки ввода значения не имеет.

Кроме того, в домашнем каталоге пользователя, имеется файл истории вводимых команд для данной оболочки, например .bash_history . Для отображения его содержимого на экране можно воспользоваться командой history .

Для просмотра информации в конечной части файлов (например, журналов) используется команда tail :

tail /var/log/mrssages - отобразить последние 10 строк (значение по умолчанию) из файла журнала /var/log/messages.

tail –n 100 /var/log/mrssages - отобразить последние 100 строк из файла журнала /var/log/messages.


Как перезагрузить или выключить компьютер.

  Одно и то же действие в Linux очень часто можно выполнить несколькими способами. Стандартно для перезагрузки или выключения компьютера используется shutdown . Команда имеет много опций, позволяющих выполнить перезагрузку в определенное время, быструю перезагрузку без проверки файловой системы, имитировать и отменять уже запущенный (ждущий своего времени) процесс перезагрузки.

Полный список опций можно получить по shutdown --help

Для немедленной перезагрузки (restart) команда будет выглядеть так:
shutdown -r now
  Для выключения питания (halt):
shutdown -h now

В большинстве дистрибутивов можно использовать короткие команды:
- выключение

Можно также воспользоваться изменением уровня запуска системы командой init , позволяющей управлять запуском и завершением процессов в системе с использованием скриптов, хранящихся в /etc/inittab. Уровень 0 - выключение, уровень 6 - перезагрузка. Соответственно
для выключения:
init 0

Для перезагрузки:
init 6

Команду init можно использовать для изменения уровней запуска системы.
Уровни:
1 - Однопользовательский режим. Доступ разрешен пользователю root.
2 - Многопользовательский режим без поддержки сетевых функций.
3 - С поддержкой сети.
4 - Зарезервировано.
5 - С использованием графической оболочки.

    Если вам нужно завершить графическую оболочку (например, когда инсталляция некоторых приложений требует ее закрытия) введите:

init 3

    Графическая оболочка закроется, и система перейдет на уровень запуска 3. Для возврата на уровень 5 введите:

init 5

    Уровень запуска системы по умолчанию определяется значением initdefault из файла /etc/inittab. Для запуска системы с поддержкой графической оболочки она выглядит так:

Id:5:initdefault:

Если 5 заменить на 3, то графическая оболочка при старте системы запускаться не будет.

Все выше сказанное относится к системам инициализации SysV (SystemV), которая много лет использовалась во всех дистрибутивах Linux для загрузки рабочей среды с помощью скриптов init . Однако, начиная с 2012г, наметился постепенный переход на systemd новую систему инициализации, изначально разработанную для дистрибутива Fedora, начиная с Fedora 148 . Попросту говоря, systemd - это демон инициализации других демонов в Linux, пришедший на замену используемому ранее скрипту инициализации (/sbin/init). Главная его особенность - распараллеливание запуска служб в процессе загрузки системы, что позволяет существенно ускорить запуск операционной системы. Реализация systemd значительно отличается не только логикой, но и принципами управления процессом запуска, набором программных модулей и конфигурационных файлов. Файла /etc/initd больше нет, и для определения уровня запуска в systemd используются символические ссылки, например:

Для состояния init 3
ln -sf /lib/systemd/system/multi-user.target /etc/systemd/system/default.target

Для состояния init 5
ln -sf /lib/systemd/system/graphical.target /etc/systemd/system/default.target

Команды init N в дистрибутивах с использованием systemd пока поддерживаются, но очевидно, что ее время заканчивается.


Управление процессами в Linux.

    Посмотреть список процессов в Linux можно с помощью команды ps . Если ее запустить без всяких параметров, то она выдает список процессов, запущенных в текущем сеансе пользователя. Полный список опций можно получить стандартно - выполнив

Ps --help

Примеры использования:

  • Список всех процессов, запущенных в системе:
    ps -e - выдаст список процессов с идентификаторами (PID) и их именами
    или:
    ps -eF - выдаст тот же список процессов, но с полной строкой запуска
  • список задач, порожденных пользователем user:
    ps -U user
  • список задач, связанных с текущим терминалом:
    ps -T
  • список задач, связанных с терминалом N:
    ps t ttyN
  • Если список задач большой, а нас интересует состояние одной или нескольких задач, можно воспользоваться grep:
    ps -U root | grep ppp - выдать список задач, содержащих "ppp" в имени

        Для получения сведений об использовании ресурсов компьютера можно воспользоваться командой top

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

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

  • s или d - изменить интервал обновления окна.
  • z - цветное/черно-белое отображение
  • n или # - количество отображаемых процессов
  • Можно отсортировать список процессов по использованию ресурсов процессора (P ), памяти (M ), времени выполнения (T ) и т.п.

        В среде утилиты top также существуют подкоманды, которые позволяют управлять процессами в интерактивном режиме:

  • k - снять (kill) задачу. По этой команде будет запрошен идентификатор процесса (PID), после ввода которого, процесс будет завершен.
  • r - изменить текущий приоритет задачи (renice). Как и при выполнении предыдущей команды, будет запрошен PID, и затем, новое значение приоритета (отображается в колонке NI). Диапазон значений приоритетов - от минус 20 (наивысший) до плюс 19. Отрицательные значения и 0 может устанавливать только пользователь root.
        Для выхода из top нажмите q


    Команда kill

        Эти же действия (принудительное завершение процесса и изменение его приоритета) можно выполнить и без команды top.

        Процессы в Linux имеют возможность обмениваться так называемыми "сигналами" с ядром и другими процессами. При получении сигнала процессом, управление передается подпрограмме его обработки или ядру, если такой подпрограммы не существует. В Linux имеется команда kill, которая позволяет послать заданному процессу любой сигнал. Список сигналов можно получить по команде:
    kill -l
    В результате выполнения этой команды вы увидите список номеров и названий сигналов. Для того, чтобы послать определенный сигнал выбранному процессу, нужно ввести:
    kill номер PID выбранного процесса
    Например, нам нужно завершить работу приложения Midnight Commander (mc).

  • Определим идентификатор процесса mc:
    ps -e | grep mc
    Пусть PID= 11597.
  • Посылаем сигнал SIGQUIT (номер 3):
    kill -3 11597
    После чего процесс mc обработает сигнал GIGQUIT и выполнит завершение работы. Однако, если mc "завис", то, естественно, завершиться он не сможет, поскольку подпрограмма обработки сигнала SIGQUIT не получит управления. В таких случаях используется сигнал под номером 9 (SIGKILL), обрабатываемый ядром операционной системы, и принудительно завершающий указанный процесс:
    kill -9 11597

    Если в команде kill номер сигнала не задан, то используется значение SIGKILL, т.е предыдущую команду можно было ввести как kill PID:
    kill 11597

        При завершении процесса завершаются и порожденные им процессы.

        Для завершения процесса по его имени используется команда killall:
    killall mc - завершить процесс, в имени которого есть "mc"
    killall -u user - завершить процессы, порожденные пользователем user


    Изменение приоритетов - команды nice и renice

        Для изменения приоритета процессов используются команды nice и renice. При запуске процесса, его приоритет задается значением родительского процесса, например, терминала xterm или командной оболочки (shell) . Команда nice позволяет запустить процесс с приоритетом, равным сумме родительского (например 8) и числа, задаваемого в качестве опции команды nice:
    nice - команда
    nice -4 mc - запустит mc с приоритетом = 8+4=12

    Команда renice используется для изменения приоритета уже запущенного процесса:
    renice -p PID
    renice 4 -p 11597 - установить значение приоритета для процесса mc (PID=11597) равным 4.
    После выполнения, renice выдаст строку результата:
    11597: old priority 12, new priority 4 - старый приоритет 12, новый приоритет 4
    Задание нулевого и отрицательного числа приоритета возможно только с правами root.

    Перечень наиболее часто используемых команд:

    Команды для работы с файлами и каталогами:

    pwd – отобразить путь текущего каталога
    cd – перейти в указанный каталог
    ls – отобразить список файлов каталога, с ключом -l показывает дополнительные сведения о файлах.
    cp – копирование файлов/папок
    mv – перемещение файлов/папок
    mkdir – создать папку
    rm – удалить файлы/папки, с ключом -r удаляет и все вложенные папки, с ключом -f - удаляет открытые файлы или каталоги
    rmdir – удаление пустой папки
    chmod – изменить права доступа к файлу
    chown - сменить владельца файла или каталога
    find - найти файл. Задается исходный путь для поиска и шаблон поиска, find / -name .X* - искать от корневого каталога файлы, содержащие в имени символы .X
    which - отобразить полный путь исполняемого файла, доступного в данной оболочке, например which ifconfig
    touch - изменить временные отметки файла. Удобно использовать для создания пустых файлов – touch myfile создаст пустой файл myfile .

    Системные команды

    Эти команды обычно используется от имени суперпользователя (с командой sudo).

    – выключение компьютера
    reset – очищает окно терминала
    passwd – сменить свой пароль, а суперпользователю - поменять пароль любого пользователя
    users - отобразить список пользователей, вошедших в систему.
    yum - установка, удаление или обновление программного обеспечения в дистрибутивах Fedora, RedHat и т.п.
    dpkg - установка, удаление или обновление программного обеспечения в дистрибутивах Debian, Ubuntu и т.п.
    apt-get - установка, удаление или обновление программного обеспечения в дистрибутивах на основе Debian (Ubuntu, Mint и т.п.)

    Управление процессами

    ps – отобразить список текущих активных процессов
    lsof - отобразить список открытых файлов процесса или пользователя
    strace - отобразить список системных вызовов
    last - отобразить историю перезагрузок и регистраций пользователей в системе
    kill – послать сигнал процессу, обычно используется для принудительного завершения работы процесса.
    killall – завершение работы всех процессов, имена которых заданы параметром командной строки
    top – отображение списка текущих процессов и интерактивное управление ими.

    Сетевые команды

    ifconfig – конфигурация сетевых интерфейсов
    route - таблица маршрутизации
    ifup / ifdown - включить /выключить сетевой интерфейс
    ip - просмотр или изменение параметров конфигурации протокола IP
    netstat - отобразить состояние сетевых соединений
    arp, ping, nslookup, traceroute - наиболее часто используемые команды сетевой диагностики.

    Введение в терминал

    Среди всех элементов системы Linux самым важным, пожалуй, является командная строка (bash -B ourne A gain Sh ell) или Терминал :

    Начинающим пользователям кажется, что они ни когда не прибегнут к помощи командной строки, а некоторые её просто боятся. Однако чем больший опыт они приобретают, тем чаще обращаются к терминалу.
    С помощью командной строки можно выполнять действия, которые были бы не мыслимы при работе с графическим пользовательским интерфейсом. Оказывается, что многие действия гораздо быстрее и эффективнее выполнять, пользуясь командной строкой.
    Командная строка используется во всех OS : Windows, MacOS X и Linux .
    Многие начинающие пользователи могут возразить: "Так ведь в Windows мы не пользуемся командной строкой" . И будут не правы , т.к. все действия по установке/удалению программ или другие системные изменения незримо протекают в терминале, не говоря уже о системных администраторах, которые очень часто прибегают к услугам командной строки.
    Изначально окно терминала было отображено в первых мониторах компьютеров, ещё до того, как появились графические программы (GUI) и пока в обозримом будущем не видно чтобы его могло заменить что-то другое.

    Терминальные команды


    В системе Linux используются тысячи команд, которые совсем не обязательно знать простому пользователю, но иметь общее представление и знать некоторые, часто используемые, просто необходимо, т.к. волей - неволей вы с ними столкнётесь при настройке системы или установке нужной программы, отсутствующей в Центре приложений и т.д.
    Я использую системы Ubuntu/Linux Mint и на их основе будут задействованы примеры, но думаю, что кроме команды sudo , остальное применительно и к другим системам Linux .
    В Ubuntu/Linux Mint окно терминала открывается нажатием клавиш Ctrl+Alt+T .

    Обновление программ

    Многие пользователи, наверное, выполняли не раз такие команды в терминале:

    sudo apt-get update
    sudo apt-get upgrade

    Давайте разберём их более детально, чтобы понять что они собой представляют.
    Прежде всего хотелось бы заметить, что все команды написаны на английском языке и не просто "от фонаря", а в каждой заложен определённый смысл для её применения. И то что командная строка Linux очень чувствительна к регистру. Иными словами, данные команды написаны в нижнем регистре (строчными буквами), но если вы введёте идентичную команду, но в верхнем регистре (прописными буквами), то выполнить её не получится. Это нужно запомнить.

    Команда sudo , это по сути аббривеатура, состоящая из следующих слов: s uper u ser do , что в переводе с английского буквально означает следующее: s uper u ser - суперпользователь (администратор), do - делает . Т.е. когда данная команда присутствует в общей команде, то командной строке даётся понять, что выполнять её может суперпользователь (администратор), тот пользователь, который при установке системы был зарегистрирован и ввёл свой пароль:

    Команда apt-get , которая следует после sudo ипробела, состоит из двух слов через чёрточку, которая объединяет эти два слова в одну команду и буквально означает в переводе: склонен-выполнить .

    Команда update , в переводе - обновление .

    Итак sudo apt-get update в преводе буквально - суперпользователь склонен-выполнить обновление .

    После ввода данной команды и нажатия клавиши Enter , терминал запрашивает пароль. После ввода пароля и вновь нажатия Enter , начнётся процесс обновления списка пакетов.

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

    Команда sudo apt-get upgrade очень похожа на предыдущую команду, где upgrade - модернизировать, усовершенствовать (систему). Данная команда, как правило выполняется после команды обновления. После того как команда выполнена, она выдаёт в терминале возможные пакеты для установки, т.е. модернизации, усовершенствования системы. Пользователю остаётся согласиться или нет с установкой данных пакетов.

    Установка, удаление программ

    sudo apt-get install chromium-browser

    sudo apt-get remove chromium-browser

    Как видно команды очень похожи между собой, за исключением одного слова выделенного красным. В первой команде install - установить chromium-browser , а во второй remove - удалить chromium-browser

    Таким образом устанавливаются и удаляются приложения (программы) и др. файлы в системе.
    Если вы нашли на одном из сайтов похожую команду на установку программы и установили её, но программа вам не подошла и вы хотите удалить, достаточно в команде на установку изменить install на remove и выполнить в терминале, как программа удалится.

    Установка программ из стороннего репозитория

    Теперь рассмотрим команды на установку и удаление программ с добавлением стороннего репозитория (пример):

    sudo add -apt-repository ppa:upubuntu-com/gtk+3.6
    sudo apt-get update
    sudo apt-get install flatstudiodark-gtk

    Прежде всего давайте выясним зачем подключать сторонний репозиторий? Репозиторий, это хранилище файлов на сайте разработчика. В данном случае, третьей командой мы хотим установить тему оформления, но её нет в Центре приложений , а значит нам нужно прежде подключить хранилище (репозиторий) с темой (первая команда), где add - добавить , ppa:upubuntu-com/gtk+3.6 - название репозитория, затем второй командой обновить список пакетов и уже третьей - установить сам пакет с темой.

    Если данное приложение (в конкретном случае тема оформления) вам не понравилось и вы решили удалить его, то вы можете изменить команды на установку, чтобы они выглядели командами на удаление:

    sudo apt-get remove flatstudiodark-gtk
    sudo add-apt-repository --remove ppa:upubuntu-com/gtk+3.6
    sudo apt-get update

    Прежде нужно выполнить команду на удаление пакета с программой, где меняем install на remove , затем удаляем хранилище (репозиторий), добавив в команду --remove - удалить , т.к. хранилище теперь без надобности и обновляем систему последней командой.

    Запуск графических программ с правами администратора.

    Допустим, нам необходимо запустить файловый менеджер Nautilus с правами администратора, чтобы через графический интерфейс как-то изменить содержимое системных папок. Для этого необходимо ввести следующую команду:

    gksudo nautilus

    gksu nautilus

    Где ввод пароля, в данном случае, будет происходить в графическом окне, а не в терминале.

    Но вы можете указать дополнительно необходимый путь в команде, непосредственно к нужной папке:

    gksu nautilus /usr/share/themes

    В данной команде косой чертой (/) - слешем указывается терминалу, что нужно перейти в следующую за ним папку.

    Запуск программ из терминала командой

    В системе Linux вы можете запустить любую программу из терминала установленную в вашей системе, главное знать её правильное название. Многие программы состоят из одного слова-названия, а некоторые из двух или трёх слов. Например: Nautilus; Ubuntu Tweak; Gnome Tweak Tool . Если мы введём в терминал название команд так, как они написаны, то не сможем открыть ни одно из приложений. Ещё раз повторюсь, что терминал очень чувствителен к регистру, т.е. команду нужно вводить только в нижнем регистре (строчными буквами) и обязательно монолитной, через чёрточку, если она состоит из нескольких слов(примеры):

    nautilus

    ubuntu-tweak

    gnome-tweak-tool

    Таким образом вы сможете открыть приложения, но если вы закроете терминал, то закроется и программа вместе с ним. Чтобы этого не происходило, необходимо дописать команду exit на закрытие терминала после открытия программы через пробелы и разделительный знак & :

    nautilus & exit

    ubuntu-tweak & exit

    gnome-tweak-tool & exit

    Через разделительный знак & можно включать несколько команд на выполнение (открытие), объединив их в одну команду:

    nautilus & ubuntu-tweak & gnome-tweak-tool & exit

    Создание каталогов (папок) и размещение в них файлов

    Многие из вас устанавливали флажки для отображения в трее раскладки клавиатуры посредством терминальных команд:

    mkdir ~/.icons

    mkdir ~/.icons/flags

    cd ~/.icons/flags

    Теперь давайте детально разберём каждую из приведённых команд.

    Командаmkdir ~/.icons - создаёт скрытый каталог (папку) в Домашней папке под названием icons .

    mk - сокращённо от make - сделать, создать . dir - сокращённо directoria - каталог, папка .~ - знак тильда всегда обозначает Домашнюю папку пользователя. / - обозначение папки. .icons - обозначает название создаваемой папки, а точка впереди всегда указывает на то, что данная папка скрытая.

    Команда mkdir ~/.icons/flags также создаёт папку под названием /flags в скрытойпапке /.icons и Домашней папке - ~ .

    Команда cd ~/.icons/flags делает переход в папку /flags , которая в свою очередь находится в Домашней папке - ~ и в скрытой папке /.icons .

    cd - c - обозначение перехода, d - directoria - каталог (папка) .

    Команда wget http://suservice.net/icons/flags2/{ru,us}.png загружает файлы флажков впапку /flags , в которую мы перешли на предыдущем этапе.
    wget - сокращённо от w - web - сеть , get - получать , т.е получить файлы из сети и ставится всегда перед URL адресом через пробел. В данном случае перед http://suservice.net/icons/flags2/{ru,us}.png , с которого и загружаются файлы с флажками.

    Убить процесс командой

    Прежде всего давайте выясним, что такое процесс?

    При запуске системы запускается множество процессов, о которых пользователь зачастую даже и не подозревает. Но многие процессы мы видим на экране монитора, сами их запускаем и управляем ими, это открытые программы. Лучше всего нам об этом раскажет программа top , запущенная в терминале:

    Иногда так случается, что какой-то процесс в системе дал сбой или попросту "зависла" какая-то программа и кнопка закрытия не реагирует, либо кнонопка закрытия отсутствует вовсе (виджет conky). На этот случай в Linux есть очень хорошая команда - "убийца":

    p - сокращённо от process (процесс), kill - убивать .
    Но сама по себе эта команда не работает, ей нужен аргумент, т.е. либо номер процесса, который отображён в колонке PID (см. снимок терминала) после выполнения команды top , либо название процесса в колонке COMMAND . Не переживайте, команда не убьёт саму программу, она только остановит процесс выполнения. Если это графическая программа, то она просто закроется. Для эксперимента я выбрал самый безобидный процесс, который при закрытии ни чему не повредит. Итак выполните следующую команду:

    pkill gnome-terminal

    Окно терминала исчезло, т.е. был "убит" (остановлен) процесс, отображающий программу на экране монитора.

    xkill - убивает видимый процесс и работает сама по себе, т.е. после выполнения команды кликните образовавшимся крестиком вместо курсора на любой видимой программе (окне), как оно закроется.

    Заключение

    Мною были подобраны команды для разбора, с которыми обычно сталкивается простой пользователь при настройке системы.
    Если кто-то хочет глубже узнать о терминальных командах, я вам рекомендую скачать бесплатный справочник Скотта Граннемана "Linux. Карманный справочник" . Просто наберите в Google Скотт Граннеман и дайте поиск.

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


    Вообще, консольных утилит существует превеликое множество, но здесь мы вкратце, в качестве примера, рассмотрим лишь две из них, но очень важные и часто используемые. Утилита Apt-get , предназначенная для работы с программными пакетами. Для тех же, кто совершенно не признает консоль, может воспользоваться замечательной графической оболочкой для Apt-get , под названием Synaptic (имеется в официальном репозитории).

    Как пользоваться утилитой?

    //основная формула

    sudo apt-get команда

    //в качестве примера обновим все пакеты

    sudo apt-get upgrade


    Основные команды apt-get при работе с пакетами.

    apt-get update //обновление информации о пакетах из репозитариев
    apt-get upgrade //обновление всех пакетов
    apt-get dist-upgrade //обновление системы в целом
    apt-get clean //чистит локальное хранилище, кроме файлов кэша
    apt-get autoclean //тоже, что и clean , с удален. кэш-файлов
    apt-get check //обновляет кэш и провер. неудовл. зависимости
    apt-get autoremove //удаление ранее скачаных, но ненужных пакетов
    apt-get remove //удаление пакета с сохран. конфигурац. файлов
    apt-get purge //удаление пакета со всеми зависимостями
    apt-get install //установка пакета
    apt-get build-dep //устанавл. все для сборки исходных пакетов
    apt-get source //скачивает пакеты с исходниками


    Параметры:

    -h, --help //справка
    -q, --quiet //скрыть индикатор процесса
    -qq //не показывать ничего кроме ошибок
    -d, --download-only //только получить пакеты и выйти
    -s, --simulate //выполнить симуляцию событий
    -y, --yes //автом. отвечать "Да" на все вопросы
    --reinstall //переустановить пакеты
    -f, --fix-broken //исправить нарушенные зависимости
    -m, --ignore-missing //игнорировать отсутствующие пакеты
    -u, --show-upgraded //показать обновленные пакеты
    --no-upgrade //не производить обновления пакетов
    -b, --compile, --build //собрать пакет после получения
    -D //при удалении, удалить зависящие компоненты
    -V //подробно показывать номера версий пакетов
    --no-remove //если пакеты отмеч. к удален., то apt-get выкл.
    --force-yes //принудительное выполнение заданной операции


    Прикол.

    apt-get moo

    Должны увидеть корову, которая спрашивает: "Вы мычали сегодня?"

    Утилита "aptitude".

    Рассмотрим еще одну очень хорошую утилиту под названием "aptitude ", фактически это тоже самое, что и "apt-get ", но считается лучше, а также имеет псевдо-графический интерфейс. Принцип работы точно такой же, только вместо "apt-get ", нужно вводить значение "aptitude ". Сначала установим саму утилиту:

    sudo apt-get aptitude

    Теперь, если набрать: aptitude , то попадете в интерфейс программы.

    Рассмотрим некоторые команды:

    // Установка пакета.

    sudo aptitude пакет1 пакет2 пакет3

    Как видите, устанавливать можно сразу неограниченное количество пакетов одновременно. Сколько бы вы их не устанавливали, aptitude автоматически разрешит все зависимости, вам останется только согласится (y) и нажать(enter) . Так же, по аналогии можно удалять пакеты:

    sudo aptitude remove имя_пакета1
    или
    sudo aptitude purge имя_пакета1

    Первая команда удаляет только файлы пакета, не трогая настройки, вторая удаляет полностью все. Посмотреть описание пакета можно так:

    aptitude show имя_пакета

    Вообщем, эта утилита абсолютный аналог "apt-get ", но при установке и удалении пакетов, желательно использовать ее, нежели "apt-get ". Во всяком случае, на официальном сайте Ubuntu дают именно такие рекомендации.

    Другие команды консоли.

    Список команд, относящихся к информации.

    hostname //сетевое имя машины
    whoami //имя текущего пользователя
    uname -m //покажет архитектуру машины
    uname -r //версия ядра
    sudo dmidecode -q //информ. об аппарат. обеспечении системы
    cat /proc/cpuinfo //информация о процессоре
    cat /proc/interrupts //прерывания
    cat /proc/meminfo //вся информация о памяти
    cat /proc/swaps //вся информация про swap
    cat /proc/version //версия ядра и другая информация
    cat /proc/net/dev //сетевые интерфейсы и статистика
    cat /proc/mounts //смонтированные устройства
    cat /proc/partitions //доступные разделы
    cat /proc/modules //загруженные модули ядра
    lspci -tv //PCI устройства
    lsusb -tv //USB устройства
    date //текущая дата
    cal //календарь и текущий месяц
    cal 2012 //покажет весь 201х год


    Команды, относящиеся к процессам перезагрузки и выключения.

    shutdown -h now //выключить систему
    init 0 //выключить систему
    telinit 0 //выключить систему
    shutdown -h hours:minutes & //запланировать выключение системы
    shutdown -c //отменить запланированное выключение
    shutdown -r now //перезагрузить систему
    reboot //перезагрузить систему
    logout //завершить сессию


    Операции с файлами и не только...

    cd /home //перейти в домашний каталог
    cd .. //перейти на уровень выше
    cd ../.. //перейти на 2 уровня выше
    cd - //перейти в предыдущий каталог
    pwd //показать путь к текущей директории
    ls
    ls -F //показать файлы и директории
    ls -l //показ. подробности о файлах, директориях
    ls -a //показать скрытые файлы
    mkdir dir1 //создать директорию с именем dir1
    mkdir dir1 dir2 //создать директории dir1 и dir2
    mkdir -p /tmp/dir1/dir2 //создать директорию в указанном месте
    rm -f file1 //удалить файл с именем file1
    rmdir dir1 //удалить директорию с именем dir1
    rm -rf dir1 //удалит директорию dir1 и всё её содержимое
    rm -rf dir1 dir2 //удалить директории dir1 \dir2 и содержимое
    mv dir1 new_dir //переименовать / переместить директорию
    cp //копирование файлов/папок
    ln -s //cоздать символическую ссылку
    chmod //присвоение прав файлам
    find / -user user1 //искать файлы, директ. с user1 find /home/user1 -name \*.bin //искать файлы .bin в / home / user1 find /usr/bin -type f -atime +100 //иск. бин. файлы, незап. 100 дн. find /usr/bin -type f -mtime -10 //иск. файлы созд./изм. за 10 дн. find / -name \*.deb -exec chmod 755 "{}" \; //иск. файлы (.deb) и измен. права locate \*.ps //найти файлы с расширением .ps whereis halt //показать путь к программе halt which halt //показ. полн. путь к програм. halt


    На первый взгляд, все это может выглядеть несколько устрашающе, но это только на первый взгляд. Не стоит сразу бросаться в панику и сразу же, возвращаться к Windows (у). Современные дистрибутивы Linux , а Ubuntu в особенности, вполне позволяет вам обходиться без командной строки. Тем не менее, командная строка, в отдельных случаях намного бывает удобней, чем графический интерфейс. Также, совсем необязательно заучивать все эти команды наизусть, достаточно будет создать текстовый файл, скопировать в него все содержимое и держать его поблизости, как шпаргалку, которой при необходимости можно воспользоваться.

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

    Все новички Linux уже, наверное, слышали про терминал, или как его еще называют командную строку. Ведь присутствие и сложность терминала - это один из основных аргументов оппонентов Linux. Возможно, вы уже сталкивались с командной строкой в Windows на практике и уже знаете что это такое.

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

    Терминал Linux намного интереснее, чем командная строка Windows и в этой статье будет подробно рассмотрена работа в терминале Linux для начинающих, а также что такое терминал Linux и собственно, что он из себя представляет.

    Применение терминала началось очень давно. Еще до того как была создана DOS и не существовало никакого графического интерфейса. В далеких восьмидесятых годах операционная система Unix только начинала развиваться. Пользователям нужно каким-то образом взаимодействовать с системой и самый простой способ - это использование команд. Вы вводите команду, система вам возвращает ответ.

    С тех пор, такой способ ввода использовался во многих системах, в том числе DOS и OS/2 от Apple, пока не был придуман графический интерфейс. Затем текстовый режим терминала был успешно вытеснен, но его до сих пор продолжают использовать там, где это нужно.

    Выше, под терминалом мы понимали то место, где можно вводить команды и получать на них ответ от компьютера. Это может быть текстовый режим Linux или же открытое в графическом режиме окно терминала. В Linux часто встречаются слова: консоль, терминал, командная строка, командная оболочка, tty, эмулятор терминала. Все они относятся к терминалу, но означают немного разные вещи. Перед тем как перейти дальше давайте разберемся с терминами, чтобы называть все своими именами.

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

    Консоль - это физическое оборудование для управления сервером. Когда к серверу нет доступа из сети, для управления им можно использовать только консоль.

    TTY - это файл устройства, который создается ядром и предоставляет доступ к терминалу для программ. Это могут быть файлы /dev/tty для постоянных текстовых терминалов и /dev/pts/* для эмуляторов терминалов. Вы можете выполнить команду или отправить сообщение просто записав данные в этот файл, и также получить результат, прочитав данные из этого файла.

    Эмулятор терминала - это графическая программа, которая предоставляет вам доступ к tty или pts терминалу. Например, Gnome Terminal, Konsole, Terminix, Xterm и многие другие.

    Командная оболочка - устройство tty занимается только передачей и приемом данных, но все эти данные должен еще кто-то обрабатывать, выполнять команды, интерпретировать их синтаксис. Командных оболочек достаточно много, это bash, sh, zsh, ksh и другие, но чаще всего применяется Bash.

    Ну и командная строка - это то место куда вы будете вводить свои команды, приглашение терминала для ввода.

    Теперь, когда мы разобрались что такое терминал Linux и знаем все основные принципы, перейдем к практике работы с ним.

    Как открыть терминал Linux?

    Есть несколько способов получить доступ к терминалу. Ваша система инициализации по умолчанию создает 12 виртуальных терминалов. В одном из них - обычно седьмом, запущена ваша графическая оболочка, но все другие могут быть свободно использованы. Для переключения между терминалами можно использовать сочетания Ctrl+Alt+F1-F12. Для авторизации нужно будет ввести логин и пароль.

    Это текстовые терминалы без графического интерфейса, в них может быть не совсем удобно работать, но, зато такие терминалы будут полезны, если графический интерфейс не работает.

    Второй способ позволяет открыть виртуальный терминал прямо в графическом интерфейсе с помощью эмулятора терминала. Эмулятор терминала linux работает с файлами в каталоге /dev/pts/* и еще называется псевдотерминалом, потому что не использует tty.

    В Ubuntu вы можете запустить терминал linux нажав сочетание клавиш Ctrl+Alt+T :

    Также его можно найти в меню приложений Dash:

    Как видите, открыть командную строку в linux очень просто.

    Выполнение команд в терминале

    Рассмотрим более подробно терминал Linux для начинающих. Как я уже говорил, терминал и файлы устройств tty отвечают только за передачу данных. За обработку команд отвечает командная оболочка, которой и передаются полученные от пользователя данные.

    Вы можете набрать что-либо и убедиться, что это работает:

    Чтобы выполнить команду достаточно написать ее и нажать Enter.

    Более того, командная оболочка Bash поддерживает автодополнение, поэтому вы можете написать половину команды, нажать TAB и если на такие символы начинается только одна команда, то она будет автоматически дополнена, если же нет, то вы можете нажать два раза TAB, чтобы посмотреть возможные варианты.

    Точно такая же схема работает для путей к файлам и параметров команд:

    В Windows вы о таком и мечтать не могли. Чтобы выполнить команду можно указать имя ее исполняемого файла или , относительно корневой или любой другой папки. Важно заметить, что командная оболочка Linux, в отличие от Windows, чувствительна к регистру, а поэтому будьте внимательны при вводе команд и их параметров.

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

    Экземпляр запущенной команды называется процесс. Когда в терминале Linux выполняется одна команда нам нужно подождать ее завершения, чтобы выполнить следующую.

    Команды могут выполняться без параметров, что мы видели выше, или же с параметрами, которые позволяют указать данные, с которыми будет работать программа, также есть опции, с помощью которых можно настроить поведение. Большинство стандартных утилит придерживаются такого синтаксиса:

    $ команда опции параметр1 параметр2...

    Опции часто необязательны и уточняют тот или иной аспект работы программы. Они записываются в форме черточка и символ или двойная черточка и слово. Например -o или --output. Приведем пример для команды ls. Без опций и параметров:

    С параметром, указывающим какую папку посмотреть:

    С опцией -l, вывести в виде списка:

    В с опцией и параметром:

    Можно комбинировать две опции:

    В основном, это все, что нужно знать про команды, чтобы продуктивно их использовать. Еще можно было бы рассказать про объединение команд и перенаправление вывода одной команды в другую, но это уже отдельная тема.

    Выводы

    В этой статье была рассмотрена работа в терминале linux для начинающих. Командная строка Linux может показаться сначала очень сложной, но это совсем не так, она намного проще в использовании чем в Windows и позволяет управлять системой более эффективно. Надеюсь, эта статья пролила немного света на эту очень большую тему.

    Об авторе

    Основатель и администратор сайта сайт, увлекаюсь открытым программным обеспечением и операционной системой Linux. В качестве основной ОС сейчас использую Ubuntu. Кроме Linux интересуюсь всем, что связано с информационными технологиями и современной наукой.

    Любому пользователю Линукс просто необходимо овладеть базовыми навыками работы в терминале. Ниже — 15 команд\хаков для комфортной работы с консолью. Независимо от того, новичок вы или профи, уверен, вы найдете для себя полезное среди нижеприведенных советов и рекомендаций.

    1. man

    Начнем с простого, команда man, что означает manual. Если хотите прочитать о какой-либо команде, просто наберите:

    Man

    man - не малоизвестная команда, ее вы найдете в любом учебнике Unix’а, однако я бы хотел обратить ваше внимание на некоторые ее особенности.

    Man ascii

    Путались когда-нибудь, что меньше пико- или фемто-? Пробуйте следующее:

    Man units

    Подобных веселых команд еще много . Есть с чем поразвлечься. (попробуйте xkill). А пока, идем дальше.

    2. cd —

    Если вы случайно сменили директорию, можно просто вернуться в последнюю набрав:

    cd -

    3. sudo !!

    Этот комикс подчеркивает важность команды sudo в Unix. sudo выполняет команду с правами администратора. Если вы набрали команду без sudo, а потом оказалось, что она необходима, наберите просто:

    и она запустится уже с правами рута.

    4. mtr

    mtr - мощный инструмент для диагностики сети. Он совмещает в себе функциональность traceroute и ping.

    Mtr

    5. command

    Опытные пользователи, возможно, знают, что история запущенных команд сохраняется в файле ~/.bash_history.
    Так, чтобы команда не записывалась в историю, просто наберите перед командой пробел. Это может быть полезно при работе с админ правами — или просто если хотите чтоб никто не видел историю Ваших действий.

    6. jot

    jot генерирует текст. Числа, текст, все вместе. Чтобы сгенерировать числа, попробуйте следующее:

    Jot [количество чисел] [начиная с]

    Если пропишете один аргумент, сгенерируются числа от 1 до значения аргумента.

    Чтобы получить случайные:

    Jot -r [количество чисел] [нижний предел] [верхний предел]

    Подробнее читайте или наберите man jot

    7. df

    Довольно простая команда. Показывает свободное пространство на диске (disk free )

    8. pkill

    pkill (или process kill) завершает запущенный процесс. Эта команда особенно полезна, когда приложение не отвечает:

    Pkill

    Веселой/жестокой команда может оказаться, если вы запускаете ее на удаленной машине. Будьте осторожны, можно потерять важные данные. завершив приложение, с данными работающее.

    9. ddate

    Дискордианский календарик

    10. cal

    Старый-добрый Григорианский календарь.

    11. tac

    Вы, возможно, слышали про команду cat . Она имеет ряд утилит для создания, копирования, слияния и отображения текстовых файлов. tac делает то же самое, но в обратном порядке.

    12. w

    Команда w показывает, кто на данный момент вошел в систему, наряду с другой полезной информацией такой, как время работы или нагрузкой процессора.

    13. factor

    factor раскладывает число на множители:

    Factor

    14. yes

    Возвращаемся к веселым командам, yes выводит текст несколько раз:

    Yes

    Используйте ее, чтобы запутать подкравшихся сзади друзей. Внимание, единственный способ остановить ее - CTRL + C (ну, или закрыть терминал)

    15. nl

    nl нумерует строки. Больше всего полезна при использовании ее в качестве аргумента. Давайте взглянем на пару примеров:


    Спасибо за внимание, всего хорошего.

    2016-06-17T19:56:26+00:00 admin C чего начать? Руководства Справочники команд bash,Debian\Ubuntu\Mint,Администрирование,команды,Консоль,Руководства,Системные утилиты,Справочник команд,Хаки

    Любому пользователю Линукс просто необходимо овладеть базовыми навыками работы в терминале. Ниже - 15 команд\хаков для комфортной работы с консолью. Независимо от того, новичок вы или профи, уверен, вы найдете для себя полезное среди нижеприведенных советов и рекомендаций. 1. man Начнем с простого, команда man, что означает manual. Если хотите прочитать...

    [email protected] Administrator Самоучитель LINUX