Командная строка linux для новичков. видео

Оболочки, Bash, echo Linux

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

Доступны различные оболочки, но самая распространенная из них называется bash, что означает «Bourne again shell». В этом руководстве предполагается, что вы используете bash в качестве оболочки.

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

Различия между командами apt и apt-get

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

1) Синтаксис команд apt и apt-get

Наиболее очевидным отличием является способ синтаксиса команды. Например, чтобы обновить списки пакетов или индекс пакетов с помощью apt, выполните следующую команду:

А при использовании команды apt-get требуется ввести команду:

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

Операция apt-get пригодный
Списки пакетов обновления apt-get update apt update
Установить пакет apt-get install package-name apt install package-name
Удалить пакет apt-get remove package-name apt remove package-name
Пакеты обновления apt-get upgrade apt upgrade
Поисковые пакеты apt-cache search package-name apt search package-name
Отображение информации о пакете apt-cache show package-name apt show package-name
Удаление нежелательных пакетов apt-get autoremove apt autoremove
Очистите пакет вместе с его конфигурационными файлами apt-get purge apt purge

2) Интуитивно понятный и более информативный вывод

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

Команда sudo apt update

Далее введем команду upgradable

Ввод команды apt list —upgradable

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

Команда apt upgrade

3) Дополнительные команды с APT

Есть еще пара вариантов команды, которые поставляются вместе с APT.

apt list: эта команда перечисляет установленные, доступные и обновляемые пакеты.

apt edit-sources: когда команда выполняется в первый раз, она представляет вам список текстовых редакторов, которые вы можете использовать для открытия и редактирования файла списка источников – /etc/apt/sources.list. Как только вы выберете нужный вариант, вы сможете непосредственно отредактировать файл для последующего выполнения команды.

Сочетания клавиш эмулятора терминала

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

1. Ctrl + Alt + T

С помощью этого сочетания клавиш можно открыть терминал в большинстве дистрибутивов, основанных на Ubuntu и Debian. Это просто, быстро и удобно.

2. Ctrl + Shift + С и Ctrl + Shift + V

Копирование и вставка — очень важные функции операционной системы. Сочетание клавиш Ctrl + C просто не может работать для копирования, потому что оно используется для завершения команды, поэтому для копирования и вставки была добавлена клавиша Shift.

3. Ctrl + Shift + F

Если вам надо выполнить поиск по выводу в терминале можно воспользоваться сочетанием Ctrl + Shift + F. После нажатия откроется окно ввода, в котором вы можете ввести искомое слово.

4. Shift + ЛКМ и Shift + ПКМ

Здесь ЛКМ и ПКМ — это правая и левая кнопка мышки. Такие программы, как screen и tmux в режиме поддержки работы мышью захватывают контроль мышки и вяжут на неё свои функции. Таким образом обычное копирование и вставка могут стать проблемой. Чтобы этого избежать можно выделять текст сочетанием клавиш Shift + ЛКМ и открывать контекстное меню с помощью Shift + ПКМ.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Или:

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

Содержимое файлов

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

cat file1 | more

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

С русскоязычной документацией nano вы можете ознакомиться по этой ссылке: http://help.ubuntu.ru/wiki/nano

А документация vim доступна в этом разделе: http://help.ubuntu.ru/wiki/vim

Как создать файл через терминал

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

Как создать пустой файл? Это легко сделать, если ввести в терминале следующую комбинацию:

Что происходит дальше? Утилита touch поможет добавить новый пустой объект с указанием даты создания и прав доступа. Чтобы не создавать каждый новый объект по отдельности, нужно ускорить процесс. Для этого задайте вот такую команду:

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

Как только команда будет выполнена, пользователь должен ввести определенные символы для записи в файл. Чтобы сохранить внесенные правки, необходимо нажать перед выходом Ctrl+D.

Как создать текстовый файл в Линукс? Для этих целей прибегнем к консольному текстовому редактору nanо. Запустите редактор и пропишите в нем текст на свое усмотрение.

Для тех, кто не боится более сложных путей, придуман редактор vi. Он работает по аналогичному принципу, но сама программа устроена достаточно сложно для новичка. Как запустит редактор:

Если программа показалась вам слишком непонятной в работе, рекомендуется детально изучить её основы. Для этого выполните: vimtutor. Разумеется, пользователь всегда может выбрать более простой и понятный для себя вариант. Более того, всегда можно обратиться к графическому интерфейсу для решения текущей проблемы, но этот редактор действительно заслуживает вашего внимания. Подробно изучив его отличительные черты и особенности, можно заиметь в своем арсенале поистине эффективный инструмент.

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

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

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

Самая короткая команда для создания файла в Линукс

Она выглядит следующим образом:

Вывод команды будет записан в новый файл.

Двигаемся дальше! Теперь попробуем создать новый объект в мультипользовательской системе Линукс при помощи cp. Изначально эта команда разработана для копирования файлов в системе, но и эта задача ей под силу. Приступаем к созданию нового пустого файла в Линукс:

Специальные файлы в Линукс: особенности создания

Какие файлы хранятся в ОС Linux:

  • Стандартные текстовые;
  • Бинарные;
  • Специальные.

Способы создания обычных файлов уже рассмотрены ранее. Но что делать, если пользователю нужно создать специальный файл? В данном случае стандартные утилиты Линукс не подойдут. Осуществить задуманное можно лишь при помощи специальных программ. Их можно найти на просторах Всемирной паутины. Любые другие действия осуществляются при помощи терминала и соответствующих команд.

Заключение

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

Просмотр содержимого файла с поиском

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

$ grep опции шаблон файл

Или в комбинации с cat:

$ cat файл | grep опции шаблон

Например выведем из лога только предупреждения:

Но это еще не все, многие не знают, но у этой утилиты еще несколько полезных опций.

С помощью опции -A можно вывести несколько строк после вхождения:

С помощью -B — до вхождения:

А опция -С позволяет вывести нужное количество строк до и после вхождения шаблона:

Также с помощью grep можно подсчитать количество найденных строк:

Шаблоном может быть строка и простые спецсимволы замены. Если вы хотите использовать регулярное выражение укажите опцию -e или используйте egrep. Многие спрашивают, а какая разница между этими утилитами — уже никакой, в большинстве дистрибутивов egrep это ссылка на grep -e. А теперь пример:

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

Что такое в Linux командная строка

Открывать терминал крайне просто

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

В отличие от консоли в виндовс, которая появилась там от MS DOS (виндовс изначально являлась лишь графической оболочкой этой старой операционной системы), терминал в линуксе обладает куда более мощными и серьезными возможностями. Он находится в ОС изначально. Так было и в Unix, поэтому здесь он более развит, что позволяет экономить множество времени.

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

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

Дисковое пространство

df -h отображает информацию о смонтированных разделах с отображением общего, доступного и используемого пространства (Прим.переводчика. ключ -h работает не во всех *nix системах)
ls -lSr |more выдаёт список файлов и директорий рекурсивно с сортировкой по возрастанию размера и позволяет осуществлять постраничный просмотр
du -sh dir1 подсчитывает и выводит размер, занимаемый директорией ‘dir1’ (Прим.переводчика. ключ -h работает не во всех *nix системах)
du -sk * | sort -rn отображает размер и имена файлов и директорий, с соритровкой по размеру
rpm -q -a –qf ‘{SIZE}t%{NAME}n’ | sort -k1,1n показывает размер используемого дискового пространства, занимаемое файлами rpm-пакета, с сортировкой по размеру (fedora, redhat и т.п.)
dpkg-query -W -f=’${Installed-Size;10}t${Package}n’ | sort -k1,1n показывает размер используемого дискового пространства, занимаемое файлами deb-пакета, с сортировкой по размеру (ubuntu, debian т.п.)

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

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

Информация о запущенном процессе

Терминал Linux позволяет разгрузить операционную систему и оперативную память компьютера с помощью ряда специальных команд:

  • «ps» показывает свойства указанного процесса, а также подробную информацию о нём;
  • «pgrep» демонстрирует ID введённого процесса;
  • «kill» — принудительное завершение процесса;
  • «xkill» завершает работу процесса путём клика на рабочее окно;
  • «killall» — принудительное завершение всех запущенных процессов;
  • «htop» демонстрирует активные процессы, выполняет роль консольного менеджера;
  • «time» показывает информацию о времени запуска того или иного процесса.

Использование терминала расширяет пользовательские функции в отношении запущенных программ.

К сведению! Несмотря на то, что операционная система Linux считается одной из самых защищённых от вирусов и вредоносного ПО, со временем даже она может давать сбои.

Сеть

ifconfig — показать информацию о сетиiwconfig — показать информацию о беспроводной сетиsudo iwlist scan — поиск беспроводных сетейsudo /etc/init.d/networking restart — перезапустить сеть/etc/network/interfaces — файл для ручной настройки сетиifup interface — включить интерфейсifdown interface — отключить интерфейс

ping host — пропинговать host и вывести результат

whois domain — получить информацию whois для domainwget file — скачать fileifconfig eth0″ — показать конфигурацию сетевого интерфейса eth0ifup eth0″ — активировать интерфейс eth0ifdown eth0″ — деактивировать интерфейс eth0ifconfig eth0 192.168.1.1 netmask 255.255.255.0″ — выставить интерфейсу eth0 ip-адрес и маску подсетиifconfig eth0 promisc» — перевести интерфейс eth0 в promiscuous-режим для «отлова» пакетов (sniffing)ifconfig eth0 -promisc» — отключить promiscuous-режим на интерфейсе eth0dhclient eth0″ — активировать интерфейс eth0 в dhcp-режиме.route -n» — вывести локальную таблицу маршрутизацииroute add -net 0/0 gw IP_Gateway» — задать ip-адрес шлюза по умолчанию (default gateway)route add -net 192.168.0.0 netmask 255.255.0.0 gw 192.168.1.1″ — добавить статический маршрут в сеть 192.168.0.0/16 через шлюз с ip-адресом 192.168.1.1route del 0/0 gw IP_gateway» — удалить ip-адрес шлюза по умолчанию (default gateway)echo «1» > /proc/sys/net/ipv4/ip_forward» — разрешить пересылку пакетов (forwarding)hostname» — отобразить имя компьютераip link show» — отобразить состояние всех интерфейсовmii-tool eth0″ — отобразить статус и тип соединения для интерфейса eth0ethtool eth0″ — отображает статистику интерфеса eth0 с выводом такой информации, как поддерживаемые и текущие режимы соединенияnetstat -tupn» — отображает все установленные сетевые соединения по протоколам TCP и UDP без разрешения имён в ip-адреса и PID’ы и имена процессов, обеспечивающих эти соединенияnetstat -tupln» — отображает все сетевые соединения по протоколам TCP и UDP без разрешения имён в ip-адреса и PID’ы и имена процессов, слушающих портыtcpdump tcp port 80″ — отобразить весь трафик на TCP-порт 80 (обычно — HTTP)iwlist scan» — просканировать эфир на предмет, доступности беспроводных точек доступаiwconfig eth1″ — показать конфигурацию беспроводного сетевого интерфейса eth1cat /proc/net/dev — показать сетевые интерфейсы и статистику по нимdig domain – получить DNS информацию domain

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

Ниже представлена схема типичной команды в терминале ОС Linux:

Следующие команды позволят вам лучше узнать систему:

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

Примечание Для PS0: используйте Ctrl+C, чтобы деактивировать неактуальные команды. Что касается PS1: некоторые команды могут быть недоступны. Чтобы проверить, какие именно, введите .

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

Каждый дистрибутив может обладать своими особенностями и командами, не говоря уже об оболочке командной строки, а их на данный момент немало. Наиболее популярными являются bash, pdkdh, sash, tcsh и новая zsh. Как открыть Linux Terminal, рассказано на примере Ubuntu, одной из последних версий.

В первую очередь следует воспользоваться горячими сочетаниями клавиш. Особенность убунту состоит в том, что, используя любое графическое окружение, открыть командную строку можно с помощью нажатия сочетания «Ctrl + Alt + T».

Если сочетание клавиш пользователю не по душе, то его всегда можно заменить на другое. Для этого переходят в настройки и находят раздел «Устройства», где следует выбрать пункт «Клавиатура». Остается определить, какое сочетание будет задействовано при активации окна терминала.

Обратите внимание! Практически любое окружение обладает утилитой «Выполнить», которая похожа на одноименное окно виндовс. Вызывается оно так же по горячему сочетанию клавиш «Alt + F2»

Далее все зависит от оболочки: для Gnome применяют команду «$ gnome-terminal», а для KDE — «$ console».

Если пользователь не знает, какая команда запускает консоль линукс в его дистрибутиве, то необходимо воспользоваться следующим способом, основанным на использовании главного меню системы. Открывается оно по нажатию клавиши «Win» («Super»). Далее остается выбрать пункт «Терминал» или начать прописывать его в поисковом окне до момента его вывода.

Еще один метод основан на переходе в папку с файлами. Для этого находят стандартный предустановленный файловый менеджер, выбирают каталог с тем или иным файлом, а затем нажимают ПКМ по свободному месту директории и выбирают «Открыть в терминале».

Поиск Linux Console

Работа с утилитами *ctl

systemctl

— управляет работой системных сервисов и утилит.

systemctl   

systemctl -l status nginx
— проверка состояния сервиса.

systemctl start ngnix
— запуск работы сервиса.

systemctl stop nginx
— остановка работы сервиса.

systemctl enable nginx
— включение сервиса при старте системы.

systemctl disable nginx
— выключение сервиса при старте системы.

systemctl reload nginx
— обновление конфигурационного файла сервиса.

systemctl restart nginx
— перезапуск сервиса.

systemctl is-enabled
— проверка включения сервиса при старте системы.

systemctl list-unit-services
— вывод списка всех сервисов.

systemctl show nginx
— вывод свойств сервиса.

systemctl cat nginx
— вывод списка зависимых и исходных файлов сервиса.

loginctl

— менеджер учетных записей.

loginctl   

loginctl list-users
— вывод авторизованных пользователей.

loginctl user-status root
— вывод авторизованных пользователей.

loginctl show-user root
— вывод свойств пользователя.

loginctl terminate-user root
— удаление всех сессий пользователя.

journalctl

— вывод журналов (логов) сервисов.

journalctl 

journalctl —disk-usage
— вывод количества занятой памяти под логи.

journalctl —unit=nginx
— вывод логов сервиса.

journalctl —output=verbose —unit=nginx
— вывод всех полей в логе сервиса.

journalctl —output=cat —unit=nginx
— вывод только сообщений из лога сервиса.

Поиск и использование регулярных выражений

Для поиска файлов в bash используется команда find. Ее синтаксис следующий: find + нужная директория (путь) + ключ (или несколько) + критерии ключа + (опционально) последующее действие над найденными файлами.

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

find --h

К примеру, следующая команда позволит вам найти все файлы, которые находятся в директории dir1, и имеют название file:

find /home/users/dir1 -name ‘file*’

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

* — обозначает любое количество символов, включая их отсутствие (например, по запросу file* будут найдены все файлы: file, file1, file829, fileabc и т.д.);

? — обозначает один символ (по запросу file? будут найдены файлы с одним символом после слова file: file1, file9, filea и т.д.; по запросу file?? будут найдены файлы с двумя символами: file12, file34, file92 и т.д.);

[] — обозначает подмножество значений, которые может принимать один символ (по запросу file будут найдены файлы: file1, file2, file3 и так далее до file9; по запросу file файлы filea, fileb, filec и filed).

Специальные пакеты

ubuntu-desktop — стандартная среда Ubuntukubuntu-desktop — рабочий стол KDExubuntu-desktop — рабочий стол XFCEubuntu-minimal — основные утилиты Ubuntuubuntu-standard — стандартные утилиты Ubuntuubuntu-restricted-extras — несвободные, но полезные пакеты для Ubuntukubuntu-restricted-extras — несвободные, но полезные пакеты для Kubuntuxubuntu-restricted-extras — несвободные, но полезные пакеты для Xubuntubuild-essential — пакеты, используемые для компиляции программlinux-image-generic — последний образ ядра genericlinux-headers-generic —последние headers ядра

Какие существуют руководства для управления командной строкой

Всех полезных функций консоли этой операционной системы не счесть. Необходимо самостоятельно изучить их по материалам из руководств пользователей или книг от опытных людей. В качестве примера книга У. Шоттса «Командная строка Linux: полное руководство». Она лучше всех остальных знакомит читателя с философией линукса и основами работы в консоли.

Важно! Также следует обратить внимание на материал Е. Немета «Руководство системного администратора», которая не только познакомит с линукс, но и поможет освоиться в нелегком деле системного администрирования

Книга для обучения азам терминала линукс для начинающих

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

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Adblock
detector