Как работать терминалом линукс

Содержание
  1. 10 приёмов работы в терминале Linux, о которых мало кто знает
  2. №1. Переход в предыдущую директорию
  3. №2. Повтор последней команды
  4. №3. Многократное выполнение команды до её успешного завершения
  5. №4. Просмотр сведений о ходе передачи файла
  6. №5. Планирование заданий
  7. №6. Вывод данных в виде таблицы
  8. №7. Полезные комбинации клавиш
  9. №8. Сжатие, разбиение и шифрование файлов
  10. №9. Стресс-тест батареи ноутбука
  11. №10. Переименование или перемещение файлов
  12. Итоги
  13. Основы работы с терминалом Linux
  14. Эмулятор терминала
  15. Оболочка Linux
  16. Командная строка
  17. Выполнение команд
  18. Запуск команд без опций и аргументов
  19. Запуск команд с аргументами
  20. Команды с опциями
  21. Команды с опциями и аргументами
  22. Переменные окружения
  23. Просмотр переменных
  24. Значения переменных
  25. Установка значений переменных
  26. 50 основных команд Linux для новичков
  27. Базовые команды для работы с терминалом
  28. Команды для управления правами на файлы и директории
  29. Команды для управления пользователями
  30. Установка, удаление и обновление пакетов
  31. Debian/Ubuntu
  32. Red Hat Linux/CentOS
  33. Команды для навигации и базовой работы с файлами
  34. Команды для отображения базовой информации и управления системой

10 приёмов работы в терминале Linux, о которых мало кто знает

Близкое знакомство с возможностями терминала — один из признаков человека, который хорошо разбирается в Linux. Хотя некоторые вещи запомнить сложно, есть довольно-таки простые, но эффективные приёмы, которые способны повысить качество и скорость работы в терминале. Пожалуй, каждый пользователь Linux рано или поздно обзаводится собственным списком ценных мелочей. Надеемся, некоторых из тех десяти приёмов работы в командной строке Linux, которыми мы хотим с вами поделиться, попадут в ваш личный список полезных команд.

№1. Переход в предыдущую директорию

Все мы используем команду cd .. для перехода в родительскую директорию. А для перехода к предыдущей директории можно использовать команду cd — . Этот приём похож на кнопку «Назад».

Тут мы сначала находились в директории Downloads , затем переместились в директорию Home , и, наконец, снова вернулись в директорию Downloads .

№2. Повтор последней команды

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

Этот приём весьма полезен именно в ситуациях, подобных рассмотренной, когда команду, введённую ранее, надо выполнить с правами суперпользователя.

№3. Многократное выполнение команды до её успешного завершения

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

Команда в этом примере будет повторяться до тех пор, пока не будет найден файл run.sh и его содержимое не будет выведено на экран.

№4. Просмотр сведений о ходе передачи файла

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

№5. Планирование заданий

Планировать задания в Linux можно с помощью команды at :

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

№6. Вывод данных в виде таблицы

Вызвав команду ls , или что-нибудь ещё, выводящее данные на экран, можно столкнуться с длинными списками, для просмотра которых требуется продолжительный скроллинг. То, что выводится на экран, легко можно организовать в виде таблицы с помощью команды column -t . Например:

Вот как выглядит то, что у нас получилось.


Вывод команды, организованный в виде таблицы

№7. Полезные комбинации клавиш

Команда clear очищает экран терминала. Комбинация клавиш Ctrl + L позволяет добиться того же самого быстрее.

Комбинация клавиш Alt + . позволяет перемещаться по ранее введённым командам. Комбинация клавиш Ctrl + U убирает из строки всё то, что уже в неё введено. Например, можете это попробовать для очистки введённого в командной строке пароля.

Для инкрементального обратного поиска по истории команд используйте комбинацию клавиш Ctrl + R .

№8. Сжатие, разбиение и шифрование файлов

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

№9. Стресс-тест батареи ноутбука

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

№10. Переименование или перемещение файлов

Если вам нужно быстро переименовать или переместить множество файлов с суффиксами — попробуйте команду следующего вида:

Вот как её можно расшифровать:

Ниже приведён пример переименования файлов с определённым расширением в пакетном режиме:

Итоги

Мы рассказали о нескольких приёмах взаимодействия с командной строкой Linux. Надеемся, вы нашли здесь то, что поможет вам упростить и ускорить повседневную работу.

