Ubuntu команды терминала. Команды терминала Linux

В этой статье мы постарались систематизировать основные команды Linux. Команды, которые вы увидите в этом списке, одинаково верно работают в разных дистрибутивах, включая Debian, Gentoo, Ubuntu, ASPLinux, ALTLinux и т. д. Главная цель статьи — создать список основных команд Linux, что упростит как изучение, так и эксплуатацию этой операционной системы.

Телепринтеры 1800-х годов

В 1830-х и 1840-х годах были разработаны машины, известные как телетайпы. Эти машины могли отправлять печатные сообщения «по проводам» в отдалённые места. Сообщения были набраны отправителем на своего рода клавиатуре. У получателя они печатались на бумажке. Они были эволюционным шагом в телеграфии, которая раньше полагалась на коды Морзе и подобные.

Сообщения кодировались и передавались, затем принимались, декодировались и печатались. Для кодирования и декодирования сообщений использовалось несколько методов. Самый известный и один из самых плодотворных был запатентован в 1874 году Эмилем Бодо, в честь которого названа скорость передачи. Его схема кодирования символов предшествовала ASCII на 89 лет.

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

Чтобы выделить это достижение, машины были названы teletypewriters. Это название сокращено до teletypes и, в конечном итоге, до TTY. Отсюда мы и получили аббревиатуру TTY, но какое отношение телеграфия имеет к компьютерам?

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

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

2.1 Файлы и директории

# pwd # Выводится текущий путь; # ls # Выводится список каталогов и файлов по порядку; # ls -laX # Выводится отформатированный список всех директорий и файлов, в том числе скрытых; # cd # Для перехода в домашнюю директорию; # cd /home # Для перехода в директорию /home; # touch /home/primer2 # Создаётся пустой файл /home/primer2; # tail /var/log/messages # Выводится конец файла. Это удобно, если вы работе с большими файлами и логами; # cat /home/primer2 # Показывается содержимое файла; # nano /home/primer2 # Обеспечивается редактирование файла; # gedit /home/primer2 # Ещё одна Linux-команда для редактирования файла; # echo "Последняя строчка" | sudo tee -a /home/primer2 # К концу файла добавляется "Последняя строчка"; # cp /home/[email protected]/ /home/ # Копируется /home/[email protected]/ в home/; # mkdir /home/[email protected]/shaman # Создаётся директория с именем shaman; # rmdir /home/[email protected]/shaman # Удаляется директория с именем shaman; # rm -rf /home/[email protected]/shaman # Удаляется директория со вложенными фалами; # ln -s /home/[email protected]/ /home/primer # Cоздаётся символическая ссылка к файлу /home/[email protected]/; # cp -la /dir1 /dir2 # Для копирования директории; # mv /dir1 /dir2 # Для переименовывания директории; # du -sh /home/[email protected]/ # На экран выводится размер заданной директории. Команда подходит и для определения размера файлов; # locate primer # Выполняется поиск файлов с именем primer.

2.2 Права доступа

# [sudo] chmod 0777 /home/ # Меняются права доступа к директории. В данном случае 0777 – это разрешение на чтение/запись/исполнение для всех групп; # [sudo] chown [email protected]:ITShaman /home/ # Меняются владелец и группы, но только для файла /home/; # [sudo] chmod -R 0777 /home/ # Происходит рекурсивное изменение прав доступа к директории. Значение 0777 мы уже описали выше. Права 0777 будут иметь все вложенные файлы и директории; # [sudo] chown -R [email protected] /home/ # Для всего содержимого директории меняется владелец.

Команды для поиска файлов

Синтаксис Назначение Опции Описание
find [путь] [опции] Выводит список файлов, удовлетворяющих заданному набору критериев.–depth обрабатывает сначала текущий каталог, затем его подкаталоги. –maxdepth n ограничивает поиск n уровнями вложенности каталогов. –follow обрабатывает каталоги, указанные символическими ссылками. –name шаблон находит файлы с именами, соответствующими шаблону. –ctime n сравнивает файлы, модифицированные точно n дней назад. 11 –user имя находит файлы, владельцем которых является указанный пользователь. –group имя находит файлы, владельцем которых является указанная группа. –path шаблон находит файлы, с путями, соответствующими шаблону Команда find удобна для поиска всех файлов, удовлетворяющих заданному набору критериев. Если ввести find без аргументов, будет выведен список всех файлов во всех подкаталогах текущего каталога. Для отображения всех файлов с именами, заканчивающимися , введите find . –name “.gz”
locate шаблон Выводит все файлы из периодически обновляемой базы данных, которые соответствуют заданному шаблону. Нет Команда locate производит поиск в базе данных файлов тех имен, которые удовлетворяют указанному шаблону. Ваша Linux–система настроена на периодическое обновление базы данных файлов. Если вы не уверены, где находится файл, просто введите locate, а за ним часть имени файла.
whereis [опции] команда Производит поиск исходного текста, двоичного файла и man-страницы для команды –b производит поиск только двоичных файлов. –m производит поиск только man-страниц. –s производит поиск только исходных текстов. Команда whereis производит поиск в обычных каталогах (где находятся двоичные файлы, man-страницы и исходные файлы) двоичных файлов, man-страниц и исходных файлов для заданной команды.
which команда Производит поиск заданной команды в каталогах, перечисленных в переменной среды PATH. Нет Команда which производит поиск в каталогах, перечисленных в переменной среды PATH, файла, который запускается в результате ввода указанной команды. Это удобный способ проверки, что именно выполняется при вводе конкретной команды.

