Ubuntu список команд


Уроки по Linux: основные команды для новичков

Терминал и текстовые команды — главный способ управления операционной системой Linux, особенно, если речь идёт о сервере. И хоть слово «терминал» пугает новичков, поверьте, что всё гораздо проще. Сегодня мы подготовили для вас шпаргалку с базовыми командами — сохраняйте её в закладки и повышайте свою продуктивность в сотни раз. 😉 

Начнём с теории

Linux (Линукс) — это целое семейство операционных систем Unix с открытым исходным кодом, основанных на ядре Linux. Сюда входят все самые популярные системы на основе ОС, например: Ubuntu, Fedora, Mint, Debian и другие. Их ещё называют дистрибутивами. Подробнее о каждом читайте в этом посте

Терминал (или «Bash», сокращение от «Bourne-Again shell») — это программа, которая используется для взаимодействия с командной оболочкой. Терминал применяется для выполнения административных задач, например: установку пакетов, действия с файлами и управление пользователями. 

Команда — это название программы, которое пользователь вводит в терминале для выполнения определённой задачи. Команды могут иметь дополнительные данные и параметры. 

В ОС есть несколько сотен команд и их модификаций. Они группируются по нескольким категориям:

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

Типичная команда выглядит вот так:

Схема команды в терминале ОС Linux

Команды, которые позволят узнать больше о вашей системе

id — если вы хотите получить информацию о вашей учётной записи.

w — полезная команда, если вам нужно узнать, какой пользователь сейчас находится в системе (или команда -f — для того, чтобы узнать, откуда был совершён вход).

lsblk — если вы хотите открыть список блочных устройств хранения данных.

lscpu — отображает информацию о процессорах.

free — показывает объём свободной и уже используемой памяти (альтернативная команда — free -g).

lsb_release -a — если вы хотите получить информацию о версии вашей ОС. 

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

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

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

cd — change directory, что в переводе означает «сменить директорию». Из названия понятно, что с помощью этой команды можно перемещаться между папками. Вписываем её, а потом адрес: cd /user/test/dir/111. Есть сокращенные варианты: cd- для перемещения в предыдущую директорию или cd (без аргументов) для прыжка в домашнюю папку.

pwd — укажет полный путь до директории, в которой вы находитесь. Если вы перепрыгнули на рабочий стол с помощью cd ~/Desktop/, то pwd покажет что-то в духе /home/Polzovatel/Desktop.

dd — мощная утилита для взаимодействия с разделами. С её помощью можно делать копии разделов, перемещать их, удалять без возможности восстановления. 

rm — опасная команда для удаления директорий и их содержимого. Стирает все данные, которые обнаружит в указанной папке без возможности к восстановлению. 