Уважаемые читатели! Что вы добавили бы к нашему списку неочевидных полезностей командной строки Linux?

Источник

Основы работы с терминалом Linux

В данной статье речь пойдёт о терминале и командах Linux. Терминал, или командная строка – это стандартный способ взаимодействия с сервером Linux.

Примечание: Для выполнения примеров, приведённых в статье, нужен сервер Linux. Данное руководство выполнено на сервере Ubuntu 14.04, но подходит для любого другого современного дистрибутива Linux.

Эмулятор терминала

Эмулятор терминала – это программа, которая позволяет использовать терминал в графической среде. Большинство людей используют ОС с графическим пользовательским интерфейсом (GUI), потому эмулятор терминала необходим многим пользователям Linux-сервера.

Наиболее популярными эмуляторами являются:

  • Mac OS X: iTerm 2
  • Windows: PuTTY
  • Linux: Terminal, KDE Konsole, XTerm

Каждый эмулятор терминала имеет свой индивидуальный набор функций.

Оболочка Linux

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

Примечание: Данное руководство выполнено в оболочке bash, которая является оболочкой по умолчанию большинства дистрибутивов Linux.

Командная строка

Впервые входя на сервер, вы видите Message of the Day (MOTD), сообщение, которое включает в себя различную информацию, например, версию дистрибутива Linux, установленную на сервер. После этого вы получаете доступ к командной строке (или к оболочке командной строки), с помощью которой можно запускать команды.

Читайте также:  Windows create dump file on crash

Стандартная командная строка Ubuntu 14.04 выглядит так:

Она содержит следующие данные:

  • 8host – имя текущего пользователя;
  • webapp – имя хоста;

– текущий каталог (в bash символ тильды соответствует домашнему каталогу, путь к нему – /home/8host).

  • $ – символ, который означает конец командной строки, после которого появится ввод пользователя с клавиатуры.
  • Ниже приведён пример командной строки пользователя root, который находится в каталоге /var/log.

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

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

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

    Каждая запущенная команда является отдельным процессом. Если команда выполняется на переднем плане (по умолчанию все команды выполняются именно так), то пользователь не сможет работать с терминалом, пока команда не будет выполнена.

    Важно отметить, что в системе Linux почти всегда учитывается регистр, включая имена файлов и каталогов, команды, аргументы и опции. Если что-то не работает, проверьте написание команды.

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

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

    Чтобы запустить команду без аргументов и опций, просто введите саму команду и нажмите RETURN.

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

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

    Многие команды принимают аргументы, или параметры, которые могут влиять на их поведение. К примеру, в качестве аргумента команды cdчасто используется имя каталога, в который нужно перейти. Например, чтобы перейти в /usr/bin, нужно ввести:

    Сначала нужно ввести саму команду, а после неё указать аргументы. Перейдя в новый каталог, путь в командной строке изменится.

    Команды с опциями

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

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

    Для примера рассмотрим некоторые опции команды ls:

    • -l: включает подробный листинг, который предоставляет дополнительные детали (права доступа, права собственности, размер файлов и т.п.).
    • -a: выводит полный список файлов, которые хранятся в каталоге (включая скрытые файлы).

    Флаг -l команде ls передаётся так:

    Такая команда выведет много дополнительной информации о файлах.

    Как уже говорилось, опции можно группировать. Например, вы можете передать команде ls флаги -l и –a одновременно. Для этого можно запустить:

    Но лучше скомбинировать их так:

    Теперь команда выведет подробные данные обо всех файлах, включая скрытые.

    Команды с опциями и аргументами

    Опции и аргументы почти всегда можно комбинировать, запуская команду.

    К примеру, чтобы просмотреть полное содержимое каталога /home, можно использовать:

    Такая команда вернёт подробные данные о каждом файле заданного каталога.

    Переменные окружения

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

    Просмотр переменных

    Чтобы просмотреть все переменные окружения, установленные для определённой сессии терминала, используйте env:

    Вывод этой команды обычно очень объёмен. Найдите в нём запись PATH:

    Переменная окружения PATH – это разделённый двоеточиями список каталогов, в которых оболочка будет искать исполняемые программы или сценарии при выполнении команды. Например, команда env находится в каталоге /usr/bin, но при выполнении команды не нужно указывать путь к ней, поскольку он уже указан в переменной PATH.

    Значения переменных

    Чтобы извлечь значение переменной, укажите перед её именем $.

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

    Чтобы узнать значение переменной HOME (по умолчанию это домашний каталог текущего пользователя), попробуйте перейти в домашний каталог:

    Если запрашиваемая переменная не установлена, терминал вернёт пустую строку.

    Установка значений переменных

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

    Обратите внимание, что если вы устанавливаете существующую переменную, её исходное значение будет перезаписано. Если переменная не существует, она будет создана.

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

    Также на существующие переменные можно ссылаться при установке переменной. К примеру, если вы установили приложение в /opt/app/bin, вы можете добавить этот каталог в конец переменной PATH с помощью такой команды:

    Теперь запросите значение переменной PATH:

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

    Примечание: Больше о работе с переменными можно узнать в руководстве «Чтение и установка переменных среды и оболочки на сервере Linux».

    Источник

    50 основных команд Linux для новичков

    Терминал и текстовые команды — главный способ управления операционной системой Linux. Особенно, если речь идет о сервере – на него редко ставят графический интерфейс, и вся работа выполняется исключительно через командную строку. Поэтому любому администратору важно знать хотя бы с десяток ключевых команд для терминала Линукс, нужных для навигации в системе и базового управления файлами. В этом материале мы их как раз разберем.

    Базовые команды для работы с терминалом

    То, что поможет при работе с консолью в целом.

    • clear — очищает всю выведенную в консоль информацию. Пригодится на тот случай, если терминал будет забит выводом других команд или содержимом ранее открытых документов. Помогает «начать с чистого листа».
    • history — отображает ранее введенные команды. По умолчанию показывает 10 последних, но при желании это значение можно изменить, добавив в качестве параметра любое число. Например, history 17, чтобы показать 17 последних выполненных операций.
    • whatis — вкратце описывает любую установленную программу. Вводим whatis и скармливаем ей в качестве аргумента название интересующей утилиты. Чтобы узнать, что такое wget, напишем whatis wget и получим краткую справку одной строкой.
    • man — демонстрирует подробное руководство по выбранной программе или команде. Чтобы выяснить, как работает wget и какие опции для него доступны, введем man wget. Получим массивное полотно со всей документацией для выбранной утилиты. P.S. Выйти из нее можно нажав на клавишу Q.

    Команды для управления правами на файлы и директории

    Все, что нужно для разрешения проблем, связанных с правами в Linux.

    • sudo — выдает права суперпользователя. Используется перед любой другой командой в терминале, если нужно выполнить ее от имени администратора. Многие программы и операции запускаются исключительно при наличии этих прав, так что sudo используется часто. Например, чтобы обновить список пакетов в Ubuntu, введем: sudo apt-get update. При этом система запросит пароль администратора.
    • sudo su — переводит терминал в режим суперпользователя. В нем каждая введенная команда будет восприниматься системой так, будто перед ней ввели sudo. Помогает запускать несколько скриптов и утилит, требующих права администратора, без необходимости постоянно корректировать их или вводить пароль от учетной записи.
    • sudo gksudo — используется для запуска графических утилит от имени администратора. В Windows для этого есть специальная кнопка в контекстном меню, а в Linux — префикс. Синтаксис такой:
    • sudo !! — запускает предыдущую команду от имени администратора. Используется, если до этого была неудачная попытка запустить программу. Помогает не тратить время на повторный ввод большого количества символов.
    • chmod — корректирует права доступа к выбранному файлу. Применяется исключительно с набором аргументов, обозначающих список прав. Допустим, я хочу выдать права на чтение и запись файла Timeweb.html на рабочем столе. Для этого введу в терминал: chmod 777

      /Desktop/timeweb.html. Теперь его можно открывать и редактировать. Аналогичным образом пользователи поступают с системными файлами, когда приходит время что-то в них менять. По умолчанию большая их часть защищена от записи.

    • chown — назначает владельца для выбранной директории, документа, картинки или любого другого элемента в файловой системе. Синтаксис следующий:

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

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

    • useradd — создает новую учетную запись. Например, мы хотим добавить пользователя с именем Timeweb. Для этого вводим: useradd Timeweb. Но свежесозданному аккаунту нужен не только логин, но и пароль. С помощью опций можно задать дополнительные характеристики новому пользователю.
    • passwd — задает пароль для учетной записи, работает вкупе с предыдущей командой. То есть сразу после создания аккаунта, пишем: passwd Timeweb (в вашем случае может быть любой другой пользователь). После этого система попросит придумать и указать пароль для новой учетной записи. По ходу набора пароля в терминале не будут отображаться даже звездочки, но он все равно учитывает каждую нажатую клавишу. Продолжайте набирать пароль вслепую.
    • userdel — удаляет выбранную учетную запись. Синтаксис простейший:

    Установка, удаление и обновление пакетов

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

    Debian/Ubuntu

    • sudo apt-get install название пакета — устанавливает программу на выбор. Главное знать, как она называется.
    • sudo apt remove название пакета — стирает с жесткого диска имеющийся в системе пакет.
    • sudo apt-get update — обновляет информацию о пакетах, имеющихся в системе, и тех, что хранятся в подключенных репозиториях.
    • sudo apt-upgrade — обновляет установленные пакеты до самых свежих версий, доступных в подключенных репозиториях.

    Red Hat Linux/CentOS

    • sudo dnf install название пакета — устанавливает программу на выбор.
    • sudo dnf upgrade — обновляет установленные пакеты до самых свежих версий.
    • sudo dnf remove название пакета — стирает с жесткого диска имеющийся в системе пакет.

    Команды для навигации и базовой работы с файлами

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

    • ls — покажет содержимое директории, в которой вы находитесь. Если после команды ввести адрес конкретной папки, то она покажет то, что хранится в ней. При добавлении аргумента -R в выводе команды появятся файлы из поддиректорий.
    • cd — change directory, что в переводе означает «сменить директорию». Из названия понятно, что с помощью этой команды можно перемещаться между папками. Вписываем ее, а потом адрес: cd /user/test/dir/111. Есть сокращенные варианты: cd- для перемещения в предыдущую директорию или cd (без аргументов) для прыжка в домашнюю папку.
    • pwd — укажет полный путь до директории, в которой вы находитесь. Если вы перепрыгнули на рабочий стол с помощью cd, то pwd покажет что-то в духе /home/Polzovatel/Desktop.
    • file — расскажет, что перед вами изображение, директория или текстовый документ, а также предоставит информацию о них (для изображений, например, это данные EXIF).
    • mv — mv применяется для перемещения файлов из одной папки в другую. Перенесем файл timeweb.txt из домашней директории на рабочий стол: mv timeweb.txt /home/имя учетной записи/Desktop. Эту же команду используют, чтобы поменять имя файла. Для этого надо не указывать папку для перемещения, а просто ввести новое название для документа:
    • cp — используем, если нужно не переместить файл, а создать его копию в другой директории. Работает так же, как и mv. Указываем путь до файла, который нужно скопировать, и путь до директории, куда копируем:
    • dd — мощная утилита для взаимодействия с разделами. С ее помощью можно делать копии разделов, перемещать их, удалять без возможности восстановления.
    • rm — опасная команда для удаления директорий и их содержимого. Затирает все данные, которые обнаружит в указанной папке. То есть все субдиректории и файлы будут уничтожены. И восстановить их не получится. Про корзину этой команде ничего неизвестно. Синтаксис такой rm путь до директории, которую нужно стереть с компьютера. Чтобы удалить каталог Timeweb и все его содержимое из домашней папки пользователя, введем: rm

      /Timeweb.
      mkdir — создает новую директорию. Допустим, мы хотим создать папку под новый проект на рабочем столе. Для этого введем команду: mkdir

      /Desktop/Timeweb. При желании можно разместить новую папку в промежутке между двумя уже существующими. К примеру: mkdir -p /home/New_Project/Newest_Project создаст папку New_Project в домашней директории и станет родителям для существующей папки Newest_Project.

    • rmdir — удаляет пустую папку. Акцентируем внимание на слове «пустую». В отличие от rm, rmdir не трогает другие файлы и субдиректории.
    • cat — показывает содержимое документов. Можно скормить этой утилите любой текстовый файл, и она прямо в терминале отобразит все, что в нем записано. Пишем: cat путь до файла, содержимое которого надо осмотреть.
    • head — «голова», как и cat, показывает содержимое документов, но не всё, а только первые 10 строк. При желании количество строк можно увеличить или сократить, добавив параметр -n. Команда: head -n 2

      /Desktop/timeweb.txt покажет только первые две строчки документа timeweb.

    • touch — эта команда создавалась для изменения времени последнего открытия файла или директории, но используют ее, в основном, для создания новых файлов. Например, для создания HTML-документа в домашней директории пользователя надо ввести в терминал: touch /home/имя учетной записи/test-site.html.
    • nano — запускает программу для редактирования текста nano. Используя дополнительные аргументы, можно создавать новые текстовые файлы. Например nano /путь до директории, где нужно создать новый текстовый файл/название документа. Или же редактировать уже существующие. Альтернативой nano может служить vi. Продвинутый редактор 1976 года выпуска с бесконечными возможностями расширения, но с крайне специфичным управлением.
    • wc — считает количество строк, слов, знаков и байтов. В терминале надо ввести: wc

      /Desktop/timeweb.txt и все.

    • wget — загружает из интернета документы, картинки, целые страницы и прочий контент. Допустим, нам надо скачать скриншот панели управления Timeweb с официального сайта. Для этого воспользуемся командой

    • zip — упаковывает файлы в архив в формате .zip. Синтаксис для создания zip-архива такой: zip название архива.zip путь до файла, который надо упаковать. К примеру:
    • unzip — напрямую связан с zip, но выполняет противоположную функцию. Извлекает файлы из архива. Работает по тому же принципу – вводим команду, а потом путь до архива, который надо распаковать.
    • find — продвинутая команда по поиску объектов в файловой системе Linux. Можно искать элементы как по названию, так и по иным характеристикам. Например, указать тип файла: find -type d -name Timeweb. Такая команда покажет все директории с именем Timeweb.
    • grep — find ищет файлы и директории, а grep ищет текст в их содержимом. Как вариант, можно отыскать слово «тест» в документе «test.txt». Для этого введем следующую команду: cat test.txt | grep тест. cat перед grep необходим, чтобы вывести найденную информацию в консоль. В противном случае grep найдет искомый контент, но не покажет его.

    Вот, что написано в тестовом документе

    Что в терминал выводит cat

    И что выводит grep

    • diff — сокращение от слово difference. Показывает разницу между двумя текстовыми файлами. Для сравнения используется такой синтаксис: diff название первого файланазвание второго файла. К примеру, diff text-1.txt text-2.txt
    • mount — монтирует образ или раздел диска. Для использования нужно лишь указать путь к разделу или образу, который нужно смонтировать.
    • unmount — выполняет противоположную задачу.

    Команды для отображения базовой информации и управления системой

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

    • df — показывает, сколько пространства занято на подключенных дисках и разделах. По умолчанию отображает данные в килобайтах. Можно переключиться на мегабайт, добавив параметр -m. Это выглядит так: df -m.
    • du — расскажет, сколько места занимает конкретный файл или папка. Чтобы узнать, насколько тяжелая директория Desktop, введем: du

    /Desktop. du отображает информацию в блоках. Но это неудобно, поэтому обычно к ней добавляют опцию -h, чтобы появились привычные мегабайты, килобайты и байты.

  • free — тоже связана с памятью, только с оперативной. Показывает, сколько занято, а сколько свободно. Чтобы включить отображение в мегабайтах, надо так же добавить аргумент -h.
  • uname — вывод информации о системе и сервере. Аргумент -a показывает имя компьютера, версию ядра, текущую дату и время, разрядность системы и ее тип. Можно запрашивать отдельные фрагменты данных через дополнительные опции: -s — только имя ядра; -n — имя компьютера (ноды) в сети; -o — название операционной системы; -p — тип процессора; -s — версия ядра.
  • whoami — покажет, кто вы есть. Имя учетной записи, через которую вы зашли в систему или подключились к серверу.
  • date — из названия ясно, что команда отображает текущее время и дату.
  • sleep — задерживает запуск скриптов на выбранный период времени. Единица времени указывается через опции: -s — секунды; -m — минуты; -h — часы; d — дни.
  • На этом все. Это список команд, которыми я хотел бы поделиться с новичками. Я разобрал основное, что будет важно в самом начале работы. Ну а вы всегда можете воспользоваться документацией, открывающейся через man, и подробнее ознакомиться с любой из команд или утилит.

    Источник

    Читайте также:  Windows cannot complete the installation
    Оцените статью