Работа с локальными deb-пакетами (dpkg)

deb — расширение имён файлов «бинарных» пакетов для распространения и установки программного обеспечения в ОС проекта Debian, и других, использующих систему управления пакетами dpkg. Deb — это часть слова Debian, в свою очередь, образованного от слов Debra — имени подруги (впоследствии — жены, ныне — бывшей) основателя Дебиана Яна Мердока и Ian от его собственного имени.

dpkg -i установить / обновить пакет
dpkg -r package_name удалить пакет из системы
dpkg -l показать все пакеты, установленные в систему
dpkg -l | grep httpd среди всех пакетов, установленных в системе, найти пакет содержащий в своём имени «httpd»
dpkg -s package_name отобразить инфрмацию о конкретном пакете
dpkg -L package_name вывести список файлов, входящих в пакет, установленный в систему
dpkg –contents отобразить список файлов, входящих в пакет, который ешё не установлен в систему
dpkg -S /bin/ping найти пакет, в который входит указанный файл

Работа с переменными

  • env — работа с переменными окружения (от environment — окружение), без параметров — вывод всех имеющихся
  • peremennaya=»znachenie» — присвоеное переменной peremennaya значения znachenie (кавычки желательно использовать на случай, если в переменной несколько подряд идущих символов пробела или табуляции)
  • printenv — Выдает значения переменных среды окружения
  • unset $peremennaya — удаление переменной
  • readonly peremennaya — установка переменной значения «только для чтения», то есть запрет изменения значения переменной. (без аргументов — вывод всех переменных, помеченных только для чтения)
  • export peremennaya — экспорт переменной peremennaya для родительских процессов
  • set arg1 arg2 arg3 … argn — установка позиционных переменных $1 $2 $3 … $n на основании arg1 arg2 arg3 … argn
    • -a (allexport) — экспортирует все инициализируемые переменные
    • -f (noglob) — указывает интерпретатору не развертывать имена файлов
    • -n (noexec) — указывает интерпретатору развертывать команды, но не выполнять их
    • -t (exit) — читает и выполняет одну команду, а затем прекращает работу
    • -u (nounset) — возвращать ошибку при развертывании пустой переменной
  • declare -atr +atr peremennaya — устанавливает (символ — минус) или снимает (символ + плюс) атрибуты atrу переменных (если без указания переменной — то вывод всех переменных с указанным атрибутом)
    • -a — объявление переменной массивом
    • -f — объявление переменной — именем функции
    • -i — пометить переменную для хранения целых числовых значений
    • -r — объявление переменной «только для чтения»
    • -x — пометка переменной для экспорта

Горячие клавиши

Копирование команд Часто вам придётся следовать каким-либо инструкциям, которые требуют копирования команд в терминал. Наверное, вы удивитесь, когда обнаружите, что текст, скопированный вами с интернет-страницы при помощи комбинации клавиш Ctrl+C , не вставляется в терминал при нажатии Ctrl+V . И что, неужели придётся перепечатывать все эти команды и имена файлов вручную? Нет, расслабьтесь! Вставить текст в терминал можно тремя способами: Ctrl+Shift+V , нажатием средней кнопки мыши или правой кнопки мыши и выбором строки «Вставить». Экономия набора

или Ctrl + P прокрутка недавно использованных команд вверх
↓ или Ctrl + N прокрутка недавно использованных команд вниз
Enter выполнение выбранной команды
Tab крайне удобная возможность — автозаподстановка команд и имён файлов. Если с выбранных символов начинается только одна команда, подставится именно она, а если их несколько,то по двойному нажатию tab выведется список всех возможных вариантов.
Ctrl + R поиск по командам, которые вы вводили раньше. Если вам нужно повторно выполнить очень длинную и сложную команду, вы можете ввести только её часть, а эта комбинация клавиш поможет найти команду целиком.
History Команда history выводит список всех команд, которые вы вводили. Каждой команде будет присвоен номер. Чтобы выполнить команду под номером x, просто введите »!x» . Если у вас получилась слишком длинная история, можно попробовать «history I less» , это сделает список прокручиваемым.

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