grep — это полнотекстовый поиск в файле. Очень полезная команда, когда вам нужно что-то найти. Например, grep значение /путь/до/файла покажет строки в которых есть «значение». А команда grep -ril значение /путь/до/каталога/* покажет все файлы, в которых есть искомое значение.

-r — рекурсивный поиск

-i — игнорировать регистр (Case insensetive)

-l — вывести результат списком.

chown пользователь:группа — команда позволяет изменить владельца файла.

chmod — изменяет права на файл или каталог

find — суперполезная команда. С её помощью можно искать файлы по определённым параметрам. 

Следующие команды потребуются вам при работе с файлами разного типа и объёма:

cat — показывает содержимое файлов. Также может использоваться в двух вариантах: 1) одним текстовым файлом (cat путь_к_файлу), она отображает содержимое файла в окне терминала, 2) если же указать больше элементов, то команда склеит их (cat путь_к_файлу_1 путь_к_файлу_2).

head — «голова», как и cat, показывает содержимое документов, но не всё, а только первые 10 строк. При желании количество строк можно увеличить или сократить, добавив параметр -n.

tail -f — используется для просмотра растущего файла в окне интерактивного запуска кода.

touch — эта команда создавалась для изменения времени последнего открытия файла или директории, но используют её, в основном, для создания новых файлов.

wget — загружает из интернета документы, картинки, целые страницы и прочий контент.

wc — считает количество строк, слов, знаков и байтов.

zip — упаковывает файлы в архив в формате .zip.

diff — сокращение от «difference». Команда показывает разницу между двумя текстовыми файлами.

Что вы можете сделать с двоичными файлами? На самом деле, вариантов не очень много:

strings — команда выведет готовые к печати строки файла;

od — позволит вам напечатать файл в восьмеричном формате;

cmp — даёт возможность побайтно сравнивать файлы.

Если вам требуется сравнить текстовые файлы друг с другом, введите эти команды:

comm — отсортированные файлы будут строка за строкой.

diff — позволяет построчно выявить различия. Эта команда используется наиболее часто в силу богатого набора опций.

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

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

useradd — создаёт новую учётную запись. Например, если мы захотим бы добавить нового пользователя с именем REG.RU, то нужно воспользоваться этой командой — вводим useradd REG.RU. 

passwd — задаёт пароль для учётной записи. Короче говоря, работает вкупе с предыдущей командой. То есть сразу после создания аккаунта, пишем passwd REG.RU.

userdel — удаляет выбранную учётную запись. Синтаксис простейший: userdel <имя учётной записи>, которую нужно стереть

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

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

Debian/Ubuntu

sudo apt-get install название_пакета — устанавливает программу на выбор. 

sudo apt remove название_пакета — команда, используя которую можно удалить не только ПО, но и все неиспользуемые пакеты.

sudo apt-get update — обновляет информацию о пакетах, имеющихся в системе, и тех, что хранятся в подключённых репозиториях.

sudo apt-upgrade — обновляет установленные пакеты до самых свежих версий, доступных в подключенных репозиториях.

sudo apt purge — удаляет все файлы конфигурации вместе с пакетами ПО.

sudo apt autoremove -purge — удаляет абсолютно всё: и пакеты, и зависимости, и конфиги.

Red Hat Linux/CentOS

sudo dnf install название_пакета — устанавливает программу на выбор.

sudo dnf upgrade — обновляет установленные пакеты до самых свежих версий.

sudo dnf remove название_пакета — стирает с жёсткого диска имеющийся в системе пакет.

Бонус! Хитрости, которые сэкономят время

Этот список полезных знаков в разы ускорит вашу работу с командами:

!! — повторяет последнюю команду.

!$ — позволяет изменить команду, сохраняя последний аргумент. Например, команда less !$ — используется для повторного открытия файла в меньшем объёме.

!* —позволяет изменить команду, сохраняя при этом все аргументы. Например, head states.txt | grep '^Al' — при использовании должен быть хвост.

tail !* — избавляет от необходимости вводить остальную часть команды.

>x.txt — используется для создания пустого файла или очистки существующего.

lsof -P -i -n — определяет, к каким скриптам идёт обращение со стороны веб-сервера.

И самая крутая команда в Linux: для вывода полного руководства о той или иной команде есть man (сокращенно от manual). Чтобы вывести мануал достаточно просто выполнить man <имя команды>. В качестве примера давайте рассмотрим команду cat:

CAT(1)                                                                                User Commands                                                                                CAT(1)

NAME
      cat - concatenate files and print on the standard output

SYNOPSIS
      cat [OPTION]... [FILE]...

DESCRIPTION
      Concatenate FILE(s) to standard output.

      With no FILE, or when FILE is -, read standard input.

      -A, --show-all
              equivalent to -vET

      -b, --number-nonblank
              number nonempty output lines, overrides -n

      -e     equivalent to -vE

      -E, --show-ends
              display $ at end of each line

      -n, --number
              number all output lines

      -s, --squeeze-blank
              suppress repeated empty output lines

      -t     equivalent to -vT

      -T, --show-tabs
              display TAB characters as ^I

      -u     (ignored)

      -v, --show-nonprinting
              use ^ and M- notation, except for LFD and TAB

      --help display this help and exit

      --version
              output version information and exit

EXAMPLES
      cat f - g
              Output f's contents, then standard input, then g's contents.

      cat    Copy standard input to standard output.

А для выход из режима просмотра, достаточно набрать команду quit или q.

⌘⌘⌘

На первый взгляд может показаться, что список очень трудно запомнить, но запоминание приходит с практикой! Чем чаще вы пользуетесь теми или иными командами, тем скорее вы их запомните.

И, если вы хотите попробовать какие-то команды на настоящем сервере — попробуйте наши Облачные VPS с готовым шаблоном популярных дистрибутивов Linux: Ubuntu, CentOS и Django и почасовой оплатой от 44 копеек. 

Шпаргалка основана на статье «Linux Terminal Tools»

71 команда Linux на все случаи жизни. Ну почти

Команды Linux для навигации в терминале

  1. &&. Строго говоря, это не команда. Если вы хотите выполнить сразу несколько команд, поставьте между ними двойной амперсанд вот так: первая_команда && вторая_команда. Терминал выполнит команды по порядку. Вы можете ввести столько команд, сколько захотите.
  2. alias. Присваивает созданные вами названия длинным командам, которые вы не можете запомнить. Введите alias длинная_команда короткая_команда.
  3. cd. Изменяет текущую терминальную папку. Когда вы запускаете терминал, он использует вашу домашнюю папку. Введите cd адрес_папки, и терминал будет работать с файлами, которые там находятся.
  4. clear. Очищает окно терминала от всех сообщений.
  5. history. Отображает все недавно введённые вами команды. Кроме того, вы можете переключаться между недавними командами с помощью клавиш «Вверх» и «Вниз». Если вы не хотите, чтобы введённая вами команда была записана, поставьте перед ней пробел так: ваша_команда.
  6. man. Отображает руководство по программам и командам Linux. Введите man имя_пакетаили man ваша_команда.
  7. whatis. Отображает краткое описание какой-либо программы. Введите команду и название программы whatis имя_пакета.

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

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

  1. sudo. Эта команда даст вам права суперпользователя. Введите sudo перед нужной командой (например,sudo apt upgrade), чтобы выполнить её от имени администратора. Система спросит у вас пароль.
  2. sudo su. После этой команды все введённые вами команды будут исполняться от имени суперпользователя, пока вы не закроете терминал. Используйте её, если вам нужно выполнить много команд с правами администратора.
  3. sudo gksudo. Команда для запуска с правами администратора приложения с графическим интерфейсом. Например, если вы хотите переместить или изменить системные файлы, введите sudo gksudo nautilus (укажите тот файловый менеджер, которым пользуетесь).
  4. sudo !!. Эта команда запустит ранее введённую команду с правами администратора. Полезно, если вы набрали команду без sudo.

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

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

Установку и удаление приложений в Linux выполняют пакетные менеджеры. В Ubuntu и Debian пакетный менеджер называется apt, в Fedora — dnf, в Arch и Manjaro — pacman. Они загружают приложения из сетевых репозитариев, источников пакетов. Давать им команды следует с правами суперпользователя.

apt (Debian/Ubuntu/Mint)

  1. sudo apt install имя_пакета. Установить нужный пакет.
  2. sudo apt-add-repository адрес_репозитария. Добавить сторонний репозитарий.
  3. sudo apt update. Обновить сведения о пакетах.
  4. sudo apt upgrade . Обновить все пакеты до самых свежих (выполнять после apt update).
  5. sudo apt remove имя_пакета . Удалить ненужный пакет.
  6. sudo apt purge имя_пакета . Удалить ненужный пакет со всеми зависимостями, если хотите освободить больше места.
  7. sudo apt autoremove . Удалить все ненужные зависимости, бесхозные пакеты и прочий мусор.

dnf (Red Hat/Fedora/CentOS)

  1. sudo dnf install имя_пакета. Установить нужный пакет.
  2. sudo dnf config-manager --add-repo адрес_репозитария. Добавить сторонний репозитарий.
  3. sudo dnf upgrade. Обновить все пакеты до самых свежих.
  4. sudo dnf remove имя_пакета. Удалить ненужный пакет.
  5. sudo dnf autoremove. Удалить все ненужные зависимости.

pacman (Arch/Manjaro)

  1. sudo pacman -S имя_пакета. Установить нужный пакет.
  2. sudo yaourt -S имя_пакета. Установить пакет из AUR, если его нет в основном репозитарии.
  3. sudo pacman -Sy. Обновить сведения о пакетах.
  4. sudo pacman -Syu. Обновить все пакеты до самых свежих.
  5. sudo pacman -R имя_пакета. Удалить ненужный пакет.
  6. sudo pacman -Rs имя_пакета. Удалить ненужный пакет со всеми зависимостями.

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

sudo apt install firefox clementine vlc

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

Команды Linux для управления процессами

  1. kill. Эта команда служит для принудительного завершения процессов. Нужно ввести kill PID_процесса. PID процесса можно узнать, введя top.
  2. xkill. Ещё одна команда для завершения процессов. Введите её, затем щёлкните по тому окну, которое нужно закрыть.
  3. killall. Убивает процессы c определённым именем. К примеру, killall firefox.
  4. top. Отображает перечень запущенных процессов, сортируя в зависимости от потребления ресурсов CPU. Своего рода терминальный «Системный монитор».

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

Просмотр и изменение файлов

  1. cat. Когда команда используется с одним текстовым файлом (вот так: cat путь_к_файлу), она отображает его содержимое в окне терминала. Если указать два и больше файлов, cat путь_к_файлу_1 путь_к_файлу_2, она склеит их. Если ввести cat путь_к_файлу_1 > новый_файл, она объединит содержимое указанных файлов в новый файл.
  2. chmod. Позволяет изменять права доступа к файлу. Может пригодиться, если вы хотите внести изменения в системный файл.
  3. chown. Изменяет владельца файла. Следует выполнять с правами суперпользователя.
  4. file. Выводит информацию об указанном файле.
  5. nano. Открывает простой текстовый редактор. Можно создать новый текстовый файл или открыть существующий: nano путь_к_файлу.
  6. rename. Переименовывает файл или несколько файлов. Команду можно использовать и для массового переименования файлов по маске.
  7. touch. Изменяет дату последнего открытия или модификации указанного файла.
  8. wget. Загружает файлы из интернета в терминальную папку.
  9. zip. Распаковывает и сжимает архивы.

Создание и удаление файлов и папок

  1. mkdir. Создаёт новую папку в текущей терминальной папке или в указанной папке: mkdir путь_к_папке.
  2. rmdir. Удаляет указанную папку.
  3. rm. Удаляет файлы. Может удалить как отдельный файл, так и группу, соответствующую определённым признакам.

Копирование и перемещение файлов

  1. cp. Создаёт копию указанного файла в папке терминала: cp путь_к_файлу. Или вы можете указать назначение cp путь_к_файлу путь_для_копии.
  2. mv. Перемещает файл из одной папки в другую. Вы можете указать имя для перемещаемого файла. Забавно, но в Linux эта команда может использоваться и для переименования файлов. Просто укажите ту же папку, где находится файл, и другое имя.

Поиск файлов

  1. find. Поиск файлов по определённым критериям, таким как имя, тип, размер, владелец, дата создания и модификации.
  2. grep. Поиск текстовых файлов, содержащих определённые строки. Критерии очень гибко настраиваются.
  3. locate. Поиск файлов и папок, чьи названия подходят запросу, и отображение их путей в файловой системе.

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

  1. lsblk. Эта команда демонстрирует, какие диски есть в вашей системе и на какие разделы они поделены. Также команда отображает имена ваших разделов и накопителей, в формате sda1, sda2 и так далее.
  2. mount. Монтирует накопители, устройства или файловые системы Linux, чтобы вы могли с ними работать. Обычно устройства подключаются автоматически, как только вы щёлкнете по ним в файловом менеджере. Но иногда может понадобиться примонтировать что-то вручную. Вы можете подключать что угодно: диски, внешние накопители, разделы и даже ISO-образы. Эту команду нужно выполнять с правами суперпользователя. Чтобы примонтировать имеющийся диск или раздел, введите mount sdX.
  3. umount. Демонтирует файловые системы. Команда umount sdX отключит файловую систему внешнего носителя, чтобы вы могли извлечь его.
  4. dd. Эта команда копирует и преобразовывает файлы и разделы. У неё множество различных применений. Например, dd if=/dev/sda of=/dev/sdb сделает точную копию раздела sda на разделе sdb. dd if=/dev/zero of=/dev/sdX затрёт содержимое указанного носителя нулями, чтобы информацию было невозможно восстановить. А dd if=~/Downloads/ubuntu.iso of=/dev/sdX bs=4M сделает загрузочный носитель из скачанного вами образа с дистрибутивом.

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

  1. df. Отображает объём вашего диска, и сколько на нём осталось свободного места.
  2. free. Отображает объём доступной и занятой оперативной памяти.
  3. uname. Отображает сведения о системе Если ввести uname, терминал сообщит только Linux. Но команда uname -a выводит сведения об имени компьютера и версии ядра.
  4. uptime. Сообщает, как долго запущена ваша система.
  5. whereis. Отображает расположение исполняемого файла нужной программы.
  6. whoami. Называет имя пользователя.

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

  1. useradd. Регистрирует нового пользователя. Введите useradd имя_пользователя, и пользователь будет создан.
  2. userdel. Удаляет учётную запись и файлы пользователя.
  3. usermod. Изменяет учётную запись пользователя. Может переместить домашнюю папку пользователя или назначить дату, когда учётная запись будет заблокирована.
  4. passwd. Изменяет пароли учётных записей. Обычный пользователь может изменить пароль только своей учётной записи, суперпользователь может изменить пароль любой учётной записи.

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

  1. ip. Многофункциональная команда для работы с сетью. Команда ip address show выводит сведения о сетевых адресах, ip route управляет маршрутизацией и так далее. Давая команды ip link set ethX up, ip link set ethX down, можно включать и выключать соединения. У команды ip много применений, так что перед её использованием лучше ознакомиться с руководством или ввести ip --help
  2. ping. Показывает, подключены ли вы к сети, и помогает определить качество связи.

И ещё кое-что

Напоследок — главные команды Linux. Они выводят на экран корову, которая может разговаривать с вами (не спрашивайте, что употребляют разработчики).

  1. cowsay что_угодно. Корова произнесёт то, что вы ей скажете.
  2. fortune | cowsay. Корова выдаст умную (или не очень) мысль или цитату.
  3. cowsay -l. Выводит список всех животных, которые могут быть отображены в терминале. Если вы вдруг не любите коров.
  4. fortune | cowsay -f животное_из_списка. Животное на ваш выбор начинает сыпать цитатами, иногда уместными.
  5. sudo apt-get install fortunes fortune-mod fortunes-min fortunes-ru. Заставит весь зоопарк говорить по-русски. Без этого животные цитируют Твена и Уайльда в оригинале.

Это далеко не все команды Linux. Если вам нужно узнать в деталях параметры и способы применения команд Linux, вы можете воспользоваться встроенным руководством. Наберите man ваша_команда или ваша_команда --help.

Каковы основные команды в Ubuntu?

Какие команды используются в Ubuntu?

Список основных команд устранения неполадок и их функции в Ubuntu Linux

Command функция Синтаксис
cp Копировать файл. cp / каталог / имя файла / каталог / имя файла
rm Удалить файл. rm / каталог / имя файла / каталог / имя файла
mv Переместить файл. mv / каталог / имя файла / каталог / имя файла
MkDir Сделать каталог. mkdir / dirname

Как узнать команды в Ubuntu?

Базовое руководство по командной строке Linux для начала разработки в Ubuntu…

  1. Очистить экран терминала: очистить.
  2. Смотрите расположение указателя: pwd.
  3. Показать содержимое папки: ls.
  4. Вверх: cd ..
  5. Переместитесь в определенную папку: cd имя_папки.
  6. Перейти в корень: cd /
  7. Показать все файлы (также скрытые): ls -a.
  8. Просмотреть все файлы, а также подробную информацию: ls -l.

Что такое командная строка Ubuntu?

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

Используется ли команда для?

Команда IS отбрасывает начальные и конечные пробелы в вводе терминала и преобразует встроенные пробелы в отдельные пробелы. Если текст содержит встроенные пробелы, он состоит из нескольких параметров. С командой IS связаны две команды: IP и IT.

Что такое команда в Linux?

Общие команды Linux

Command Описание
ls [параметры] Список содержимого каталога.
человек [команда] Отобразить справочную информацию для указанной команды.
mkdir [параметры] каталог Создайте новый каталог.
mv [параметры] источник назначения Переименуйте или переместите файл (ы) или каталоги.

Что такое команда терминала?

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

Что делает команда netstat?

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

Для чего используется Ubuntu?

Ubuntu (произносится как oo-BOON-too) - это дистрибутив Linux на основе Debian с открытым исходным кодом. Спонсируемая Canonical Ltd., Ubuntu считается хорошим дистрибутивом для новичков. Операционная система была предназначена в первую очередь для персональные компьютеры (ПК) но его также можно использовать на серверах.

Что такое команды?

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

Как мне изучить команды Linux?

Команды Linux

  1. pwd - Когда вы впервые открываете терминал, вы находитесь в домашнем каталоге вашего пользователя. …
  2. ls - используйте команду «ls», чтобы узнать, какие файлы находятся в каталоге, в котором вы находитесь.…
  3. cd - Используйте команду «cd», чтобы перейти в каталог. …
  4. mkdir & rmdir - используйте команду mkdir, когда вам нужно создать папку или каталог.

Что такое Sudo Ubuntu?

Судо (суперпользователь делать) - это утилита для систем на базе UNIX и Linux, которая обеспечивает эффективный способ дать конкретным пользователям разрешение на использование определенных системных команд на корневом (самом мощном) уровне системы. Sudo также регистрирует все команды и аргументы. … Управляйте тем, какие команды пользователь может использовать на каждом хосте.

Только командная строка Ubuntu?

Версия Ubuntu для командной строки - это разреженная система без каких-либо графических элементов. Это текстовая версия того, что скрывается за всеми расширенными графическими элементами.

Ищем путь до линукс команд, как профессионалы / Хабр

Один из самых распространённых вопросов от подписчиков — как получить путь к команде Linux, которую только что установили в систему с помощью пакетного менеджера, например, команды

apt

или DNF. Много новых разработчиков переходит к нам из мира Windows, и для многих это первый опыт использования Linux. Некоторые используют WSL (подсистему Linux в Windows 10), а остальные работают с облачными серверами напрямую по SSH. Рассмотрим ряд распространённых команд, с помощью которых можно отобразить список команд Linux или получить к ним путь.

▍ Что такое команда Linux?

Пользовательский интерфейс Windows по умолчанию графический. Однако у ОС Linux на стороне сервера по умолчанию текстовый интерфейс. Поэтому часто используются такие термины как Bash, оболочка пользователя, консоль, приглашение командной строки, терминал и так далее. Все они относятся к текстовому интерфейсу.

К примеру, в MS Windows-приложения запускаются через кнопку «Пуск». У терминала Linux назначение схожее, но туда вводятся инструкции, известные как команды Linux. Итак, вызываем терминал Linux сочетанием клавиш Ctrl–Alt–T. Затем вводим простую команду — например date, чтобы просмотреть текущую дату и время. Текст команды вводится только строчными буквами. Для запуска команды надо нажать кнопку Enter:


date, pwd, hello и ping — это команды Linux.

▍ Различные типы команд Linux

Команды Linux, которые вводят в терминал, бывают разных типов:

  1. Внутренняя или встроенная, команда оболочки.
  2. Внешняя команда / исполняемый файл.
  3. Функция оболочки.
  4. Псевдоним.
  5. Ключевое слово.

▍ Как определить тип команды Linux

Чтобы просмотреть путь к любой команде Linux, достаточно ввести в терминал команду

type

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

type command type -t command type -a command

Например, давайте выясним тип

команды pwd

:

type pwd type date type hello type ping # Display a single word which is one of 'alias', 'keyword', 'function', 'builtin', # 'file or '' , if command is an alias, shell reserved word, shell function, shell builtin, # disk file, or not found, respectively type -t ping type -t if type -t vi type -t nano # The '-a' option shows all locations containing an executable named ping type -a ping

▍ Что такое переменная $PATH?

В Linux и Unix-подобных системах переменная PATH содержит перечень путей, по которым хранятся исполняемые программы, например ping, date, vi, docker и так далее. Чтобы просмотреть текущую переменную path, воспользуйтесь командой

echo

/

printf

:

echo "$PATH" # OR # # More human readable format # echo "${PATH//:/$'\n'}"

Вот что отображается у меня:

/home/vivek/google-cloud-sdk/bin /home/vivek/.local/bin /home/vivek/bin /usr/local/sbin /usr/local/bin /usr/sbin /usr/bin /sbin /bin /usr/games /usr/local/games /snap/bin

Для просмотра всех исполняемых файлов в папке

/bin/

, выполните команду

ls

следующим образом:

ls /bin/ ls -l /bin/

▍ Как отобразить информацию о командах

Чтобы получить путь к команде Linux, введите

command

следующим образом:

command -v date command -v pwd command -v ping command -v docker

▍ Как найти команду Linux

А ещё можно легко получить путь к команде Linux с помощью команды

which

. Пример:

which gcc which nano

Чтобы отобразить все возможные совпадающие пути, воспользуйтесь опцией

-a

:

which -a ls

▍ Получаем путь к команде или man-странице Linux

Чтобы найти двоичный файл, исходный код и man-страницу какой-либо программы или команды на диске, используйте команду whereis в следующем синтаксисе:

whereis command whereis gcc whereis docker whereis lxc whereis vim

Надо, чтобы отображались только двоичные файлы? Есть вот такой вариант:

whereis -b ls

Ищете только руководства и справочные страницы? Проще простого:

whereis -m date whereis -m gcc

▍ Команды find и locate

Файлы можно также искать по имени файла. К примеру, так будет выглядеть поиск файла, в имени которого содержится слово ‘date’:

locate -b '\date' ## OR ## find / -name "date" -ls # sudo for all files sudo find / -name "date" -ls

Результаты выполнения команды locate:

/snap/core/11316/bin/date /snap/core/11420/bin/date /snap/core18/2066/bin/date /snap/core18/2074/bin/date /snap/core20/1026/usr/bin/date /snap/core20/1081/usr/bin/date /usr/bin/date /usr/lib/byobu/date

▍ Вывод справки о командах Linux

С этим нам помогут команды

whatis

,

help

,

man

или

info

.

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

whatis ls whatis clear whatis date whatis gcc

Для всех внешних команд используются команды man или info, которые выводят на экран подробное руководство:

man date man ls man gcc man bash info ls info bash man which

Для ключевых слов и встроенных команд Bash используется команда help:

help if help exit help logout help type help command

▍ В качестве заключения

Основная проблема, с которой сталкиваются новоиспечённые пользователи Linux — поиск команд. Но благодаря этому доступному руководству вы теперь умеете получать путь к нужным командам и даже выводить справку о них в формате man-страниц. Предположим, вы установили Docker на сервер Ubuntu. Получить путь к этой системе и изучить руководство можно с помощью следующих команд:

whatis docker whereis docker type -a docker which docker find / -iname "docker" locate -b '\docker' man docker

Если вы работаете с сервером Debian или Ubuntu Linux, вам пригодятся следующие две команды. Отобразить список всех файлов, установленных на сервер пакетом Docker, можно командой dpkg:

dpkg -L docker-ce dpkg -L docker-ce | more

Результат:

/. /etc /etc/default /etc/default/docker /etc/init /etc/init/docker.conf /etc/init.d /etc/init.d/docker /lib /lib/systemd /lib/systemd/system /lib/systemd/system/docker.service /lib/systemd/system/docker.socket /usr /usr/bin /usr/bin/docker-init /usr/bin/docker-proxy /usr/bin/dockerd /usr/share /usr/share/doc /usr/share/doc/docker-ce /usr/share/doc/docker-ce/README.md /usr/share/doc/docker-ce/changelog.Debian.gz

Вывести на экран информацию о пакете Docker можно с помощью команды

apt

:

apt show docker-ce

Результат:

Package: docker-ce Version: 5:19.03.13~3-0~ubuntu-bionic Priority: optional Section: admin Maintainer: Docker <[email protected]> Installed-Size: 107 MB Depends: docker-ce-cli, containerd.io (>= 1.2.2-3), iptables, libseccomp2 (>= 2.3.0), libc6 (>= 2.8), libdevmapper1.02.1 (>= 2:1.02.97), libsystemd0 Recommends: aufs-tools, ca-certificates, cgroupfs-mount | cgroup-lite, git, pigz, xz-utils, libltdl7, apparmor Conflicts: docker (<< 1.5~), docker-engine, docker-engine-cs, docker.io, lxc-docker, lxc-docker-virtual-package Replaces: docker-engine Homepage: https://www.docker.com Download-Size: 22.5 MB APT-Manual-Installed: yes APT-Sources: https://download.docker.com/linux/ubuntu bionic/edge amd64 Packages Description: Docker: the open-source application container engine Docker is a product for you to build, ship and run any application as a lightweight container . Docker containers are both hardware-agnostic and platform-agnostic. This means they can run anywhere, from your laptop to the largest cloud compute instance and everything in between - and they don't require you to use a particular language, framework or packaging system. That makes them great building blocks for deploying and scaling web apps, databases, and backend services without depending on a particular stack or provider. N: There are 29 additional records. Please use the '-a' switch to see them.

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

Командная строка Ubuntu: все основные bash команды

Каждый пользователь Ubuntu (и любой  операционной системы  Linux) может работать в ней с помощью графического интерфейса. Но существует другой вариант — командная строка Ubuntu. В командную строку вводятся команды bash (от англ. Bourne again shell). Это оболочка, или иначе программный интерпретатор, который читает и затем выполняет команды.

В статье мы рассмотрим, как открыть в Ubuntu консоль (командную строку), а также основные команды bash, которые могут пригодиться в работе.

Как запустить консоль в Ubuntu

Как вы уже поняли, работа с командной строкой (Ubuntu cmd) выглядит следующим образом: 

  1. Вызов командной строки Ubuntu.

  2. Ввод команды.

  3. Интерпретатор считывает команду и выполняет её.

Остановимся на первом шаге. Другое название командной строки — консоль (Ubuntu console) или Терминал. Чтобы его открыть, вы можете:

  • зайти в меню и ввести в поиск Терминал,

  • или нажать сочетание клавиш Ctrl+Alt+T.

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

Обратите внимание, что вызвать командную строку в Linux можно таким же образом, как и в Ubuntu.

Команды консоли Ubuntu

В Ubuntu команды используются для выполнения разных задач. Посмотреть список всех команд и дополнительную информацию вы можете в документации Ubuntu.

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

Команда ls

Отображает список всех файлов и папок в той директории, в которой вы находитесь.

Команда cd

Переходит в другую указанную директорию или папку.

Команда cp

Копирует файлы и папки в любое место файловой системы.

Команда mv

Перемещает файлы и папки в любое место файловой системы.

Команда rm

Удаляет файлы и папки.

Команда mkdir

Создаёт новую пустую директорию.

Команда cat

Отображает содержимое файла в консоли.

Команда nano и команда vim

Открывают текстовые редакторы nano и vim, в которых можно редактировать файл прямо в консоли.

 

Список основных команд безопасности Linux

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

 

Используя команду netstat для поиска открытых портов:

Одна из самых простых команд для мониторинга состояния вашего устройства – это netstat, который показывает открытые порты и установленные соединения.

Ниже приведен пример вывода netstat с дополнительными параметрами:

 

Где:

  • -a: показывает состояние сокетов.
  • -n: показывает IP-адреса вместо хот-спотов.
  • -p: показывает программу, устанавливающую соединение.

 

В первом столбце показан протокол, вы можете видеть, что включены как TCP, так и UDP, на первом снимке экрана также показаны сокеты UNIX. Если вы подозреваете, что что-то не так, проверка портов, конечно, обязательна.

 

Установка основных правил с UFW:

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

Чтобы установить UFW, запустите:

 

Чтобы включить брандмауэр при запуске, выполните:

 

Затем примените ограничительную политику по умолчанию, запустив:

#   sudo ufw default deny incoming

 

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

# ufw allow <port>

Проверяем себя с помощью nmap:

Nmap – если не лучший, то один из лучших сканеров безопасности на рынке. Это основной инструмент, используемый системными администраторами для аудита своей сетевой безопасности. Если вы находитесь в DMZ, вы можете сканировать свой внешний IP-адрес, вы также можете сканировать свой маршрутизатор или локальный хост.

Как вы видите, выходные данные показывают, что мои порты 25 и 8084 открыты.

Nmap имеет множество возможностей, включая ОС, определение версий, сканирование уязвимостей и т. д.

 

Команда chkrootkit для проверки вашей системы на заражение chrootkit:

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

Чтобы установить chkrootkit, запустите:

# apt install chkrootkit

 

Затем запустите:

 

Чтобы быстро просмотреть запущенные ресурсы, вы можете использовать команду top при запуске терминала:

 

Команда iftop для мониторинга вашего сетевого трафика:

Еще один отличный инструмент для отслеживания вашего трафика – iftop:

# sudo iftop  <interface>

 

В нашем случае:

 

Команда lsof (список открытых файлов) для проверки ассоциации файлов <> с процессами:

Если вы подозреваете, что что-то не так, команда lsof может вывести список открытых процессов и программ, с которыми они связаны, при запуске консоли:

 

Кто и w, чтобы узнать, кто вошел в ваше устройство:

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

 

Примечание: команды «w» и «who» могут не отображать пользователей, вошедших в систему с псевдотерминалов, таких как терминал Xfce или терминал MATE.

В столбце под названием USER отображается имя пользователя, на снимке экрана выше показано, что единственный зарегистрированный пользователь – это andreyex, столбец TTY показывает терминал (tty7), третий столбец FROM отображает адрес пользователя, в этом сценарии удаленные пользователи не вошли в систему, но если они вошли в систему, вы могли видеть там IP-адреса. В системе столбец @ указывает время, в течение которого пользователь вошел в систему, столбец JCPU суммирует минут процесса, выполняемого в терминале или TTY. в PCPU отображает процессор, используемый в процессе, перечисленных в последнем столбце WHO.

В то время как w равно времени безотказной работы , who и ps -a вместе другая альтернатива, несмотря на меньшую информацию, – это команда «who»:

 

Команда last для проверки активности входа:

Другой способ контролировать активность пользователей – использовать команду «last», которая позволяет прочитать файл wtmp, который содержит информацию о доступе для входа, источнике входа, времени входа в систему, с функциями для улучшения определенных событий входа в систему, чтобы попробовать его запустить:

Последняя проверка активности входа в систему :

Команда last читает файл wtmp, чтобы найти информацию об активности входа в систему, вы можете распечатать ее, запустив:

 

Проверка вашего статуса SELinux и включение его при необходимости:

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

Вы можете проверить свой статус SELinux, запустив:

 

Если вы получили сообщение об ошибке «Команда не найдена», вы можете установить SELinux, запустив:

#   apt install selinux-basics selinux-policy-default -y

 

Затем запустите:

 

Проверьте любую активность пользователя, используя историю команд:

В любое время вы можете проверить любую активность пользователя (если вы – root), используя историю команд, записанную как пользователь, за которым вы хотите наблюдать:

 

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

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

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Основные команды для WSL | Microsoft Docs

  • Статья
  • Чтение занимает 5 мин
  • Участники: 4

Были ли сведения на этой странице полезными?

Да Нет

Хотите оставить дополнительный отзыв?

Отзывы будут отправляться в корпорацию Майкрософт. Нажав кнопку "Отправить", вы разрешаете использовать свой отзыв для улучшения продуктов и служб Майкрософт. Политика конфиденциальности.

Отправить

В этой статье

Далее приведены команды WSL в формате, поддерживаемом PowerShell или командной строкой Windows. Чтобы выполнить эти команды из командной строки дистрибутива Bash или Linux, измените wsl на wsl.exe.

Установка

wsl --install 

Устанавливает WSL и дистрибутив Linux Ubuntu. Подробнее.

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

wsl --install --distribution <Distribution Name> 

Назначьте дистрибутив Linux для установки помимо установленного по умолчанию (Ubuntu), заменив <Distribution Name> именем дистрибутива. Эту команду можно также указать так: wsl -d <Distribution Name>.

Список доступных дистрибутивов Linux

wsl --list --online 

Выводит список дистрибутивов Linux, доступных в интернет-магазине. Эту команду можно также указать так: wsl -l -o.

Список установленных дистрибутивов Linux

wsl --list --verbose 

Выводит список дистрибутивов Linux, установленных на компьютере под управлением Windows, в том числе состояние (независимо от того, запущен дистрибутив или остановлен) и версию WSL, в которой работает дистрибутив (WSL 1 или WSL 2). Применяется в WSL 1 и WSL 2. Эту команду можно также указать так: wsl -l -v. Дополнительные параметры, которые можно использовать с командой list: --all — для перечисления всех дистрибутивов, --running — для вывода списка только тех дистрибутивов, которые запущены в данный момент, --quiet — для отображения только имен дистрибутивов.

Указание версии WSL (1 или 2)

wsl --set-version <distribution name> <versionNumber> 

Чтобы указать версию WSL (1 или 2), в которой работает дистрибутив Linux, измените <distribution name> на имя дистрибутива, а <versionNumber> — на число 1 или 2. Применяется в WSL 1 и WSL 2.

Указание версии WSL по умолчанию

wsl --set-default-version <Version> 

Чтобы задать WSL 1 или WSL 2 как версию по умолчанию, измените <Version> на число 1 или 2, чтобы указать версию WSL, которая будет использоваться по умолчанию для установки новых дистрибутивов Linux. Например, wsl --set-default-version 2. Применяется в WSL 1 и WSL 2.

Указание дистрибутива Linux по умолчанию

wsl --set-default <Distribution Name> 

Чтобы задать дистрибутив Linux по умолчанию, который команды WSL будут использовать для запуска, измените <Distribution Name> на имя предпочитаемого дистрибутива Linux.

Изменение каталога на домашний

wsl ~ 

Команду ~ можно использовать с WSL для запуска в домашнем каталоге пользователя. Чтобы в командной строке WSL вернуться в домашний каталог из другого, можно использовать команду cd ~.

Запуск определенного дистрибутива Linux из PowerShell или CMD

wsl --distribution <Distribution Name> --user <User Name> 

Чтобы запустить определенный дистрибутив Linux от имени конкретного пользователя, измените <Distribution Name> на имя предпочитаемого дистрибутива Linux (например, Debian), а <User Name> — на имя существующего пользователя (например, root). Если указанный пользователь не существует в дистрибутиве WSL, появится сообщение об ошибке. Чтобы ввести имя текущего пользователя, выполните команду whoami.

Обновление WSL

wsl --update 

Позволяет обновить версию ядра WSL Linux вручную. Можно также использовать команду wsl --update rollback для отката к предыдущей версии ядра WSL Linux.

Проверка состояния WSL

wsl --status 

Отображает общие сведения о конфигурации WSL, такие как тип дистрибутива по умолчанию, дистрибутив по умолчанию и версия ядра.

Команда help

wsl --help 

Отображает список параметров и команд, доступных в WSL.

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

wsl -u <Username>`, `wsl --user <Username> 

Чтобы запустить WSL в качестве указанного пользователя, замените <Username> именем пользователя, который существует в распределении WSL.

Изменение пользователя по умолчанию для распределения

<DistributionName> config --default-user <Username> 

Измените пользователя по умолчанию для входа распределения. Чтобы стать пользователем по умолчанию, пользователь должен уже существовать в распределении.

Например, ubuntu config --default-user johndoe изменит пользователя по умолчанию для распределения Ubuntu на пользователя "johndoe".

Примечание

Если вам не удается определить имя распределения, используйте команду wsl -l.

Предупреждение

Эта команда не будет работать для импортированных дистрибутивов, так как у них нет исполняемого средства запуска. Вместо этого можно изменить пользователя по умолчанию для импортированных дистрибутивов с помощью файла /etc/wsl.conf. См. раздел "Параметры автоматического подключения" в документе Настройка дополнительных параметров.

Shutdown

wsl --shutdown 

Немедленно завершает работу всех запущенных дистрибутивов и облегченной служебной виртуальной машины с WSL 2. Эта команда может потребоваться в экземплярах, требующих перезапуска среды виртуальных машин WSL 2, например при изменении ограничений использования памяти или внесении изменений в файл .wslconfig.

Завершение

wsl --terminate <Distribution Name> 

Чтобы завершить работу определенного дистрибутива или остановить его выполнение, замените <Distribution Name> именем нужного дистрибутива.

Экспорт дистрибутива в TAR-файл

wsl --export <Distribution Name> <FileName> 

Экспорт дистрибутива в TAR-файл. Именем файла может быть "-" для стандартного вывода.

Импорт нового дистрибутива

wsl --import <Distribution Name> <InstallLocation> <FileName> 

Импорт указанного TAR-файла в качестве нового дистрибутива. Именем файла может быть "-" для стандартного ввода. С этой командой также можно использовать параметр --version, чтобы указать, где будет выполняться импортированный дистрибутив: в WSL 1 или WSL 2.

Отмена регистрации или удаление дистрибутива Linux

Хотя распределения Linux можно устанавливать из Microsoft Store, через Store их удалить невозможно.

Чтобы отменить регистрацию и удалить распределение WSL, выполните следующие действия:

wsl --unregister <DistributionName> 

При замене <DistributionName> именем целевого распределения Linux регистрация этого распределения в WSL будет отменена, чтобы его можно было переустановить или очистить. Внимание. После отмены регистрации все данные, параметры и программное обеспечение, связанные с этим распределением, будут безвозвратно утеряны. При переустановке из Store будет установлена чистая копия дистрибутива. Например, wsl --unregister Ubuntu удалит Ubuntu из распределений, доступных в WSL. После запуска wsl --list раскроет, что он больше не в списке.

Вы также можете удалить приложение дистрибутива Linux на компьютере под управлением Windows так же, как и любое другое приложение из Store. Чтобы переустановить его, найдите это распределение в Microsoft Store и нажмите "Запустить".

Подключение диска или устройства

wsl --mount <DiskPath> 

Позволяет подключить физический диск во всех дистрибутивах WSL 2, изменив <DiskPath> на путь к каталогу или файлу, где расположен диск. См. статью Подключение диска Linux в WSL 2. Возможны следующие значения.

  • wsl --mount --bare: подключение диска к WSL 2 без подключения к файловой системе.
  • wsl --mount --type <Filesystem>: тип файловой системы, используемой при подключении диска, если не указано значение по умолчанию (ext4). Эту команду можно также указать так: wsl --mount -t <Filesystem>. Тип файловой системы можно определить с помощью команды blkid <BlockDevice>, например: blkid <dev/sdb1>.
  • wsl --mount --partition <Partition Number>: номер раздела для подключения согласно индексу, если не указан вариант по умолчанию (весь диск).
  • wsl --mount --options <MountOptions>. Некоторые параметры, относящиеся к файловой системе, можно добавить при подключении диска. Например, параметры подключения к ext4: wsl --mount -o "data-ordered" или wsl --mount -o "data=writeback. Но сейчас поддерживаются только параметры, относящиеся к файловой системе. Общие параметры, такие как ro, rw или noatime, не поддерживаются.
  • wsl --unmount <DiskPath>. Отключение диска от всех дистрибутивов WSL 2. Если параметр <DiskPath> не указан, эта команда отключает ВСЕ подключенные диски.

Примечание

Если для доступа к wsl.exe (64-разрядному средству) используется 32-разрядный процесс, вам может потребоваться выполнить указанную выше команду следующим образом: C:\Windows\Sysnative\wsl.exe --command.

Нерекомендуемые команды WSL

wslconfig.exe [Argument] [Options] 
bash [Options] 
lxrun /[Argument] 

Эти команды с исходным синтаксисом WSL использовались для настройки дистрибутивов Linux, установленных с помощью WSL, но были заменены командами с синтаксисом wsl или wsl.exe.

Основные команды LINUX

Основные команды LINUX

Справка


человек - отобразить справочную страницу для команды «программа»

информация - как и man, отображать страницу справки для команды «программа».

Если он не может найти информационную страницу, он ищет справочную страницу и отображает ее.

  • информационная программа, программа pinfo

--помощь - у каждой программы есть опция --help или -h для отображения небольшой справки

Логин


выход из системы - команда выхода из терминала

выезд - команда для завершения процесса оболочки: tcsh, bash и т. д.Д - (Ctrl-D) отправляет на терминал сообщение EOF (конец файла)

Указывает на конец ввода данных. В оболочке «bash» это обычно приводит к отключению терминала

.

кто - отображает имя пользователя

идентификатор - отображает текущее имя и группу пользователя и их номера (UID и GID)

и - команда для повторного входа в качестве другого пользователя (su, для «переключить пользователя»)

Позволяет в том же терминале временно изменить права на выполнение команд другому пользователю (изменить текущий UID и GID)

  • su имя пользователя — изменить пользователя на пользователя с именем «имя пользователя»
  • su - имя пользователя - изменить пользователя, очистить переменные среды и установить новые значения для HOME, SHELL, USER, LOGNAME, PATH

палец - список всех пользователей, которые в настоящее время вошли в систему на машине (и их терминалы)
  • палец
  • finger @komputer — пользователи вошли в систему на компьютере с именем «computer;
  • имя пользователя finger - выводит информацию о пользователе 'username' и всех терминалах, на которых он зарегистрирован
  • finger Marek - выводит информацию обо всех пользователях с именем 'marek'

в - точно так же, как списки пальцев зарегистрированных пользователей и их активных терминалов

Основные команды


компакт-диск - изменяет текущий каталог (из «изменить каталог»)
  • cd имя каталога - изменить текущий каталог на «имя каталога»
  • cd dir1 / dir2 / dir3 - идет в каталог 'dir3', который находится в каталоге 'dir2', который находится в 'dir1'
  • cd - откуда угодно, меняет каталог на домашний
  • продолжение. - Перемещается в каталог на один выше в дереве каталогов, чем текущий
  • cd /home/dir - откуда угодно, идет в директорию начиная с начала дерева: /
  • cd - - переход к предыдущему каталогу

pwd - распечатать путь к текущему каталогу (из «распечатать рабочий каталог»)

лс - перечисление каталога
  • ls - перечисляет каталог.(сл.)
  • ls файл1 файл2 файл3 - Список только перечисленных файлов
  • ls * .txt — список всех файлов с именами, заканчивающимися на «.txt»
  • ls catalog1 catalog2 - список перечисленных каталогов
  • ls -l — Подробный список
  • ls -a - также список скрытых файлов (т.е. тех, имя которых начинается с точки)
  • ls -R - рекурсивно перечисляет каталоги (т.е. также отображает содержимое подкаталогов)
  • ls -d - отображать только имена каталогов, как и обычные файлы, т.е. не отображать их содержимое

кот - записывает все переданные ему файлы в стандартный вывод
  • cat файл - если мы не перенаправим стандартный вывод в другой файл (>, >>) или программу (|), она выведет файл на экран
  • cat файл1 файл2 файл3 - распечатать содержимое всех файлов
  • один за другим

лотки - записывает все переданные ему файлы в стандартный вывод, но меняет порядок строк
  • tac file1 file2 - печатать оба файла вместе, с последней до первой строки

эхо - повторяет слова, указанные в аргументе, на стандартном выходе
  • echo costam write if echo "costam write" - написать "costam write" и закончить новой строкой
  • echo -n "costam print" - после записи аргументов не будет печатать новую строку
  • echo $HOME - выводит содержимое переменной среды HOME

туалет - подсчитывает строки, слова и символы в файле

, если аргумент не задан, считывается из стандартного ввода

.
  • cat файл1 файл2 | wc -l - будет считать все строки из объединенных файлов файл1 файл2
  • wc файл - печатать строки слов и символов и имя файла
  • wc -m - только символы (или --chars)
  • wc -l - только строки (или --lines)
  • wc -w - только слова (lib --words)

меньше - удобный и быстрый просмотр текстовых файлов
  • меньше файла - отображает содержимое файла и разрешает прокрутку страницы (q-вывод)

Файлы и каталоги


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

кп - копирует файл
  • cp file1 file2 - создаст ./file2 идентичный file1
  • cp file3 ../katalog/jakis/ — создаст файл ../katalog/jakis/plik3
  • cp pom.* Подкаталог / — будут скопированы все файлы, начинающиеся с 'pom.' в ./подкаталог/
  • cp file5 ~/directory/some/file - создать файл ~/directory/some/file

мв - перемещает файл (таким образом, также служит для переименования)
  • mv file1 file2 - переименует файл из./файл1 в файл2
  • mv file3 ../katalog/jakis/ — переместит файл в ../katalog/jakis/file3
  • mv file4 подкаталог / - переместит файл ./subdirectory/file4
  • mv file5 ~/directory/some/file - переместить и переименовать ~/directory/some/file

п.м. - удаляет файл
  • РМ файл -
  • rm -r каталог - удалить все в каталоге и всех его подкаталогах (--recursive)
  • rm -f файл - не просит удалить (--force)

мкдир - создает каталог
  • mkdir my_new_directory
  • mkdir/home/users/ja/my_new_dir

rmdir - удаляет пустой каталог

чмод - изменяет права доступа к файлам

группы пользователей: u - пользователь, g - группа, o - другие, a - все

права доступа: r - чтение, w - запись, x - выполнение

  • chmod o + r файл - предоставить другим разрешение на чтение файла
  • chmod a-x file - лишить всех права на выполнение файла
  • chmod g=rw file - установить права на чтение и запись для вашей группы
  • chmod -R go + w directory - установить разрешения для всех файлов в каталоге и его подкаталогах (--recursive)

найти - показывает, где последний файл с данным именем (или частью имени) был замечен на этом компьютере

найти отчет.текст - найти pdf

найти - просмотреть каталог для рассматриваемого файла
  • найти. -name report.txt
  • find/home/user-name "rap * xt"

Перенаправления


> - перенаправление вывода из программы в файл.

Стандартным выводом любой программы является экран (текстовая консоль), а стандартным вводом — клавиатура. Вы можете свободно перенаправлять эти входы и выходы.

  • echo "ala ma cat">file.txt - выход из программы echo запишет в файл file.txt
  • ls -l> list.dat - перечислить файлы в файл list.dat

>> - добавление выхода из программы в конец файла
  • эхо "у алы есть собака" >> файл.txt — добавит «у ала есть собака» в конец файла .txt
  • ls -l> list.dat - перечислить файлы в файл list.dat

| - перенаправление вывода одной программы на ввод другой
  • файл кота.txt | wc -l — cat выведет на вывод файл .txt, который мы перенаправим в программу, считающую строки.
  • лс -л | lpr - Программа печати lpr будет получать данные из списка файлов
  • .
  • файл кота.txt | подносы | grep "что-то" | head> cosie.txt — запись файла .txt в программу «tac», которая меняет порядок строк, результат этого перенаправляется в «grep», который будет печатать только строки, содержащие слово «что-то», вывод этого отправлено в программу «голова», которая будет публиковать только первые 10 строк вывода, которые мы перенаправили в файл cosie.txt.

>! - перенаправление в файл. Работает как >, но продолжается даже после того, как файл уже существует. Работает с "tcsh".
  • echo "у ала есть кот">file.txt - если файл.txt существует, эта команда может завершиться ошибкой.
  • эхо "а-ля кот">! file.txt - вам нужно будет использовать восклицательный знак>!
  • echo "аля есть кот"> | файл.txt — то же самое, только в «bash»

- перенаправить файл как стандартный ввод.
  • шахматы - если шахматная программа принимает ходы на стандартный ввод, мы можем записать эти ходы в файл и отдать программе таким образом
  • кошка движется.txt | шахматы - тоже самое можно сделать да

- вход в следующие строки.
  • шахматы E2-B4
    H5-A1
    C6-F5
    DO_KONCA
    - пройти т.н. документ на месте. Все следующие строки между метками 'TO_END' будут поданы на стандартный ввод программы 'chess'.
  • эхо "E2-B4
    H5-A1
    C6-F5" | шахматы
    - тоже самое можно сделать да
  • echo -e "E2-B4\nH5-A1\nC6-F5" | шахматы - тоже самое можно сделать да

2> - перенаправить стандартный вывод ошибок в файл.В дополнение к стандартному выводу и вводу каждая программа также имеет стандартный вывод ошибок. Мы также можем перенаправить их, например, в место, отличное от обычного вывода. Работает в «bash», а не в «tcsh».
  • find -name "file. *"> Found.log 2> errors.log - файлы, найденные с помощью 'find', попадут в found.log, сообщения об ошибках не будут скрывать результат и будут записаны в другой файл - ошибки.лог
  • cp -r data/backup/2> ошибка.log - если возникнут ошибки при копировании всего каталога, все сообщения будут записываться в error.log
  • (ls>file.log)>&file.err - в 'tcsh' нельзя перенаправить только вывод ошибок, отсюда и необходимость такой конструкции.

&> или> & - перенаправление обоих выходов в файл.
  • лс> & файл.log — стандартный вывод и стандартная ошибка для ошибок перенаправляются в файл.log
  • ls> logfile 2> & 1 — то же самое, но работает только в «bash». Перенаправьте вывод, затем скопируйте его в вывод ошибок.
  • ls &> log.file — то же, что и> &, но в более «bash»-обозначении.

человек ударить
  • Рекомендую для получения дополнительной информации

человек ткш
  • Рекомендую для получения дополнительной информации

Процессы


пс - перечислить процессы, запущенные на компьютере
  • ps - Отображает запущенные пользователем процессы
  • ps a - также отображать процессы других пользователей
  • ps -l, ps -f, ps -F - дополнительная информация о процессах (от: long, full, extra full)
  • ps f - отображает дерево зависимостей процесса (из: леса)
  • 90 024 пс --help -: P

бг - перезапускает приостановленную (Ctrl-Z) задачу, но в фоновом режиме, как если бы она была запущена с помощью &
  • bg - Запускает последнюю остановленную задачу
  • bg NUMBER - запускает задание с заданным номером в списке остановленных заданий (заданий)

фг - перезапускает остановленную (Ctrl-Z) задачу на переднем плане
  • fg - Запускает последнее остановленное задание
  • фг НОМЕР - запускает задание с заданным номером в списке остановленных заданий (
  • )

рабочих мест - отображает список остановленных заданий

убить - убивает данный процесс

PID - это номер идентификатора процесса, его можно прочитать, например.с помощью команды ps

  • kill PID - отправляет сигнал процессу с номером PID для прерывания процесса
  • kill -KILL PID - убить процесс без запроса

и - модификатор, позволяющий сразу запустить фоновый процесс.
  • xcalc & - запускает программу xcalc в фоновом режиме, благодаря чему у нас есть бесплатная консоль

топ - интерактивный инструмент мониторинга процесса

Сортирует процессы по их текущему использованию ЦП, использованию памяти и т. д.

Редакторы


вим - расширенный текстовый редактор с текстовым режимом

Vi iMproved - новая версия известного редактора Vi. Он имеет

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

гвим - vim в графическом режиме

емакс - расширенный текстовый редактор в графическом режиме

Emacs, как и Vim, является универсальным многоязычным редактором с богатыми функциями.


уемакс - текстовый редактор в текстовом режиме

Micro Emacs — это текстовая версия Emacs

.

Джо - простой текстовый редактор

Собственный редактор Джо.Подходит для написания простых документов


mcedit - текстовый редактор в текстовом режиме

mcedit — встроенный редактор для Midnight Commander.

Имеет, среди прочего подсветка синтаксиса.

Сеть


сосна - программа электронной почты

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


сш - программа для удаленного входа по зашифрованному соединению

Самая важная онлайн-программа. Он позволяет войти на любой компьютер в мире, при этом соединение защищено благодаря алгоритмам шифрования, основанным на ключах RSA.

  • ssh anatres - регистрирует меня на 'antares'a
  • ssh ja @ anatres — регистрирует меня как пользователя 'ja' на 'antares'a
  • ssh ja @ antares command - войдет в систему только для выполнения команды
  • на antares

SCP - программа для копирования файлов по зашифрованному SSH соединению

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

'scp' для подключения использует программу 'ssh'

  • scp файл ja@antares: ~/moje_fiki/ - скопирует файл в мою директорию на antaresie ~/moje_files/
  • scp ja@antares: /var/log/file. - скопирует данный файл из antares
  • в текущий каталог

логин - простой протокол удаленного входа в систему
  • rlogin antares - войдет в систему на 'antares'a

пинг - диагностическая программа, которая проверяет, есть ли сетевое подключение к данному компьютеру.
  • ping antares.astrouw.edu.pl - проверяем отвечает ли антарес (и как быстро)

диски
дф - перечисляет размеры и количество доступного места на смонтированных дисках (в килобайтах и ​​в процентах)
  • дф
  • df /dev/sda1 — ограничить результаты только одним разделом
  • df -h - размеры дисплея в удобных для пользователя единицах (удобочитаемых)
  • df -m - размеры в мегабайтах

дю - количество размеров каталогов и файлов, содержащихся в данном каталоге
  • дю - размер текущего каталога
  • дю каталог - считать размер данного каталога
  • du -s - печатать только сумму, а не размеры каждого подкаталога
  • du -sm - укажите только сумму для каждого каталога и введите размер в мегабайтах
  • du -sm каталог * | sort -n - сортировать результаты от наименьшего к наибольшему из заданных каталогов

Окружающая среда


который - перечисляет, где находится программный файл с заданным именем
  • which ls — найти файл, который будет запущен после вызова команды «ls»

окр. - выводит текущие значения всех переменных окружения

или - устанавливает и перечисляет определения команд быстрого доступа («псевдонимы»), которые в настоящее время установлены в среде.
  • псевдоним - печатать псевдонимы
  • псевдоним ls 'ls --color = auto' - определяет новый псевдоним 'ls' с заданным содержимым

Системные устройства


/dev/ноль - бездонный колодец.Устройство, на которое мы можем писать по желанию, и все, что мы печатаем, теряется.
  • find -name "file.*" 2>/dev/null - если не хотите видеть среди результатов поиска сообщения об ошибках
  • latex file.tex> /dev/null - программа сделает все активности, но не будет захламлять консоль логами
  • count>/dev/null 2>/dev/null& — если мы хотим запустить программу в фоновом режиме, а затем выйти из системы (закрыть консоль), мы должны перенаправить вывод программы, чтобы она не пыталась записать на устройство, которое больше не существует.«Нулевое» устройство всегда есть.

/dev/ноль - нулевой магазин Это устройство для чтения, которое никогда не заканчивается. Из него можно прочитать любое количество байт, и все они будут нулевыми.
  • dd if=/dev/zero of=zeros.txt count=1000 - считывает тысячу нулей в файл 'zeros.txt'.
  • cat /dev/zero - советую не пробовать
  • head -c 10 /dev/zero > ноль.txt — вывести первые 10 байт из '/dev/zero' в файл 'zero.txt'. В результате получается файл с десятью нулями.

/разработчик/случайный - набор случайных чисел. Это считывающее устройство, которое дает вам действительно случайные данные. При этом используется системный бак энтропии, который пополняется благодаря различным проявлениям активности пользователя. Этот набор может закончиться, поэтому не читайте сразу несколько чисел.
  • from -t x1 -N 100 /dev/random - записать на экран первые 100 случайных байт из /dev/random (в шестнадцатеричной системе)

/dev/urandom - набор псевдослучайных чисел. Это считывающее устройство, которое сообщает псевдослучайные числа. В его распоряжении любое их количество.
  • from -t d1 -N 100 /dev/urandom - записать на экран первые 100 байт из /dev/urandom (в десятичной системе)

/dev/стандартный - стандартный ввод текущего процесса.Любой процесс, который попытается прочитать данные с этого устройства, получит содержимое собственного ввода.
  • эхо "есть кот" | cat ala.txt/dev/stdin — программа cat объединит содержимое файла ala.txt с тем, что она получила на стандартном вводе

/ dev / стандартный вывод - стандартный вывод текущей программы. Когда процесс что-то записывает в /dev/stdout, это появится в его стандартном выводе.
  • a2ps --output file.ps file.txt - программа a2ps создаст документ PostScript в файле file.ps
  • a2ps --output /dev/stdout file.txt - программа a2ps выведет документ на экран (его стандартный вывод)

/dev/stderr - стандартный вывод ошибок в текущей программе. Когда процесс что-то записывает в /dev/stderr, это отображается в его стандартном выводе ошибок.

.

20 команд терминала UNIX — основные команды Linux, которые вам нужно знать

При обучении программированию часто решающим моментом является обучение работе с терминалом. Черное окно командной строки должно появляться во время вашего приключения в программировании, независимо от того, интересуетесь ли вы интерфейсом, сервером или тестированием (QA). Неважно, на каком языке вы программируете — этот момент рано или поздно наступит. Однако я гарантирую, что основные команды Linux не так уж страшны!

В блоге пока терминал пролистывает курс Python , нужна ли для поддержка Git .

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

Что такое командная строка/терминал?

Терминал

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

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

Чтобы завершить этот рассказ, следует упомянуть, что UNIX как операционная система была создана в конце 1960-х годов Сегодня Linux и Mac произошли от UNIX.

Поэтому неудивительно, что пользователи Linux и программисты Mac обычно лучше знакомы с командной строкой.До недавнего времени у пользователей Windows был выбор командной строки CMD и Powershell. В настоящее время, начиная с версии Windows 10, они могут чувствовать себя пользователями Unix — достаточно выполнить поиск bash/ubuntu, установленных в системе 😉

Каждый раз, когда вы слышите фразу «открыть терминал, консоль или командную строку», вы поймете, что имеет в виду автор. Аналогичным образом, если объявление имеет дополнительное преимущество в виде знания Linux . Скорее всего, работодатель имеет в виду не установленную Ubuntu и использование только браузера, а команды — базовые команды Linux/Unix.

Наиболее важные команды UNIX

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

Открытый терминал

Начнем с запуска командной строки на компьютере

Терминал для Linux/MacOs
Найдите на своем компьютере приложение: терминал *.

* Mac : по умолчанию может использоваться высококонтрастный терминал на белой задней панели. Это не очень удобно, вы можете легко изменить эти настройки в верхнем левом углу:
Настройки -> Настройки -> Профили -> Выберите цветовой профиль и подтвердите, нажав «По умолчанию» внизу боковой панели
Другое вариант, который я использую на работе, и я настоятельно рекомендую скачать iTerm2.

* Linux : есть похожее приложение, которое я не использовал, но, как описано, оно работает аналогично iTerm2 — Guake.

iTerm и Guake - программы, делающие работу с терминалом намного приятнее, они позволяют много терминалов в одном окне (раздельный вид), быстрое перескакивание между проектами и т.д., но я не даю вам отказаться от терминала по умолчанию, т.к. достаточно для начала. Просто полезный лакомый кусочек 😉

Терминал для Windows 10
Если вы пользователь Windows 10 - найдите bash или ubuntu , если он не установлен по умолчанию, вы можете загрузить его из Microsoft Store, доступного на вашем компьютере как "Ubuntu".

После запуска Windows Bash/Ubuntu мы находимся в отдельной директории, где установлен наш специальный Linux. Команды в терминале в Windows 10 работают так же, как и в исходной системе UNIX, но если вы хотите иметь доступ к своим файлам, например, к рабочему столу или документам, перейдите на свой диск. У меня в компьютере два диска - C и D, поэтому я перейду на диск C: cd/mnt/c , а на диск D: cd/mnt/d . С помощью команды ls вы увидите все каталоги и файлы в корневом каталоге диска.

Терминал для Windows, отличной от 10
В более старых версиях Windows у вас может возникнуть соблазн установить виртуальную машину с Linux. Однако для наших основных нужд достаточно иметь доступ к любому онлайн-терминалу (правда, не все команды будут поддерживаться). Хорошим промежуточным решением было бы загрузить эмулятор терминала Windows, например, Cywin.

Если все готово, мы можем перейти к основным командам Linux!

Я буду использовать термин команда Linux, а не UNIX или UNIX (системы, производные от UNIX?), поскольку полагаю, что этот пост будет нацелен в основном на пользователей всех дистрибутивов Linux и в меньшей степени на другие системы.Все время про команды терминала 😉

Команды файловой системы

Файловая система является постоянным местом хранения в UNIX. Каждый прямой путь к файлу выглядит одинаково:

/пользователь/каталог/подкаталог/файл.расширение

например

/rita/Desktop/Pictures/sea.png

Мы это понимаем интуитивно. На моем рабочем столе есть каталог изображений с sea.png.
Однако эта запись не случайна.Это связано с тем, что файловая система имеет иерархическую структуру , а началом всегда является корневой каталог с именем root и отмеченный символом: /.

1. pwd - показать путь к текущему каталогу

Команда pwd ( Print Working Directory ) выводит текущий путь к каталогу - папка, в которой мы находимся.

90 123 90 048 $ в день ~ / Рита /

Linux pwd: Always Lost ответит "где я?" каков мой путь?»

2. ls - вывести содержимое каталога

Одна из наиболее часто используемых команд Linux, ls ( List ) отображает все содержимое папки (файлы и папки), в которой мы находимся.

90 123 90 048 $ лс Рабочий стол Документы Загрузки Изображения Видео

Linux ls: одна из наиболее часто используемых команд — вы увидите больше в этом руководстве 😉

Обобщение шаблонов

В папке, содержащей множество файлов и подпапок, нам может быть сложно найти интересную информацию.Тогда пригодятся обобщающие шаблоны, например *,?, []

* - заменяет любую строку
? - означает любой один символ
[] - заменяет один символ, но из числа символов, указанных в скобках

Предположим, я зашел в папку «Изображения», где у меня хранится много изображений, сохраненных под разными именами, например, image01, image1, image2, img1, img2, img3, picture1, picture2 и т. д.

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

  $ лс изображение * img1 img2 img3  

Я также могу искать картинки, которые начинаются с двух букв и m и заканчиваются цифрами 1 :

  $ ls im * 1 изображение01 изображение1 изображение1  

или все, что заканчивается на 1 (т.е. они начинаются с любой последовательности символов и в конце появляются 1:

  $ лс * 1 изображение01 изображение1 изображение1 изображение1  

Мы также можем искать файлы, имя которых изображение и заканчивается любым символом:

  $ ls изображение? изображение1 изображение2  

То же самое получается указанием набора цифр в скобках - [12]:

  $ ls изображение [12] изображение1 изображение2  

Есть еще много обобщающих шаблонов, но для начала достаточно этих трех основных.

Скрытые файлы и каталоги

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

Имена скрытых файлов часто начинаются с точки. Если мы используем шаблон * то такой скрытый контент не появится, но используя ls.* мы можем искать скрытые файлы. Но что, если скрытая папка или файл имеют совсем другое имя? Тогда имеет смысл использовать команду ls с ключом например с опцией -a.

Команды:
ls -a
ls -la

Они также показывают скрытые файлы и каталоги.

3. cd - изменить каталог

Используя cd ( Change Directory ) меняем место/директорию где находимся.

Из каталога рита Хочу на рабочий стол:

90 123 $ cd Рабочий стол $ pwd ~ / Рита / Рабочий стол

компакт-диск Linux: навигация по каталогам

90 123 $ кд .. $ pwd ~ / Рита /

Используйте cd .. , чтобы вернуться в предыдущий каталог.

Кроме того, мы можем указать полный путь к папке, в которую мы хотим перейти. Нам даже не нужно запоминать полные имена. Все, что вам нужно сделать, это ввести первые 2-3 буквы имени и нажать клавишу Tab, и терминал сам подскажет, какие папки доступны в этом месте.

Например, у меня на рабочем столе есть подпапка From

  $ cd Рабочий стол/Форма $ pwd ~/rita/Рабочий стол/Форма $ кд .. $ pwd ~ / Рита / Рабочий стол  

4. человек - показать помощь

С помощью команды man ( manual ) мы покажем справку по данной команде и иногда пример использования.Например, man cd покажет описание - как использовать команду cd, какие у нее есть опции. Используйте q для выхода из режима чтения справки.

  $ человек лс LS (1) Пользовательские команды LS (1) НАЗВАНИЕ ls - список содержимого каталога ОПИСАНИЕ Список информации о ФАЙЛАХ (текущий каталог по умолчанию). ...  

Linux man: показать полное описание использования команды (здесь усечено)

5. mkdir - Создать каталог

Время создать новую папку командой mkdir ( Make Directory ).

  $ mkdir новая_папка $ лс Рабочий стол Документы Загрузки new_folder Картинки Видео  

Linux mkdir: легко создать каталог Linux

6. rmdir - Удалить каталог

Удаляет выбранную папку командой rmdir ( Remove Directory ).

  $ rmdir новая_папка $ лс Рабочий стол Документы Загрузки Изображения Видео  

Linux rmdir: удаление обратно созданию

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

Если удаляемый каталог не пуст, консоль может сообщить об ошибке. Если мы абсолютно уверены, что знаем, какие каталоги мы удаляем (независимо от содержимого), мы можем использовать опцию --ignore-fail-on-non-empty , которая заглушит сообщение о папках, содержащих файлы, и удалит их полностью.

7. коснуться - Создать файл

После папок пришло время создать новый пустой файл.

  $ коснуться new_file.txt $ лс Рабочий стол Документы Загрузки new_file.txt Картинки Видео  

Linux touch: создать файл, если файл не существует

Touch обновляет дату последнего открытия файла.

8. cat - объединение файлов

Другой способ создать файл — использовать команду cat ( Concatenate ).Команда cat в основном используется для объединения (объединения) файлов, но также может использоваться для отображения файлов или создания нового файла.

Самая распространенная программа cat используется так:

  $ cat файл1.txt файл2.txt  

В приведенном выше примере на экране отображаются два объединенных файла.
Мы можем сохранить результат этой операции в новый файл:

90 123 $ cat файл1.txt файл2.txt> файл3.txt

Linux cat: объединение и запись в

Команда $ cat> образец.txt позволяет залить файл прямо из консоли. Мы можем написать любую строку символов, затем сохранить изменения и выйти с помощью (в зависимости от системы) Ctrl+D/Ctrl+C/Cmd+C.

  $ cat> sample1.txt ... $ лс Рабочий стол Документы Загрузки new_file.txt Изображения sample1.txt Видео  

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

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

  $> образец2.txt $ лс Рабочий стол Документы Загрузки new_file.txt Изображения sample1.txt sample2.txt Видео  

9. кп - копия

Команда cp ( Copy ) используется для копирования файлов.Мы можем сделать копию файла в той же папке с новым именем

90 123 90 048 $ лс Рабочий стол Документы Загрузки Картинки sample.txt Видео $ cp sample.txt new_sample.txt $ лс Рабочий стол Документы Загрузки new_sample.txt Изображения sample.txt Видео

Linux cp: копирование принимает 2 параметра: имя или путь копируемого файла/каталога и имя или путь места, куда копировать

Мы также можем создать копию файла с тем же именем, но в подкаталоге:

  $ cp образец.текстовые картинки  

Команда скопирует файл образца в папку «Изображения» под именем sample.txt

Мы также можем сделать копию файла с новым именем, но в подкаталоге:

  $ cp sample.txt Картинки / new_sample.txt  

Команда скопирует файл образца в папку «Изображения» с именем new_sample.txt

Linux cp с опцией -r также позволяет копировать целые папки:

  $ cp -r Картинки New_Pictures  

10. мв - ход

Команда mv ( Move ) используется для перемещения файла в другую папку.

  $ mv sample.txt Документы  

Linux mv: переместить и/или переименовать

Вы также можете использовать его для изменения имени файла:

  $ mv sample.txt new_file.txt  

11. п.м. - удалить

Когда мы закончим работу с файлом и захотим его удалить, просто используйте команду rm ( Remove ):

  $ пог. образец.текст  

Linux rm: удалить файлы и папки

С опцией -r мы также удалим каталоги — так же, как rmdir .

Процессы

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

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

Вы когда-нибудь сталкивались с ситуацией, когда запуск программы никак не мог закрыться - она ​​не реагировала на нажатия, правый клик или сочетания клавиш? С помощью PID вы можете найти процесс и успешно убить его — закончить.

12. пс - показать процессы

Команда ps ( Состояние процесса ) перечисляет процессы для текущей оболочки:

$ 90 123 90 048 шт. PID TTY ВРЕМЯ CMD 4 недели назад 00:00:00 баш 45 недель назад 00:00:00 пс

Linux ps: список процессов, запущенных в текущей оболочке

ps - показывал только основную информацию о процессах оболочки - pid, терминал, активное время и имя процесса.Мы можем получить полную информацию о процессе текущей оболочки с помощью ps -f ( full ):

90 123 90 048$ пс-ф UID PID PPID C STIME TTY TIME CMD Рита 4 3 0 14:21 tty1 00:00:00 -баш рита 116 4 0 14:38 tty1 00:00:00 пс -f

Чтобы отобразить все процессы, мы можем использовать команду ps -e ( каждые ) или ps -A ( все ) - вы можете встретить оба варианта использования, они возвращают одно и то же.

90 123 $пс-е PID TTY ВРЕМЯ CMD 1? 00:00:00 начало 3 tty1 00:00:00 инициализация 4 недели назад 00:00:00 баш 202 tty1 00:00:00 /Applications/GoogleChrome.app 228 недель назад 00:00:00 пс

Мы можем комбинировать опции, например, -ef :

90 123 90 048 $пс-эф UID PID PPID C STIME TTY TIME CMD корень 1 0 0 14:21? 00:00:00 / инициализация ро root 3 1 0 14:21 tty1 00:00:00 / init ro Рита 4 3 0 14:21 tty1 00:00:00 -баш рита 202 3 0 14:25 tty1 00:00:00 / Приложения / GoogleChrome.приложение рита 218 4 0 14:49 tty1 00:00:00 пс -эф 90 542

13. убить - завершить процесс

Любой процесс может быть завершен командой kill с указанием в качестве аргумента PID процесса, который мы хотим удалить

90 123 90 048 $ убить 202

С помощью этой команды я отправил сигнал - завершение процесса 317 здесь - моему браузеру. Однако может случиться так, что процесс не будет завершен, потому что он ожидает другого процесса, например.окончание сохранения, либо у нас просто проблема с "зависшей" программой и мы хотим завершить ее один раз и успешно.

В этом случае мы можем отправить опцию -9 - сигнал безусловного завершения процесса.

90 123 90 048 $ убить -9 202

Уничтожение Linux: использование команды с ключом -9 приведет к немедленному завершению работы, но не сохранит вашу работу!

Unix предоставляет нам множество команд и вспомогательных программ, ускоряющих работу — поиск каталогов или доступ к файлам.

14. найти - найти

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

  $ найти Загрузки ~ / рита / Рабочий стол / Загрузки  

мы также можем принудительно определить местонахождение для подсчета ( count ) количество попаданий:

  $ locate -c Загрузки 1  

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

15. найти - найти

Более популярный метод поиска файлов и папок — найти . Поиск в дереве каталогов файлов и папок, удовлетворяющих условию.

Список файлов в папке и папках

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

90 123 $ найти . ./ааа.txt ./pod_folder ./pod_folder/abc.rb ./pod_folder/test.rb ./вау.html ./wow.rb

. - точка в начале пути означает "в текущей папке - папка, в которой я нахожусь"

Поиск определенной папки или пути

Следующая команда будет искать все файлы в подпапке в текущем каталоге.

  $ найти ./pod_folder ./pod_folder ./pod_folder/abc.рб ./pod_folder/test.rb  
Поиск по шаблону

С помощью ключа -имя мы можем искать файлы по имени. Помните, что шаблон * - значит выделить все?

Мы можем объединить эту информацию и искать все файлы ruby ​​в нашей папке и ее подпапках:

  $ найти -имя '* .rb' ./pod_folder/abc.rb ./pod_folder/test.rb ./вау.рб  
Поиск по отрицанию

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

В следующем примере будут перечислены все файлы и подпапки в каталоге, которые не являются файлами ruby:

  $ найти не-имя '* .rb' ./ааа.txt ./pod_folder ./вау.html  
Поиск только файлов или папок

Иногда нам может понадобиться найти только файлы с заданным именем или только папки.Для этого используется переключатель - тип (f - файл / d - каталог).

Наша папка содержит как файл xyz, так и подпапку с тем же именем:

  $ найти -имя 'xyz *' ./xyz.txt ./xyz  
  $ find -type f -name 'xyz *' ./xyz.txt  
  $ find -type d -name 'xyz *' ./xyz  

16. grep — Соответствие шаблону

Программа grep ( Global Regular Expression Print ) — первоначально использовалась для поиска шаблонов в файле и была основной программой UNIX.
Команда grep ищет в текущем каталоге файлы, удовлетворяющие условию - содержащие шаблон в содержимом и совпадающие с именем файла

grep 'text_pattern' имя файла
например

  $ grep 'привет' пример.txt  

— будет искать в файле sample.txt слово привет.

  $ grep 'привет' сумма *  

Приведенная выше команда будет искать все файлы, имена которых начинаются с «sum» (звездочка соответствует любой строке) — например, summary.txt, summer.pdf, Summit.doc и будут отображать на экране только строки, содержащие текст «привет». Если бы в файле summary.txt было написано «привет, мир!» это будет отображаться на экране.

Образец (у нас 'привет') задается как регулярное выражение, позволяющее сопоставить одно или несколько слов/строк, для этого используются специальные символы или выражения, например

  • . - точка заменяет любой 1 символ текста
  • [abc] - означает вставку любого символа из заданных - a, b или c
  • [a-z] — означает любой символ в диапазоне от a до z
  • [^] - отрицание напр.отмечает начало строки
  • $ - отмечает конец строки

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

Параметры — команда grep

Grep также принимает множество полезных опций, например:
-i - шаблон NO учитывает регистр
-n - для каждого файла будет номер строки, где был найден шаблон
-l быть выведено - будут выведены только имена файлов, в которых найден шаблон
-v - противоречие шаблона - будут выведены все строки, которые НЕТ содержат шаблон
-w - ищет не фрагмент текста, а слово целиком соответствие образцу

Примеры:
$ grep '^ [0-9]' sam * - ищет в файлах sam * строки, начинающиеся с
$ grep '[eE] $' sam * - ищет sam * в файлах строки заканчивающиеся с e или E
$grep '\$' Pictures/* - ищет в файлах подкаталога Pictures строки, содержащие знак доллара
$ grep -nwv 'hello' sam * - выведет номер строки sam * файлы, которые не содержат слова «привет»

в середине

17. голова и хвост - показать строки от начала/конца

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

В файле pan_tadeusz.txt - у нас есть первая глава Пана Тадеуша, мы легко можем отобразить первые 20:

90 123 $ голова -20 pan_tadeusz.текст

и последние 15 строк текста:

90 123 $ хвост -15 pan_tadeusz.txt

Вы также можете использовать обобщающие шаблоны:

  $ голова -12 текст [12] .txt  

Приведенная выше команда отобразит первые 12 строк из файлов с именами text1.txt или text2.txt.

18. прозрачный - прозрачный терминал

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

19. история - показать историю команд

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

20. выход - закрыть терминал

Команда exit закрывает терминал или открытую вкладку.

Несколько слов о стандартном вводе/выводе

Каждый процесс по умолчанию использует стандартный ввод/вывод — ввод — это клавиатура терминала, на которой мы вводим команды и данные, а вывод — экран терминала, на котором отображаются данные.

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

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

команда > файл - стандартное перенаправление вывода - результат команды будет отправлен в файл (будет создан новый файл или существующий файл с таким именем будет перезаписан)

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

90 123 90 048 $ история > история.текст

Приведенная выше команда запишет для нас историю команд в файл.

Показать первые 5 команд из файла history.txt и перенаправить на новый файл, например history5.txt.

потоков

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

Вместо вывода команды история редирект в файл воспользуемся пайпом для вывода первых 5 команд:

90 123 $ 90 048 история | голова -5

Мы также можем найти все команды, которые использовались до сих пор, содержащие ls :

90 123 $ 90 048 история | grep лс

и, наконец, отображать только первые 10 таких команд:

90 123 $ 90 048 история | grep лс | голова

мы также можем сохранить этот результат в файл:

90 123 $ 90 048 история | grep лс | глава > история.текст

и если вы не хотите терять (перезаписывать) текущий контент, используйте >> .

Аналогично предыдущему, добавьте последние 15 использованных команд в файл history.txt , найдите .

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

Редактор vi/vim

Хотя мы уже изучили основные команды Linux, стоит упомянуть, что в терминале есть встроенный редактор — Vi . Vi и его более популярный клон Vim присутствует во всех разновидностях UNIX-систем и с самого начала — в 1970-х годах характеризуется единообразной реализацией независимо от машины, на которой он запущен. Это означает, что мы встретим его, открыв терминал Linux, подключившись к серверу через ssh, и он будет доступен по умолчанию в терминале Mac, и каждый раз он обрабатывается одинаково. В результате Vim широко используется администраторами, опытными пользователями, а также многими программистами.

Ввод в эксплуатацию

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

90 123 $ vi new_file.txt

Мы полностью управляем Vim с клавиатуры. О мышке пока можно забыть.
Сразу после запуска мы находимся в командном режиме, что для некоторых может быть немного хлопотно.Vim имеет два режима — режим вставки (редактирования) и режим команд (ввод).

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

Верните из режима редактирования в командный режим , нажав клавишу Esc .

Примеры команд, доступных в Vim в командном режиме:

  • a - запись после позиции курсора
  • и - Ввод текста перед курсором
  • А - добавление в конец текущей строки
  • I - писать в начале текущей строки
  • o - добавление новой строки ниже текущей (аналогично размещению курсора в конце строки и добавлению символа ввода в режиме редактирования)
  • O - добавление новой строки над текущей (аналогично установке курсора в начало строки и добавлению ввода)
  • v - выделение строк текста (v и перемещение стрелками ←, →)
  • - отменить последнее изменение
  • R - замена текста
  • s - замена символа, указанного курсором
  • S - замена текущей строки
  • c - Изменить выделенный текст
  • C - изменить на конец строки
  • . - Повторить команду
  • гг - вернуться на первую строку
  • / - Поиск расположения строки в тексте

Проверьте их все!
(после каждого выполнения вы снова находитесь в режиме редактирования — нажмите Esc, чтобы снова оказаться в командном режиме)

Как выйти из vi/vim?

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

Есть много разных способов выйти из редактора Vim.Прежде всего, если вы слушали меня и открываете Vim с vi/vim имя файла , то просто наберите ZZ с клавиатуры в командном режиме - он сделает сохранение и выход.

Ой, не работает?

Вы наверное меня не послушали и сразу открыли vim . Тогда сначала нужно ввести имя для записи - в командном режиме двоеточие + в или : в имени файла и потом :q - позволит выйти из редактора.

К чему вся эта суета по поводу выхода из vi? Ну, минуту назад, если бы вы случайно попали в середину vim, у вас, вероятно, тоже была бы небольшая неприятность. Причем способов сохранения и выхода больше, чем вышеперечисленное:

 
  • : в - сохранить файл
  • :w имя - сохранить файл под новым именем (создать новый или копию)
  • : в! - Принудительная запись файла (например, файлы только для чтения)
  • : wq - сохранить и выйти из файла
  • :q - выйти, если с момента последнего сохранения в файл не было внесено никаких изменений
  • : к! - Принудительный выход без сохранения изменений в файле
  • :x - сохранить и выйти (без сохранения, если нет изменений)
  • : х! - сохранить (принудительно записать) и выйти
  • ZZ - выход из редактора с сохранением файла

Если есть сомнения, всегда можно проверить:

Это просто примеры команд vim.Вы узнаете больше здесь:
- Vim - интерактивный - интерактивный учебник
- Vim Adventures - интерактивная игра с использованием команд Vim

Терминал UNIX — упражнения

Если вам не хватает, приглашаю на задания. Смело используйте весь этот пост, команду man и Интернет! Для начала самые простые команды Linux, которые вы легко запомните:

Разминка
  1. Список всех файлов с расширением png
  2. Проверить, есть ли у вас на диске трехбуквенные файлы, состоящие из любых букв, но не из цифр (!)
  3. Список файлов, которые содержат хотя бы одну заглавную букву в имени и одну цифру
Задачи — команды Linux:
  1. Создать каталог «Задачи» на рабочем столе.Затем создайте каталог «Задача-1» в каталоге «Задачи». Создайте вложенную структуру каталогов cat1/cat2/cat3 в текущем каталоге. Подсказка - посмотрите руководство mkdir, обратите внимание на переключатель -p . Удалить все дерево каталогов
  2. одной командой
  3. Создать 4 файла .txt в каталоге "Задачи" - файл1, файл2, файл3, файл4 и любые 4 файла с расширением .py (все файлы могут быть пустыми). Затем перейдите в каталог «Задача 1» и скопируйте в него все файлы, имеющие расширение.ру. Постарайтесь максимально аккуратно скопировать весь каталог «Задачи» и его содержимое в новый каталог под названием «Задачи резервного копирования». Проверьте, как работает переключатель -i . Прочитайте, как работает man cp! и переключатель -v .
  4. Удалить все файлы в каталоге «Задания копирования / Задание-1». Назовите пустой каталог «Задача-1» «Задача-2». В папке «Задача-2» сохраните в файл Historia.txt все команды, которые использовались до сих пор. Переименуйте его командой mv .Затем вернитесь в каталог «Копировать задачи». Переместите файлы с четными номерами в имени в папку «Задачи-копия/Задача-2».
  5. Добавьте последние 12 выполненных команд в файл history.txt. Скопируйте и переместите history.txt в директорию "Tasks/Task-1" под именем history.TXT
  6. Вернуться к рабочему столу. В каталоге рабочего стола найдите файлы с расширением .TXT.
  7. Используйте команду locate для поиска всех путей, содержащих слово net. Используйте grep -n , чтобы узнать, сколько таких строк.См. руководство о том, как работает команда wc .
  8. Список собственных процессов. Сравните вывод команд ps -a , ps -x и ps -ax . Проверьте, что делают переключатели -l и -u . Объясните работу ps -aux . Откройте новое окно терминала и выполните любую команду. Вернитесь к первому окну. Проверьте название расписания, в котором вы находитесь. Вам поможет команда: tty . Просмотрите иерархию процессов с помощью команды pstree .
  9. Попытка завершить процесс браузера на основе его PID
  10. Практика работы с трубами с помощью команды cat . Сохраните список процессов ps в файл 1.txt в каталоге «Задачи». Затем создайте файл 2.txt, содержащий список процессов с подробностями. Объедините содержимое этих файлов в файл 3.txt.
  11. Из файла 3.txt перепишите первые 6 строк в файл 4.txt. Перечислите все файлы на рабочем столе, сохраните список в файл 5.txt, который также будет находиться в каталоге «Задачи».Показать последние 4 строки.
  12. Показать строки, начинающиеся с номера из файла 5.txt. Показать все строки без цифр из файла 5.txt. Отображать строки из файлов с расширением .txt, содержащих строки со словом «abc».

Vim - упражнения:

  1. Скопируйте фрагмент Пана Тадеуша (например, 10 строк) и вставьте в новый файл.
  2. Номер всех строк
  3. Отредактируйте строки так, чтобы одно предложение находилось на одной строке.
  4. Скопируйте первые три строки.
  5. Вставьте скопированные строки 5 раз в конец файла.
  6. Удалить первые 3 строки текста.
  7. Удалить четыре копии первых строк в конце файла (пятую копию сохранить).
  8. Перейти к началу файла.
  9. Поиск ближайшего вхождения "до".
  10. Перейти в конец файла.
  11. Поиск ближайшего вхождения «!» в обратном направлении.
  12. Замените этот символ на "?".
  13. Перейти к пятой строке текста и удалить второе и третье слова.
  14. Заменить все "а" на "#" по всему тексту.
  15. Отменить последнюю операцию.
  16. Сохраните файл на диск.
  17. Удалите все пробелы из разрывов строк по всему тексту.
  18. Выйти из редактора без сохранения изменений в файле.

Полезные ссылки:

Codecademy - интерактивное руководство, содержащее команды unix с нуля

Learn Enough Command Line to Be Dangerous — юмористическая книга, в которой представлены наиболее важные функции терминала unix.

Учебная оболочка — основные команды Linux в книге, доступной бесплатно онлайн

Найти примеры команд 25 практических примеров использования команды найти

См. также:
Курс SQL 60 мин.

Дайте мне знать в комментариях, вам удалось пройти все это? 😉

Как вам такая форма записей - одна длинная запись? Чего-то не хватает? Может быть, вам тоже нужны команды Linux pdf? Могу подготовить загрузку инструкции в формате pdf.

.

Командная строка Linux для начинающих — Ubuntu PL

Мы запустим нашу первую команду. Щелкните мышью в окне, а затем введите следующую команду: все в нижнем регистре , прежде чем нажать клавишу Введите .
 фунтов стерлингов 

Вы должны увидеть напечатанный путь к каталогу (вероятно, что-то вроде / home / YOUR_USERNAME ), за которым следует еще одна копия этого странного фрагмента текста.

Перед тем, как мы перейдем к подробностям того, что на самом деле делает эта команда, нужно сказать несколько основ.Во-первых, когда вы вводите команду, она появляется в той же строке, что и нечетный текст. Этот текст говорит вам о том, что компьютер готов принять команду — так компьютер вас подсказывает. Фактически, это обычно называется приглашением , и иногда вы можете увидеть инструкции, в которых говорится «приглашение», «открыть командную строку», «командная строка bash» или что-то подобное. Это просто разные способы попросить вас открыть терминал, чтобы попасть в оболочку.

Что касается синонимов, еще один способ взглянуть на подсказку — сказать, что в терминале есть строка, в которой вы вводите команды. Командная строка, если хотите. Опять же, если есть какое-либо упоминание о «командной строке» — в том числе в заголовке этого руководства — это просто еще один способ говорить об оболочке, работающей в терминале.

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

Чувствительность к регистру
Будьте предельно осторожны с регистром при вводе в командной строке. Ввод PWD вместо pwd приведет к ошибке, но иногда из-за неправильного совпадения команда может казаться запущенной, но не работать должным образом. Мы рассмотрим это чуть позже, а пока обязательно вводите все следующие команды по мере их появления.

Чувство местоположения

Теперь о самой команде.Что такое рабочий каталог ?

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

Вы можете изменить рабочий каталог с помощью cd . Попробуйте ввести следующую команду:

 кд / pwd 

Обратите внимание, что разделителем каталогов является прямая косая черта ("/"), а не обратная косая черта, которую вы можете использовать в Windows или DOS

Теперь ваш рабочий каталог — «/». Если вы работали в Windows, вы, вероятно, привыкли к тому, что каждый диск имеет свою букву, а ваш основной жесткий диск обычно обозначается «C:».Системы Unix не используют такие диски совместно. Вместо этого у них есть одна унифицированная файловая система, и отдельные диски могут быть смонтированы («смонтированы») в любое место в файловой системе, которое имеет наибольший смысл. Каталог «/», часто называемый корневым каталогом , является основой этой унифицированной файловой системы. Оттуда все остальное разветвляется, образуя дерево каталогов и подкаталогов.

root
Примечание. Хотя каталог «/» иногда называют каталогом root , слово «root» имеет другое значение. root также имя, используемое для суперпользователя с самых первых дней Unix. Суперпользователь, как следует из названия, обладает большей властью, чем обычный пользователь, поэтому он может легко нанести ущерб команде с ошибкой. Мы более подробно рассмотрим учетную запись суперпользователя в разделе 7. Сейчас вам просто нужно знать, что слово «root» имеет много значений в мире Linux, поэтому важен контекст.

Из корневого каталога следующая команда перенесет вас в «домашний» каталог (который является прямым подкаталогом «/»):

 компакт-диск домой pwd 

Для перехода в родительский каталог — в данном случае обратно в «/» — используйте специальный синтаксис с двумя точками (.. ) при смене каталога (обратите внимание на пробел между cd и .. - в отличие от DOS, вы не можете просто набрать cd .. в одной строке):

 диск .. pwd 

Самозапись cd — это быстрый способ вернуться в домашний каталог:

 компакт-диск pwd 

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

 кд../ .. pwd 

Обратите внимание, что в предыдущем примере мы описали маршрут для обхода каталогов. Используемый нами путь означает «начиная с рабочего каталога, перейти к родительскому/вернуться к родительскому из этого нового местоположения». Итак, если бы мы хотели перейти прямо из нашего домашнего каталога в каталог «etc» (который находится непосредственно в корне файловой системы), мы могли бы использовать этот подход:

.
 компакт-диск pwd компакт диск ../../и т.д pwd 

Относительный и абсолютный пути

Большинство рассмотренных нами примеров используют пути относительные . То есть то, где вы окажетесь, зависит от текущего рабочего каталога. Подумайте о том, чтобы попробовать cd , чтобы перейти в папку «etc». Если вы уже находитесь в корневом каталоге, это будет работать нормально:

 кд / pwd компакт-диск и т. д. pwd 

Но что, если вы находитесь в своем домашнем каталоге?

 компакт-диск pwd компакт-диск и т. д. pwd 

Вы увидите сообщение об ошибке «Такого файла или каталога нет» еще до того, как вы введете последний pwd .Изменение каталога путем указания имени каталога или использования .. будет иметь разные эффекты в зависимости от того, где вы начинаете. Путь имеет смысл только в соотношении к рабочему каталогу.

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

 компакт-диск pwd компакт-диск / и т. д. pwd 

Это также дает нам еще один способ вернуться в домашний каталог и даже в папки в нем. Предположим, вы хотите перейти прямо в папку «Рабочий стол» из любого места на вашем диске (обратите внимание на заглавную букву «D»). В приведенной ниже команде вам нужно заменить USERNAME своим именем пользователя — whoami напомнит вам ваше имя пользователя, если вы не уверены:

 кто cd / home / ИМЯ ПОЛЬЗОВАТЕЛЯ / Рабочий стол pwd 

Есть еще один удобный ярлык, который работает как абсолютный путь.Как видите, использование «/» в начале пути означает «начиная с корня». Использование символа тильды ("~") в начале пути также означает "начиная с моего домашнего каталога".

 компакт-диск ~ pwd компакт-диск ~/рабочий стол pwd 

Теперь этот странный текст в подсказке может иметь какой-то смысл. Вы заметили, что он меняется при навигации по файловой системе? В Ubuntu он показывает ваше имя пользователя, сетевое имя вашего компьютера и ваш текущий рабочий каталог.Но если вы находитесь где-то в своем домашнем каталоге, он будет использовать «~» в качестве ярлыка. Давайте взглянем на файловую систему и будем следить за подсказкой:

.
 компакт-диск компакт диск / компакт-диск ~/рабочий стол компакт-диск / и т. д. кд/вар/журнал компакт диск .. продолжение 

4. Создание папок и файлов

В этом разделе мы будем создавать файлы для работы. Чтобы избежать случайного удаления каких-либо ваших реальных файлов, мы начнем с создания нового каталога вдали от вашей домашней папки, который будет служить более безопасной средой для экспериментов:
 мкдир/тмп/инструктаз cd/tmp/инструктаз 

Обратите внимание на использование абсолютного пути, чтобы убедиться, что мы создаем каталог учебника по адресу / tmp .Без косой черты mkdir попытается найти каталог tmp в текущем рабочем каталоге, а затем попытается создать каталог учебника в этом каталоге. Если он не может найти каталог tmp, , команда завершится ошибкой.

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

 mkdir dir1 dir2 dir3 

В этой команде есть что-то еще.До сих пор мы видели только команды, которые работают сами по себе ( cd , pwd ) или имеют один элемент позже ( cd / , cd ~ / Desktop ). Но в этот раз мы добавили три элемента mkdir . Эти вещи называются параметры или аргументы , и разные команды могут принимать разное количество аргументов. mkdir ожидает команду хотя бы с одним аргументом, тогда как cd может работать без или 1, но не более.Посмотрите, что происходит, когда вы пытаетесь передать неправильное количество параметров в команду:

 мкдир cd /etc ~/рабочий стол 

Вернуться к нашим новым каталогам. Приведенная выше команда создаст три новых подкаталога в нашей папке. Посмотрим на них командой ls ( l и s t):

 лс 

Если вы выполнили последние несколько команд, ваш терминал должен выглядеть примерно так:

Обратите внимание, что mkdir создал все папки в одном каталоге.Эта команда no создает dir3 внутри dir2 внутри dir1 . Но у mkdir есть способ сделать это:

 mkdir -p dir4 / dir5 / dir6 лс 

На этот раз вы увидите, что только dir4 были добавлены в список, потому что dir5 находится в dir4, а dir6 — в dir5. Мы установим удобный инструмент визуализации структуры позже, но у вас уже достаточно знаний, чтобы подтвердить это:

 компакт-диск dir4 лс компакт-диск dir5 лс продолжение./ .. 

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

 # Не вводите их, они здесь только для наглядности mkdir --parents --verbose dir4 / dir5 mkdir -p --verbose каталог4 / каталог5 mkdir -p -v dir4 / dir5 mkdir -pv dir4 / dir5 

Теперь мы знаем, как создавать несколько каталогов, передавая их в качестве отдельных аргументов в mkdir .Но предположим, мы хотим создать каталог с пробелом в имени? Попробуем:

 mkdir другая папка лс 

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

 mkdir "папка 1" mkdir 'папка 2' папка mkdir \ 3 mkdir "папка 4" "папка 5" mkdir -p "папка 6" / "папка 7" лс 

Создание файлов с помощью перенаправления

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

 лс 

Предположим, мы хотим зафиксировать вывод этой команды в виде текстового файла, который мы можем просмотреть или в дальнейшем манипулировать им. Все, что нам нужно сделать, это добавить символ «больше» («>») в конец нашей командной строки, за которым следует имя файла для записи:

.
 лс> вывод.текст 

На этот раз ничего не отображается на экране, потому что вывод перенаправляется в наш файл. Если вы запустите ls , вы увидите, что файл output.txt создан. Мы можем использовать cat , чтобы увидеть его содержимое:

 вывод кота.txt 

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

 эхо "Это тест" 

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

.
 эхо "Это тест"> test_1.txt echo "Это второй тест"> test_2.txt echo "Это третий тест"> test_3.txt лс 

Размер письма

Unix-системы чувствительны к регистру, то есть «A.txt» и «a.txt» — это два разных файла. Если бы вы запустили следующие строки, вы бы получили три файла:

 эхо "Нижний регистр"> a.txt эхо "Верхний регистр"> A.TXT echo "Смешанный регистр"> A.txt 

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

Возможно, вам захочется просто нажать Caps Lock и написать все имена файлов с заглавной буквы. Однако подавляющее большинство команд оболочки написаны строчными буквами, поэтому вам часто приходилось включать и выключать их по мере ввода. Большинство опытных пользователей командной строки, как правило, в основном используют строчные буквы в своих файлах и каталогах, поэтому им редко приходится беспокоиться о конфликтах имен файлов или о том, какие буквы применять для каждой буквы в имени.

Надлежащая практика именования файлов
Рекомендуется использовать в именах файлов только строчные буквы, цифры, знаки подчеркивания и тире. Для файлов обычно также имеется точка в конце и несколько символов для обозначения типа файла («расширение файла»). Эти рекомендации могут показаться ограничительными, но если вы в конечном итоге будете использовать командную строку ежедневно, вы будете рады, что придерживаетесь ее.

5. Перемещение файлов и управление ими

Теперь, когда у нас есть несколько файлов, давайте взглянем на ежедневные задачи, которые вы можете выполнять.На практике вы, скорее всего, по-прежнему будете использовать свою графическую программу, когда захотите переместить, переименовать или удалить один или два файла, но знание того, как сделать это с помощью командной строки, может быть полезно для массовых изменений или когда файлы распределены по разным папки. Кроме того, по ходу дела вы узнаете еще кое-что о командной строке. Давайте начнем с помещения файла Combined.txt в каталог dir1 , используя mv :
 мВ вместе взятых.тхт каталог1 

Удалить файлы и папки

Предупреждение
В следующем разделе мы начнем удалять файлы и папки. Чтобы быть абсолютно уверенным, что вы случайно ничего не удалили из своей домашней папки, используйте pwd , чтобы дважды проверить, что вы все еще находитесь в каталоге / tmp / tutorial , прежде чем продолжить.

Теперь мы знаем, как перемещать, копировать и переименовывать файлы и каталоги. Немного подчистим с помощью команды rm ( r e m ove):

 п.м. дир4/дир5/дир6/комбинированный.txt в сочетании_backup.txt 

Возможно, нам также следует удалить некоторые из этих избыточных каталогов:

 rm папка_ * 

Что здесь произошло? Получается, что rm имеет безопасность. Конечно, вы можете использовать его для удаления каждого отдельного файла в каталоге с помощью одной команды, удаляя тысячи файлов одновременно, без возможности их восстановления. Но это не позволит вам удалить каталог. К счастью, есть rmdir , который выполнит эту работу:

 папка rmdir_ * 

Полное удаление всего из каталога дает нам аргумент -r

 rm -r папка_6 лс 

Помните: хотя rm -r быстр и удобен, он также опасен..

Важное предупреждение
В отличие от графических интерфейсов, rm не перемещает файлы в папку с именем «Корзина». Вместо этого он удаляет их полностью, полностью и безвозвратно. Вы должны быть очень осторожны с параметрами, которые вы используете, чтобы убедиться, что вы удаляете только те файлы, которые собираетесь удалить. Будьте особенно осторожны при использовании подстановочных знаков, так как легко случайно удалить больше файлов, чем предполагалось. Неправильный пробел в вашей команде может ее полностью изменить: rm t * означает «удалить все файлы, начинающиеся с t », а rm t * означает «удалить файл t и любой файл, чье имя состоит из нуля или более символов - это было бы все в каталоге!

6.Командная строка и администратор

Одной из веских причин для изучения основ командной строки является то, что онлайн-инструкции часто отдают предпочтение командной оболочке, а не графическому интерфейсу. Если эти инструкции требуют внесения изменений в ваш компьютер, выходящих за рамки изменения нескольких файлов в вашем домашнем каталоге, вы неизбежно столкнетесь с командами, которые должны выполняться от имени администратора компьютера (или суперпользователя в Unix). Прежде чем вы начнете выполнять какие-либо команды, которые вы найдете в темном углу Интернета, полезно понять последствия действий администратора и узнать, как работают инструкции, чтобы вы могли лучше судить, безопасно ли их выполнять или нет.Суперпользователь, как следует из названия, имеет супер-привилегии. В старых системах это был настоящий пользователь с реальным именем пользователя (почти всегда «root»), в который вы могли войти, как если бы у вас был пароль. Что касается этих сверхспособностей: root могут изменять или удалять любые файлы в любом каталоге системы, независимо от того, кому они принадлежат; root может переписать правила брандмауэра или запустить сетевые службы, которые потенциально могут открыть машину для атаки; root может выключить машину, даже если ею все еще пользуются другие люди.Короче говоря, root может делать все , легко обходя обычные меры безопасности, чтобы пользователи не превышали свои привилегии.Все остальные. Журналы компьютерной истории заполнены рассказами о неправильно написанной команде, удаляющей всю файловую систему или убивающем важный сервер. Существует также вероятность злонамеренной атаки: если пользователь войдет в систему как root и покинет компьютер, недовольный коллега может запрыгнуть на машину и нанести ущерб.Несмотря на то, что человеческая природа такова, многие администраторы на протяжении многих лет использовали root в качестве основной или единственной учетной записи.

Не использовать root
Если кто-то попросит вас включить учетную запись root или войти в систему как root , будьте очень подозрительны к их намерениям.

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

Минимизируя количество времени, затрачиваемое на вход в систему как root , использование опции su снижает вероятность катастрофической ошибки. Несмотря на то, что человеческая природа такова, многие администраторы виноваты в том, что оставляют открытыми терминалы, где они использовали su account root . В этом отношении su был лишь небольшим шагом вперед в обеспечении безопасности Linux-систем.

Не используйте su
Если кто-то попросит вас использовать su , будьте осторожны. Если вы используете Ubuntu, учетная запись root по умолчанию отключена, поэтому su без параметров работать не будет. Но все же не стоит рисковать в случае, если учетная запись будет включена без вашего ведома.

При использовании su вся терминальная сессия переключается на другого пользователя. Команды, которым не нужен доступ к root — такие обыденные, как pwd или ls — будут выполняться под эгидой администратора, что увеличивает риск ошибки в программе, вызывающей серьезные проблемы.Хуже того, если вы потеряете контроль над тем, какого пользователя вы используете в данный момент, вы можете выполнить команду, которая будет довольно осторожной, когда она запускается от имени пользователя, но которая может разрушить всю вашу систему, если она запустится как root .

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

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

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

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

 кот/и т.д/тень sudo cat /etc/shadow 

Если вы введете пароль при появлении запроса, вы должны увидеть содержимое /etc/shadow в файле .Теперь очистите терминал, набрав reset и снова запустите sudo cat /etc/shadow . На этот раз файл будет отображаться без запроса пароля, так как он все еще находится в кеше.

Остерегайтесь sudo
Если вам предлагается запустить команду sudo , убедитесь, что вы понимаете, что делает команда, прежде чем продолжить. Запуск sudo с с помощью этой команды дает те же привилегии, что и суперпользователь (root).

В инструкциях Ubuntu часто появляется sudo с , устанавливающим новое программное обеспечение в системе с помощью команд apt или apt-get . Если ваши инструкции требуют, чтобы вы сначала добавили новый репозиторий программного обеспечения в свою систему — с помощью команды apt-add-repository , редактирования файлов / etc / apt или с помощью «PPA» (Personal Package Archive) — будьте осторожны, так как они Исходники система и обновления приложений летают.Но часто инструкции требуют от вас только установки программного обеспечения из стандартных репозиториев, что должно быть безопасным.

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

Иногда файлы приложений поступают из-за пределов репозиториев дистрибутива и включают (но не ограничиваются) использование любой из следующих команд: curl , wget , pip , npm , make.

Ubuntu все чаще использует моментальные снимки — новый формат пакета, который предлагает некоторые улучшения безопасности за счет более жесткого ограничения программ, чтобы предотвратить их доступ к частям системы, которые им не нужны.Но некоторые параметры могут снизить безопасность, поэтому, если вам будет предложено запустить snap install , стоит внимательно проверить, что делает эта команда.

8. Скрытые файлы

Прежде чем мы закончим этот урок, стоит упомянуть скрытые файлы (и папки). Они обычно используются в системах Linux для хранения настроек и данных конфигурации и обычно скрыты, чтобы не загромождать ваши файлы. В скрытом файле или папке нет ничего особенного, кроме его имени: просто добавьте точку (".») Чтобы он исчез.
 кд/тмп/инструктаз лс mv в сочетании.txt .combined.txt лс 

Вы по-прежнему можете работать со скрытым файлом, поставив точку при указании имени файла:

 кот .combined.txt mkdir .скрытый mv .combined.txt .скрытый меньше .hidden/.combined.txt 

Когда вы запустите ls , вы увидите, что .hidden , как и следовало ожидать, скрыто. Вы все еще можете отобразить его содержимое с помощью ls.hidden , но поскольку он содержит только один файл, который сам является скрытым, вы не получите много вывода. Но вы можете использовать -a (показать становится ll).

 лс лс -а лс .скрытый ls -a .скрытый 

Что касается нашего недавно установленного дерева , то оно работает аналогично:

 дерево дерево -а 

Вернитесь в домашний каталог ( cd ) и попробуйте запустить ls без, а затем с -a .Просмотрите вывод c -l , чтобы лучше понять, сколько скрытых файлов и папок все время было у вас под носом. Эти файлы обычно хранят вашу личную конфигурацию, и поэтому системы Unix всегда предлагали возможность иметь настройки системного уровня (обычно в /etc ), которые могли быть перезаписаны отдельными пользователями (благодаря скрытым файлам в их домашнем каталоге).

9. Очистка

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

 rm -r /tmp/инструкция лс / тмп 

Наконец, давайте закроем терминал. Можно просто закрыть окно, но лучше выйти из оболочки. Вы можете использовать выход из системы или сочетание клавиш Ctrl-D . Если вы планируете много пользоваться терминалом, вспомнив Ctrl-Alt-T, для запуска терминала и Ctrl-D, для его закрытия, вы вскоре почувствуете себя как дома...

.

наиболее часто используемых и наиболее важных команд

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

Автор:
© и отредактировано Петром Дуткевичем

Список команд:
arch - отображает информацию о сборке компьютера, на котором вы работаете
awk - интерпретатор скриптового языка программирования
bzip2 (*.bz2) - высокоэффективный компрессор
cal - настройки даты
cat - перенаправляет потоки данных (например, слияние файлов cat file1 file2> file12
cd - изменение каталога (без параметра: изменение каталога пользователя)
chown !- установка владельца файла
chmod - установка прав доступа к файлу, так называемых атрибутов
clear - очистка окна терминала
cmp - сравнение файлов
копия - копирование файлов и каталогов
cp
- копирует файлы вырезает - вырезает выделенный фрагмент каждой строки файла
date - отображает или изменяет dat
dd - конвертирует и копирует файлы
du
df 0 occupancy
- информирует о свободных блоках на диске
dircmp - сравнивает каталоги
dmesg !! - перечисляет все сообщения отображаемые при запуске системы 90 004 echo - отправка аргументов на стандартный вывод
elm - почтовая программа
exit - выход из консоли
fdisk !! - управление разделами диска
fetchmail ! - управление внешней почтой
файл - проверка файла
найти - поиск файла, каталога
палец ! - найти информацию о пользователе
fsconf !! - программа для изменения настроек файловой системы
fsck !! - восстановление файловой системы
ftp - простой клиент ftp
gcc - компилятор языка c
gnus - браузер новостей
grep - поиск регулярных выражений
gzip (*.гз) - компрессор
например, gzip -9v * сжимать отдельные файлы в каталоге с максимальной эффективностью, перезаписывая старые.
голова - показать начальную часть файла
привет - отправить короткий текст на экран получателя
хост - дать информацию о "сетевых" данных компьютера
имя хоста ! - отображение или изменение имени компьютера
ipcalc - программа, позволяющая выполнять операции с ip адресами
irc - клиент irc
joe - текстовый редактор
join - специальное объединение файлов
информация О примерно ядра
Kill - Убийство процесса
ПК - Копировать файл
PS - Управление процессами
Меньше - текстовый браузер, прокрутка с обеих сторон
LFTP - хороший FTP Client
Lilo !! - менеджер загрузки (Linux Loader)
ссылки - веб-браузер, отличная поддержка таблиц
ln ! - создает символические ссылки, т.н.ссылки
loadkeys - загружает новую раскладку клавиатуры, например, польскую
locate - эквивалент where
logout - выход из консоли
ls - отображает содержимое каталога browser
900 03002 lynx www 9000!! - компиляция ядра
man - отображает руководство программы, указанной в параметре
mesg - включает и отключает ответ на вызовы
mc - файловый менеджер: midnight Commander
mkdir - создает новый каталог
mkfs 9003 мкфс - форматирование файловой системы
подробнее - текстовый браузер, прокрутка в d
месиво - программа электронной почты
mutt - расширенная программа электронной почты и новостей
подробнее - программа для отображения файла на экране

3 mount ! ! - монтирует диски/диски
mv - переименовывает/перемещает файл
newgrp ! - смена группы текущего пользователя
пакет - простой компрессор
пароль ! - установка пароля
паста - файловые строки
pine - удобная почтовая программа
ping - отправка тестовых пакетов
procmail - средство управления почтой
ps текущий каталог 902 pp04 - отображение информации о процессах 90dd0 path
quota - проверить/установить лимит размера учетной записи
rm - удалить файлы
rmdir - удалить пустой каталог
rpm !! - устанавливает пакеты rpm
scp - удаленная копия зашифрованного файла
экран - открывает новые окна консоли при удаленной работе
sed - включает расширенный способ замены текстовой строки на другую
setenv ! - устанавливает локальную/глобальную переменную
setterm - настройки консоли
sort - сортирует строки в файле
split - создает один или несколько файлов из входного файла
ssh - secure telnet т.н.безопасная оболочка
startx !! - запускает x-window
su !! - позволяет работать с правами root
slrn - хорошие новости и почтовый клиент
tail - отображение конечной части файла
talk - вызов получателя в общий чат в режиме реального времени
tar - файловый архиватор, повышает эффективность сжатия, например: gzip, bzip2
например 1: tar -cz ./dir/> archive.tar.gz
например 2: tar --use-compress-program = bzip2 -c./directory/>archive.tar.bz2
telnet - клиент telnet
tin - клиент электронной почты и новостей
top - отображает загрузку ЦП отдельными процессами
touch - обновляет дату файла
tr - изменить или удалить символы
uniq - удалить повторяющиеся строки из отсортированных файлов
распаковать - распаковать файлы, запакованные 'pack'
разархивировать - распаковать файлы.почтовый индекс
например: unzip -o -u file.zip распаковывает в текущий каталог, перезаписывает старый
время безотказной работы без подтверждения - сообщает, как долго работает компьютер
в - отображает "кто чем занимается" строки, sw, символы в указанных файлах
wget - сборщик файлов, поддержка ftp, http
например, wget -r -l1 -A gif, jpg http://programy.com/list.html
где - указывает путь к искомой программе
где - другое имя команды где
which - указывает путь к искомой программе
who - информирует о зарегистрированных пользователях
whodo - кто делает
пишет - отправляет несколько строк текста на экран получателя одновременно
vi - сложный текстовый редактор, доступный во всех версиях unix

.

Системных команд в терминале | Курс Линукс

МИРОСЛАВ ЗЕЛЕНТ

Расписание лекций: команды терминала, системное руководство, разрешения, сжатие, архивирование, скрытие файлов, sudo su, ps, kill, chmod, chown, tar, gzip, whoami, ls, mkdir, rmdir, cp, mv, rm, cd, pwd, найти, коснуться, переименовать, кот, ln, привязки, терминальные упражнения.

Использование терминала

После запуска терминала пользователь получает т.н.приглашение оболочки, например $ или #. Увидев подсказку, вы готовы начать вводить команды для своей системы.

История выполненных команд сохраняется в домашнем каталоге пользователя в файле .bash_history . Чтобы вызвать самые последние использованные команды при использовании терминала, используйте клавиши [↑] , [↓] . Стоит помнить про опцию автозаполнения, которую мы используем по нажатию клавиши [Tab] .Чтобы прервать команду, используйте комбинацию клавиш [Ctrl] + [C] .

Глобальные символы
Подобно Windows, в Linux есть специальные символы, которые заменяют другие символы, полезные, например, при поиске файлов.

Основные глобальные символы:

  • * представляют один или несколько символов
  • ? представляет ровно один символ
  • [abcde] представляет ровно один символ из следующих
  • [a-e] представляет ровно один символ из диапазона
  • [!Abcde] представляет любой неупомянутый символ
  • A-e] представляет символ, не входящий в диапазон
  • {файл, файл} представляет любую из следующих строк

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

  • *.bmp представляет все файлы, оканчивающиеся на .bmp
  • ? [0-9] [a-d] представляет файл с трехсимвольным именем, где первый символ — любой, второй — число, а третий — буква из диапазона a-d
  • {new , new} *.txt представляет все файлы, начинающиеся с new или new являющиеся txt файлами
System manual
(manual) чаще всего устанавливаются вместе с системой, содержит описания конкретных системных команд.Для прокрутки текста используйте следующие клавиши: [↑] , [↓] , и выйдите из описания, нажав клавишу [Q] . Новая улучшенная версия руководства man называется info . Сокращенная версия справки также доступна после ввода команды: -help . Чтобы вызвать руководство, например, для команды ls , мы можем использовать следующий синтаксис: man ls , info ls , ls -help .

Вход в систему как root

Во многих дистрибутивах мы входим в учетную запись root с помощью команды sudo su:

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

Примечание: Подсказка изменилась - мы стали суперпользователем (наш терминал стал консолью), поэтому вместо знака $ $ у нас теперь #.

Специальные маркировки в путях доступа

Специальные маркировки облегчают навигацию между каталогами:

  • ~ домашний каталог вошедшего в систему пользователя
  • / корневой каталог
  • . текущий каталог
  • .. непосредственный родительский каталог

Эти символы можно использовать непосредственно в путях доступа, например: cd ~/Public/folder , touch ~/Documents/file.текст .

Команды, относящиеся к множественному доступу:

whoami
(кто я) дает текущий идентификатор учетной записи системные пользователи
su
(от англ. switch user) позволяет сменить пользователя, т.е. войти в другую учетную запись в системе

Команды многозадачности:

8 psпроцессы) отображает список процессов в системе
kill
безопасно удаляет процесс с заданным номером PID ("безопасно" здесь означает освобождение всей области памяти, занимаемой процессом, и закрытие файлов, открытых для процесса )

Команды, относящиеся к управлению файлами и каталогами:

ls
(с английского) отображает список содержимого каталога
mkdir
0 903 (с английского)Справочный каталог) Create Directory
RMDIR
(Справочный каталог) Удалить каталог, если пуст
CP
Файл
  • . файл
  • rm
    (удалить) удалить файл
    cd
    (изСправочник по изменению) Изменение текущего рабочего каталога
    PWD
    (из Print Work Directory) Отображает путь к текущему рабочему каталогу
    Найти
    Поиск для файлов
    77 700389
    SURES для файлов
    99992777 70038
    .
    (название происходит от Unix, где эта команда изменила дату последней модификации файла на текущую) создает файл
    переименовать
    (анг.переименовать) переименовать несколько файлов
    cat
    отображает содержимое файла (например, текст), также может объединить два файла в один

    Ссылки. Типы ссылок

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

    Linking commands:

    ln
    makes a hard link
    ln -s
    (symbolic link) creates a symbolic link

    Hidden files

    Hidden file
    файл или каталог, по умолчанию скрытый от пользователя.Затем его имя начинается с точки. Чтобы отобразить файлы, скрытые в терминале, используйте команду ls -a. Для отображения скрытых файлов в графическом режиме используйте комбинацию [Ctrl] + [H] .

    Права доступа к файлам и каталогам

    Каждый файл и каталог в Linux имеет 10 бит защиты. Чтобы увидеть права доступа к файлу в терминале, просто используйте команду:

    ls -l
    отображает список содержимого каталога, давая 10 битов защиты для каждого ресурса на экране
    • бит 1 - тип файла: d (каталог, т.е. каталог), - (файл), l (ссылка)
    • бит 234 - права владельца файла: r (чтение), w (запись), x (выполнить)
    • бит 567 - авторизации группы, к которой принадлежит владелец: r , w , x
    • бит 8910 - авторизации других пользователей в системе:

    0 0, 0, 10, r , w w , x

    Управление авторизацией

    chmod
    команда для администрирования разрешений

    разрешение на запись в (запись) в файл файл.txt владельцу u (пользователь), его группе g (группа) и всем остальным пользователям o (остальные).

    Права доступа также могут быть представлены числами. Возможные комбинации:

    • ---- = 0 Нет права
    • -X = 1 Право на запуск
    • -W -W -W -W -W -W -W -W -W -W -W -W -W. 2 Напишите правый
    • -WX . = 3 Запись и запустить вправо
    • R- = 4 Прочтите справа
    • R-X = 5 Прочтите и запустите справа
    • RW- = 6 Прямо на чтение и напишите
    • RW- = 6 . rwx = 7 права на чтение, запись и запуск

    Трехзначное число означает права: владельца, группы и других пользователей:

    Владельцы коллекций

    chown 2 англ.change owner) команда для смены владельца набора

    Синтаксис: chown user: group file . Обратите внимание, что только администратор набора может передать право собственности на набор другому пользователю, и что смена владельца набора может изменить разрешения для данного набора!

    Архивация файлов

    tar
    программа для архивации данных

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

    Синтаксис: tar options имя файла архива . Наиболее часто используемые опции:

    • c (создать) - создать архив
    • v (просмотреть) - при создании архива будут отображаться имена файлов
    • f (файл) - use the selected file as the archive
    • x - extracting files from the archive

    File compression

    gzip (gunzip)
    resource compression (decompression) program

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

    В Linux существует множество программ для сжатия файлов. Наиболее часто используется программа gzip . Синтаксис: . Сжатый файл архива будет называться имя_архива.tar.gz tgz ).Мы можем сжимать файлы или целые папки с подпапками. Вы можете использовать tar с параметром -z , который создаст сжатый архив с tar .

    • c (создать) - создание архива
    • v (просмотреть) - при создании архива будут отображаться имена файлов
    • f (файл) - использование выбранного файла в качестве архив
    • x - извлечение файлов из архива

    Упражнение 1 - множественный доступ

    • Проверить, какие пользователи в настоящее время вошли в систему
    • Открыть терминал и консоль
    • С помощью команды записи write в консоли сообщение, которое будет отправлено на терминал
    • С помощью команды стены напишите сообщение в консоли, которое будет отправлено всем зарегистрированным пользователям

    Упражнение 2 - многозадачность

    • Проверьте, какие процессы запущены в системе
    • Открыть два терминала
    • Убить один из терминалов командой kill -9
    • Завершить процесс, запущенный roota

    Упражнения т.е. 3 - создание файлов и каталогов

    • Создайте следующую структуру каталогов в вашем домашнем каталоге (используя только терминал):

    Упражнение 4 - Поиск файлов

    • Поиск всех текстовых файлов в неделю и корневой каталог
    • Найти коллекции, принадлежащие вам
    • Найти файлы file1 и file2.txt в домашнем каталоге
    • Найдите файлы с паролями: passwd

    Упражнение 5. Скрытие файлов

    • Скройте файл Weekend.txt с помощью терминала.

    Источники

    Следующие источники помогли мне подготовить эту лекцию:

    • Операционные системы и компьютерные сети. Т. 1. ПОБИ. Кшиштоф Пытель, Сильвия Осетек
    • Операционные системы и компьютерные сети. Т. 2. ПОБИ. Кшиштоф Пытель, Сильвия Осетек
    .

    Как запустить Ubuntu в режиме командной строки?

    Откройте текстовую виртуальную консоль с помощью сочетания клавиш Ctrl + Alt + F3. При входе: введите свое имя пользователя и нажмите Enter. В поле Пароль: введите пароль пользователя и нажмите Enter. Теперь вы вошли в текстовую консоль и можете запускать команды терминала из консоли.

    Как запустить Linux из командной строки?

    В Ubuntu и некоторых других вы можете увидеть маленький значок терминала в левой части экрана.Во многих системах вы можете открыть командное окно: , нажав одновременно Ctrl + Alt + t . Вы также окажетесь в командной строке, если войдете в Linux с помощью такого инструмента, как PuTTY.

    Как запустить Ubuntu в обычном режиме?

    Используйте режим восстановления, если у вас есть доступ GRUB

    С помощью клавиш со стрелками выберите «Ubuntu ... (режим восстановления)» в подменю и нажмите Enter. GRUB загрузит Ubuntu в самое минимальное меню режима восстановления, минуя большинство системных служб и все загруженные графические приложения.

    Как запустить Ubuntu без графического интерфейса?

    6 ответов

    1. Закройте все открытые приложения.
    2. нажмите Ctrl+Alt+F2.
    3. Войдите под своим именем пользователя и паролем.
    4. Остановите сервер дисплея и X-сервер, выполнив команду sudo service lightdm stop.

    Что такое командная строка в Ubuntu?

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

    Что такое команда в Linux?

    Общие команды Linux

    команда Описание
    ls [опции] Список содержимого каталога.
    мужской [команда] Показать справочную информацию для указанной команды.
    каталог mkdir [параметры] Создать новый каталог.
    mv [опции] источник назначения Переименовать или переместить файл(ы) или каталоги.

    Что такое режим восстановления в Ubuntu?

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

    Как включить SSH в Ubuntu?

    Процедура установки ssh-сервера в Ubuntu Linux следующая:

    1. Откройте терминальное приложение для рабочего стола Ubuntu.
    2. Для удаленного сервера Ubuntu для доступа к консоли необходимо использовать утилиту BMC, KVM или IPMI.
    3. Введите sudo apt-get install openssh-server.
    4. Включите службу ssh, введя sudo systemctl enable ssh.

    Как запустить Ubuntu в графическом режиме?

    Запустится цветной интерфейс.Используйте клавишу со стрелкой, чтобы прокрутить список и найти свой рабочий стол Ubuntu. Используйте ПРОБЕЛ, чтобы выбрать , нажмите Tab, чтобы выбрать OK внизу, затем нажмите Enter. Система установит программное обеспечение и перезагрузится, чтобы отобразить графический экран входа в систему, созданный менеджером дисплея по умолчанию.

    Есть ли у Ubuntu Server графический интерфейс?

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

    .

    Linux: основы командной строки

    Основная информация о командной строке или терминале в Linux.

    Большинство команд, которые мы выполняем в командной строке, состоят из трех основных элементов:

    • команда
    • опции
    • аргументов

    sudo — программа, позволяющая запускать программу от имени другого пользователя, чаще всего используется для запуска программы с правами администратора

    Запустить терминал в графическом окружении:

    Root - суперпользователь, встроенная учетная запись в системе с полными привилегиями.
    Войдя в систему как другой пользователь и желая работать с полными привилегиями, мы можем войти в учетную запись root с помощью команды su root. Вы будете делать это как root, пока не воспользуетесь командой exti или logout.

    С помощью команды su вы можете войти в учетную запись любого пользователя (если вы знаете пароль).

    Root может войти в аккаунт любого пользователя, не зная пароля.

    Выход

    перенаправление

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

    ls> результат (записать команду ls в файл результатов)

    90 043 лата.. > результат кот результат Документы примеры.рабочий стол Музыка Картинки Скачано Общественный Рабочий стол Шаблоны видео

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

    .

    ls >> результат (добавление результата команды ls в конец файла)

     лс .. >> результат кот результат Документы примеры.рабочий стол Музыка Картинки Скачано Общественный Рабочий стол Шаблоны видео Документы Примеры.рабочий стол Музыка Картинки Скачано Общественный Рабочий стол Шаблоны видео 

    Местоположение программы

    который - где находится программа в системе

    whereis — также находит исходники и руководства, доступные в системе

    .
     какой фаерфокс /usr/bin/фаерфокс где фаерфокс firefox: /usr/bin/firefox/etc/firefox/usr/lib/firefox/usr/bin/X11/firefox/usr/share/man/man1/firefox.1.gz 

    Навигация по каталогам

    pwd - отображение текущего местоположения

    cd ~ (тильда) — переход в домашний каталог пользователя

    кд.. - переход на один каталог выше в иерархии дерева каталогов

    cd - (минус) - переход в предыдущий каталог

    cd/ - переходит в основной каталог

    Выполните упражнение: НАЖМИТЕ

    dir, ls — вывести содержимое каталога

    tree - отображение дерева каталогов

    pushd - операция аналогична cd (смена каталога), дополнительно добавляет в список следующие посещенные каталоги

    popd - удаление последней директории в списке и переход в нее

     студент @ студент: ~/Кафедра $mkdir -p ~/Кафедра/животные/кот ~/Кафедра/животные/собака студент @ студент: ~ / Pulpit $ dir Животные студент @ студент: ~/Кафедра $pushd ~/Кафедра/животные/кошка ~ / Рабочий стол / Домашние животные / Кошка ~ / Рабочий стол студент @ студент: ~/Кафедра/животные/кот $pushd~/Кафедра/животные/собака ~ / Кафедра / домашние животные / собака ~ / Кафедра / домашние животные / кошка ~ / Кафедра студент @ студент: ~ / кафедра / животные / пироги $ popd ~ / Рабочий стол / Домашние животные / Кошка ~ / Рабочий стол студент @ студент: ~/кафедра/животные/кошка $ popd ~ / Рабочий стол студент @ студент: ~ / Pulpit $ rm animals -r 

    Кстати...
    mkdir - создать каталог
    mkdir -p - создать несколько каталогов/структуру каталогов одной командой
    rm -r - удалить непустой каталог

    Ссылки

    Hard - ссылки/указатели/разные имена на один и тот же файл.Файл будет удален, как только будут удалены все жесткие ссылки.

     l существующая_файловая жесткая ссылка 

    Symbolic (soft, symlink) — указание другого файла или каталога по имени.

     ln -s существующий_файл символическая_ссылка 

    Установить пакеты

    подходящая установка имя_пакета

     подходит --help ап 1.2.25 (амд64) Использование: команда apt [options] apt — это менеджер пакетов командной строки, предоставляющий команды для поиск и управление, а также запрос информации о пакетах.Он обеспечивает ту же функциональность, что и специализированные инструменты APT, как apt-get и apt-cache, но включает опции, более подходящие для интерактивное использование по умолчанию. Часто используемые команды: list - список пакетов на основе имен пакетов search - поиск в описаниях пакетов show - показать детали пакета установить - установить пакеты удалить - удалить пакеты Autorove — автоматически удаляет все неиспользуемые пакеты update - обновить список доступных пакетов upgrade - обновить систему путем установки/обновления пакетов full-upgrade - обновить систему удалением/установкой/обновлением пакетов edit-sources - редактировать файл исходной информации 

    Например:

     студент @ студент: ~ / Кафедра $ дерево Дерево в настоящее время не установлено.Вы можете установить его, набрав: дерево установки sudo apt студент @ студент: ~ / Pulpit $ sudo apt install tree [sudo] студенческий пароль: Чтение списков пакетов... Готово Построение дерева зависимостей Чтение информации о состоянии... Готово Будут установлены следующие НОВЫЕ пакеты: дерево 0 обновлено, 1 установлено заново, 0 удалено и 25 не обновлено. Необходимо скачать 40,6 КБ архивов. После этой операции будет использовано 138 кБ дополнительного дискового пространства.Скачать: 1 http://pl.archive.ubuntu.com/ubuntu xenial/universe amd64 tree amd64 1.7.0-3 [40,6 кБ] Загрузка 40,6 КБ за 8 с (4539 Б/с) Выбор ранее невыбранного дерева пакетов. (Чтение базы данных... в настоящее время установлено 177 580 файлов и каталогов.) Подготовка к распаковке пакета... /tree_1.7.0-3_amd64.deb... Распаковка пакета дерева (1.7.0-3)... Пакет обработки запускает man-db (2.7.5-1) ... Настройка пакета дерева (1.7.0-3) ... студент @ студент: ~ / Pulpit $ дерево . ├── каталог1 │ └── файл4 ├── каталог2 │ └── файл5 ├── файл1 ├── файл2 └── файл3 2 каталога, 5 файлов 

    .

    Смотрите также

    Только новые статьи

    Введите свой e-mail

    Видео-курс

    Blender для новичков

    Ваше имя:Ваш E-Mail: