Linux terminal команды: Attention Required! | Cloudflare

Содержание

Россия напала на Украину!

Россия напала на Украину!

Мы, украинцы, надеемся, что вы уже знаете об этом. Ради ваших детей и какой-либо надежды на свет в конце этого ада –  пожалуйста, дочитайте наше письмо .

Всем нам, украинцам, россиянам и всему миру правительство России врало последние два месяца. Нам говорили, что войска на границе “проходят учения”, что “Россия никого не собирается захватывать”, “их уже отводят”, а мирное население Украины “просто смотрит пропаганду”. Мы очень хотели верить вам.

Но в ночь на 24-ое февраля Россия напала на Украину, и все самые худшие предсказания  стали нашей реальностью .

Киев, ул. Кошица 7а. 25.02.2022

 Это не 1941, это сегодня. Это сейчас. 
Больше 5 000 русских солдат убито в не своей и никому не нужной войне
Более 300 мирных украинских жителей погибли
Более 2 000 мирных людей ранено

Под Киевом горит нефтебаза – утро 27 февраля, 2022.

Нам искренне больно от ваших постов в соцсетях о том, что это “все сняли заранее” и “нарисовали”, но мы, к сожалению, вас понимаем.

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

Метро Киева, Украина — с 25 февраля по сей день

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

И мы все еще хотим верить, что вам так же жутко от этого безумия, которое остановило всю нашу жизнь.

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

ул. Лобановского 6а, Киев, Украина. 26.02.2022

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

P.S. К сожалению, это не “фотошоп от Пентагона”, как вам говорят. И да, в этих квартирах находились люди.

«Это не война, а только спец. операция.»

Это война.

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

«Россия хочет только защитить ЛНР и ДНР.»

Это не так.

Все это время идет обстрел городов во всех областях Украины, вторые сутки украинские военные борются за Киев.

На карте Украины вы легко увидите, что Львов, Ивано-Франковск или Луцк – это больше 1,000 км от ЛНР и ДНР. Это другой конец страны. 25 февраля, 2022 – места попадания ракет

25 февраля, 2022 – места попадания ракет «Мирных жителей это не коснется.»

Уже коснулось.

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

Больше 1,200 мирных людей ранены или погибли. Среди них много детей.
Под обстрелы уже попадали в детские садики и больницы.
Мы вынуждены ночевать на станциях метро, боясь обвалов наших домов.
Наши жены рожают здесь детей. Наши питомцы пугаются взрывов.

«У российских войск нет потерь.»

Ваши соотечественники гибнут тысячами.

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

«В Украине – геноцид русскоязычного народа, а Россия его спасает.»

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

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

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

«Украина во власти нацистов и их нужно уничтожить.»

Сейчас у власти президент, за которого проголосовало три четверти населения Украины на свободных выборах в 2019 году. Как у любой власти, у нас есть оппозиция. Но мы не избавляемся от неугодных, убивая их или пришивая им уголовные дела.

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

Украинские семьи потеряли больше 1,377,000 родных, борясь с нацизмом во время Второй мировой. Мы никогда не выберем нацизм, фашизм или национализм, как наш путь. И нам не верится, что вы сами можете всерьез так думать.

«Украинцы это заслужили.»

Мы у себя дома, на своей земле.

Украина никогда за всю историю не нападала на Россию и не хотела вам зла. Ваши войска напали на наши мирные города. Если вы действительно считаете, что для этого есть оправдание – нам жаль.

Мы не хотим ни минуты этой войны и ни одной бессмысленной смерти. Но мы не отдадим вам наш дом и не простим молчания, с которым вы смотрите на этот ночной кошмар.

Искренне ваш, Народ Украины

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.

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

Общие сведения о командной оболочке.

Получение подсказок по командам Linux

Общие рекомендации для начинающих работать с командной строкой Linux

Выключение и перезагрузка.

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

Наиболее часто используемые команды Linux.

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

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

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

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

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

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

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

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

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

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

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

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

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

echo 12345
выведет на экран строку символов 12345, введенных в качестве аргумента команды.

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

ls -l

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

-l — список в длинном формате — с отображением атрибутов, владельцев, даты и времени.

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

ls -l -d

ls -ld

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

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

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

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

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

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

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

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

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

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

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

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

Примеры:

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Общие рекомендации для начинающих работать с командной строкой.

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

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

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

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

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

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

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

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

Отдельная статья по настройкам и использованию команды sudo

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

ls /home/everyone

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

ls /home/

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

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

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

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

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

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

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

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

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

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

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

Например:

script /home/user/mysession.log

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

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

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

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

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

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


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

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

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

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

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

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

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

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

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

init 3

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

init 5

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

id:5:initdefault:

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

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

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

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

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

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


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

ps —help

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

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

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

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

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

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

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

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


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

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

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

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

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

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


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

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

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


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

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

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

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

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

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

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

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

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

    Статьи по теме:

    Оболочка пользователя (shell) Linux.

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

    В начало страницы     |     На главную страницу сайта.

  • Основные команды терминала Linux | Блог сисадмина

    Работа с файлами и директориями

    Команда

    Описание

    cd /home

    перейти в папку ‘/home’

    cd ..

    перейти в папку уровнем выше

    cd ../..

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

    cd

    перейти в домашнюю папку

    cd ~user

    перейти в домашнюю папку пользователя user

    cd -

    перейти в папку, в которой находились до перехода в текущую папку

    pwd

    показать текущюю папку

    ls

    отобразить содержимое текущей директории

    ls -F

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

    ls -l

    показать детализированое представление файлов и директорий в текущей директории

    ls -a

    показать скрытые файлы и директории в текущей директории

    ls *[0-9]*

    показать файлы и директории содержащие в имени цифры

    tree

    показать дерево файлов и директорий, начиная от корня (/)

    lstree

    Показать содержимое папки в виде структуры дерева

    mkdir dir1

    создать папку с именем dir1

    mkdir dir1 dir2

    создать две директории dir1 и dir2 одновременно

    mkdir -p /tmp/dir1/dir2

    создать дерево вложенных директорий

    rm -f file1

    удалить файл с именем ‘file1’

    rmdir dir1

    удалить папку с именем ‘dir1’

    rm -rf dir1

    удалить папку с именем ‘dir1’ и рекурсивно всё её содержимое

    rm -rf dir1 dir2

    удалить две директории и рекурсивно их содержимое

    mv dir1 new_dir

    переименовать или переместить файл или папку

    cp file1 file2

    сопировать файл file1 в файл file2

    cp dir/* .

    копировать все файлы директории dir в текущую папку

    cp -a /tmp/dir1 .

    копировать папку dir1 со всем содержимым в текущую папку

    cp -a dir1 dir2

    копировать папку dir1 в папку dir2

    ln -s file1 lnk1

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

    ln file1 lnk1

    создать «жёсткую» (физическую) ссылку на файл или папку

    touch -t 0712250000 fileditest

    модифицировать дату и время создания файла, при его отсутствии, создать файл с указанными датой и временем (YYMMDDhhmm)

    Поиск файлов и поиск по содержимому файлов

    Команда

    Описание

    find / -name file1

    найти файлы и директории с именем file1. Поиск начать с корня (/)

    find / -user user1

    найти файл и директорию принадлежащие пользователю user1. Поиск начать с корня (/)

    find /home/user1 -name "*.bin"

    Найти все файлы и директории, имена которых оканчиваются на ‘. bin’. Поиск начать с ‘/ home/user1’

    find /usr/bin -type f -atime +100

    найти все файлы в ‘/usr/bin’, время последнего обращения к которым более 100 дней

    find /usr/bin -type f -mtime -10

    найти все файлы в ‘/usr/bin’, созданные или изменённые в течении последних 10 дней

    find / -name *.rpm -exec chmod 755 '{}' \;

    найти все фалы и директории, имена которых оканчиваются на ‘.rpm’, и изменить права доступа к ним

    find / -xdev -name "*.rpm"

    найти все фалы и директории, имена которых оканчиваются на ‘.rpm’, игнорируя съёмные носители, такие как cdrom, floppy и т.п.

    locate "*.ps"

    найти все файлы, содержащие в имени ‘.ps’. Предварительно рекомендуется выполнить команду ‘updatedb’

    whereis halt

    показывает размещение бинарных файлов, исходных кодов и руководств, относящихся к файлу ‘halt’

    which halt

    отображает полный путь к файлу ‘halt’

    Архивирование и сжатие файлов

    Команда

    Описание

    bunzip2 file1.bz2

    разжимает файл ‘file1.gz’

    gunzip file1.gz

    gzip file1

    сжимает файл ‘file1’

    bzip2 file1

    gzip -9 file1

    сжать файл file1 с максимальным сжатием

    rar a file1.rar test_file

    создать rar-архив ‘file1.rar’ и включить в него файл test_file

    rar a file1.rar file1 file2 dir1

    создать rar-архив ‘file1.rar’ и включить в него file1, file2 и dir1

    rar x file1.rar

    распаковать rar-архив

    unrar x file1.rar

    tar -cvf archive.tar file1

    создать tar-архив archive.tar, содержащий файл file1

    tar -cvf archive.tar file1 file2 dir1

    создать tar-архив archive.tar, содержащий файл file1, file2 и dir1

    tar -tf archive.tar

    показать содержимое архива

    tar -xvf archive.tar

    распаковать архив

    tar -xvf archive.tar -C /tmp

    распаковать архив в /tmp

    tar -cvfj archive.tar.bz2 dir1

    создать архив и сжать его с помощью bzip2(Прим.переводчика. ключ -j работает не во всех *nix системах)

    tar -xvfj archive.tar.bz2

    разжать архив и распаковать его(Прим.переводчика. ключ -j работает не во всех *nix системах)

    tar -cvfz archive.tar.gz dir1

    создать архив и сжать его с помощью gzip

    tar -xvfz archive.tar.gz

    разжать архив и распаковать его

    zip file1.zip file1

    создать сжатый zip-архив

    zip -r file1.zip file1 file2 dir1

    создать сжатый zip-архив и со включением в него нескольких файлов и/или директорий

    unzip file1.zip

    разжать и распаковать zip-архив

    Работа с пакетами в Debian и Ubuntu

    Команда

    Описание

    dpkg -i package.deb

    установить / обновить пакет

    dpkg -r package_name

    удалить пакет из системы

    dpkg -l

    показать все пакеты, установленные в систему

    dpkg -l | grep httpd

    среди всех пакетов, установленных в системе, найти пакет содержащий в своём имени «httpd»

    dpkg -s package_name

    отобразить инфрмацию о конкретном пакете

    dpkg -L package_name

    вывести список файлов, входящих в пакет, установленный в систему

    dpkg --contents package.deb

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

    dpkg -S /bin/ping

    найти пакет, в который входит указанный файл.

    APT — средство управления пакетами в Debian и Ubuntu

    Команда

    Описание

    apt-get install package_name

    установить / обновить пакет

    apt-cdrom install package_name

    установить / обновить пакет с cdrom’а

    apt-get update

    получить обновлённые списки пакетов

    apt-get upgrade

    обновить пакеты, установленные в систему

    apt-get remove package_name

    удалить пакет, установленный в систему с сохранением файлов конфигурации

    apt-get purge package_name

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

    apt-get check

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

    apt-get clean

    удалить загруженные архивные файлы пакетов

    apt-get autoclean

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

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

    Команда

    Описание

    cat file1

    вывести содержимое файла file1 в консоли

    tac file1

    вывести содержимое файла file1 в консоли в обратном порядке (последняя строка становиться первой и т.д.)

    more file1

    постраничный вывод содержимого файла file1 в консоли

    less file1

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

    head -2 file1

    вывести первые две строки файла file1 в консоли. По-умолчанию выводится десять строк

    tail -2 file1

    вывести последние две строки файла file1 в консоли. По-умолчанию выводится десять строк

    tail -f /var/log/messages

    выводить содержимое файла /var/log/messages в консоли по мере появления в нём текста.

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

    Команда

    Описание

    cat file_originale | [operation: sed, grep, awk, grep и т.п.] > result.txt

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

    cat file_originale | [operazione: sed, grep, awk, grepи т.$/d' example.txt

    удалить пустые строки и комментарии из файла example.txt

    echo 'esempio' | tr '[:lower:]' '[:upper:]'

    преобразовать символы из нижнего регистра в верхний

    sed -e '1d' result.txt

    удалить первую строку из файла example.txt

    sed -n '/string1/p'

    отобразить только строки содержашие «string1»

    sed -e 's/ *$//' example.txt

    удалить пустые символы в в конце каждой строки

    sed -e 's/string1//g' example.txt

    удалить строку «string1» из текста не изменяя всего остального

    sed -n '1,8p;5q' example.txt

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

    sed -n '5p;5q' example.txt

    вывести пятую строку

    sed -e 's/0*/0/g' example.txt

    заменить последовательность из любого количества нулей одним нулём

    cat -n file1

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

    cat example.txt | awk 'NR%2==1'

    при выводе содержимого файла, не выводить чётные строки файла

    echo a b c | awk '{print $1}'

    вывести первую колонку. Разделение, по-умолчанию, по проблелу/пробелам или символу/символам табуляции

    echo a b c | awk '{print $1,$3}'

    вывести первую и треью колонки. Разделение, по-умолчанию, по проблелу/пробелам или символу/символам табуляции

    paste file1 file2

    объединить содержимое file1 и file2 в виде таблицы: строка 1 из file1 = строка 1 колонка 1-n, строка 1 из file2 = строка 1 колонка n+1-m

    paste -d '+' file1 file2

    объединить содержимое file1 и file2 в виде таблицы с разделителем «+»

    sort file1 file2

    отсортировать содержимое двух файлов

    sort file1 file2 | uniq

    отсортировать содержимое двух файлов, не отображая повторов

    sort file1 file2 | uniq -u

    отсортировать содержимое двух файлов, отображая только уникальные строки (строки, встречающиеся в обоих файлах, не выводятся в консоли)

    sort file1 file2 | uniq -d

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

    comm -1 file1 file2

    сравнить содержимое двух файлов, не отображая строки принадлежащие файлу ‘file1’

    comm -2 file1 file2

    сравнить содержимое двух файлов, не отображая строки принадлежащие файлу ‘file2’

    comm -3 file1 file2

    сравнить содержимое двух файлов, удаляя строки встречающиеся в обоих файлах

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

    Команда

    Описание

    dos2unix filedos.txt fileunix.txt

    конвертировать файл текстового формата из MSDOS в UNIX (разница в символах возврата каретки)

    unix2dos fileunix.txt filedos.txt

    конвертировать файл текстового формата из UNIX в MSDOS (разница в символах возврата коретки)

    recode ..HTML < page.txt > page.html

    конвертировать содержимое тестового файла page.txt в html-файл page.html

    recode -l | more

    вывести список доступных форматов

    Проверка целостности дисков и файловых систем

    Команда

    Описание

    badblocks -v /dev/hda1

    проверить раздел hda1 на наличие bad-блоков

    fsck /dev/hda1

    проверить/восстановить целостность linux-файловой системы раздела hda1

    fsck.ext2 /dev/hda1

    проверить/восстановить целостность файловой системы ext2 раздела hda1

    e2fsck /dev/hda1

    e2fsck -j /dev/hda1

    проверить/восстановить целостность файловой системы ext3 раздела hda1 с указанием, что журнал расположен там же

    fsck.ext3 /dev/hda1

    проверить/восстановить целостность файловой системы ext3 раздела hda1

    fsck.vfat /dev/hda1

    проверить/восстановить целостность файловой системы fat раздела hda11

    fsck.msdos /dev/hda1

    dosfsck /dev/hda1

    Форматирование дисков и файловых систем

    Команда

    Описание

    mkfs /dev/hda1

    создать linux-файловую систему на разделе hda1

    mke2fs /dev/hda1

    создать файловую систему ext2 на разделе hda1

    mke2fs -j /dev/hda1

    создать журналирующую файловую систему ext3 на разделе hda1

    mkfs -t vfat 32 -F /dev/hda1

    создать файловую систему FAT32 на разделе hda1

    fdformat -n /dev/fd0

    форматирование флоппи-диска без проверки

    mkswap /dev/hda3

    создание swap-пространства на разделе hda3

    Работа с дисками подкачки (swap)

    Команда

    Описание

    mkswap /dev/hda3

    создание swap-пространства на разделе hda3

    swapon /dev/hda3

    активировать swap-пространство, расположенное на разделе hda3

    swapon /dev/hda2 /dev/hdb3

    активировать swap-пространства, расположенные на разделах hda2 и hdb3

    Создание резервных копий (backup)

    Команда

    Описание

    dump -0aj -f /tmp/home0.bak /home

    создать полную резервную копию директории /home в файл /tmp/home0.bak

    dump -1aj -f /tmp/home0.bak /home

    создать инкрементальную резервную копию директории /home в файл /tmp/home0.bak

    restore -if /tmp/home0.bak

    восстановить из резервной копии /tmp/home0.bak

    rsync -rogpav --delete /home /tmp

    синхронизировать /tmp с /home

    rsync -rogpav -e ssh --delete /home ip_address:/tmp

    синхронизировать через SSH-туннель

    rsync -az -e ssh --delete ip_addr:/home/public /home/local

    синхронизировать локальную директорию с удалённой директорией через ssh-туннель со сжатием

    rsync -az -e ssh --delete /home/local ip_addr:/home/public

    синхронизировать удалённую директорию с локальной директорией через ssh-туннель со сжатием

    dd bs=1M if=/dev/hda | gzip | ssh [email protected]_addr 'dd of=hda.gz'

    сделать «слепок» локального диска в файл на удалённом компьютере через ssh-туннель

    tar -Puf backup.tar /home/user

    создать инкрементальную резервную копию директории ‘/home/user’ в файл backup.tar с сохранением полномочий

    ( cd /tmp/local/ && tar c . ) | ssh -C [email protected]_addr 'cd /home/share/ && tar x -p'

    копирование содержимого /tmp/local на удалённый компьютер через ssh-туннель в /home/share/

    ( tar c /home ) | ssh -C [email protected]_addr 'cd /home/backup-home && tar x -p'

    копирование содержимого /home на удалённый компьютер через ssh-туннель в /home/backup-home

    tar cf - . | (cd /tmp/backup ; tar xf - )

    копирование одной директории в другую с сохранением полномочий и линков

    find /home/user1 -name '*.txt' | xargs cp -av --target-directory=/home/backup/ --parents

    поиск в /home/user1 всех файлов, имена которых оканчиваются на ‘.txt’, и копирование их в другую директорию

    find /var/log -name '*.log' | tar cv --files-from=- | bzip2 > log.tar.bz2

    поиск в /var/log всех файлов, имена которых оканчиваются на ‘.log’, и создание bzip-архива из них

    dd if=/dev/hda of=/dev/fd0 bs=512 count=1

    создать копию MBR (Master Boot Record) с /dev/hda на флоппи-диск

    dd if=/dev/fd0 of=/dev/hda bs=512 count=1

    восстановить MBR с флоппи-диска на /dev/hda

    Работа с лазерными дисками (CDROM)

    Команда

    Описание

    cdrecord -v gracetime=2 dev=/dev/cdrom -eject blank=fast -force

    clean a rewritable cdrom

    mkisofs /dev/cdrom > cd.iso

    create an iso image of cdrom on disk

    mkisofs /dev/cdrom | gzip > cd_iso.gz

    create a compressed iso image of cdrom on disk

    mkisofs -J -allow-leading-dots -R -V "Label CD" -iso-level 4 -o ./cd.iso data_cd

    create an iso image of a directory

    cdrecord -v dev=/dev/cdrom cd.iso

    burn an ISO image

    gzip -dc cd_iso.gz | cdrecord dev=/dev/cdrom -

    burn a compressed ISO image

    mount -o loop cd.iso /mnt/iso

    mount an ISO image

    cd-paranoia -B

    rip audio tracks from a CD to wav files

    cd-paranoia -- "-3"

    rip first three audio tracks from a CD to wav files

    cdrecord --scanbus

    scan bus to identify the channel scsi

    Сеть и сетевые устройства (LAN, WLAN, WiFi)

    Команда

    Описание

    ifconfig eth0

    показать конфигурацию сетевого интерфейса eth0

    ifup eth0

    активировать (поднять) интерфейс eth0

    ifdown eth0

    деактивировать (опустить) интерфейс eth0

    ifconfig eth0 192.168.1.1 netmask 255.255.255.0

    выставить интерфейсу eth0 ip-адрес и маску подсети

    ifconfig eth0 promisc

    перевести интерфейс eth0 в promiscuous-режим для «отлова» пакетов (sniffing)

    ifconfig eth0 -promisc

    отключить promiscuous-режим на интерфейсе eth0

    dhclient eth0

    активировать интерфейс eth0 в dhcp-режиме.

    route -n

    вывести локальную таблицу маршрутизации

    netstat -rn

    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.1

    route del 0/0 gw IP_gateway

    удалить ip-адрес шлюза по умолчанию (default gateway)

    echo "1" > /proc/sys/net/ipv4/ip_forward

    разрешить пересылку пакетов (forwarding)

    hostname

    отобразить имя компьютера

    host sadminblog.ru

    разрешить имя sadminblog.ru хоста в ip-адрес и наоборот

    host 62.149.140.85

    ip link show

    отобразить состояние всех интерфейсов

    mii-tool eth0

    отобразить статус и тип соединения для интерфейса eth0

    ethtool eth0

    отображает статистику интерфеса eth0 с выводом такой информации, как поддерживаемые и текущие режимы соединения

    netstat -tupn

    отображает все установленные сетевые соединения по протоколам TCP и UDP без разрешения имён в ip-адреса и PID’ы и имена процессов, обеспечивающих эти соединения

    netstat -tupln

    отображает все сетевые соединения по протоколам TCP и UDP без разрешения имён в ip-адреса и PID’ы и имена процессов, слушающих порты

    tcpdump tcp port 80

    отобразить весь трафик на TCP-порт 80 (обычно — HTTP)

    iwlist scan

    просканировать эфир на предмет, доступности беспроводных точек доступа

    iwconfig eth2

    показать конфигурацию беспроводного сетевого интерфейса eth2

    Microsoft Windows Networks (SAMBA)

    Команда

    Описание

    nbtscan ip_addr

    разрешить netbios-имя nbtscan не во всех системах ставится по-умолчанию, возможно, придётся доустанавливать вручную. nmblookup включен в пакет samba.

    nmblookup -A ip_addr

    smbclient -L ip_addr/hostname

    отобразить ресурсы, предоставленные в общий доступ на windows-машине

    smbget -Rr smb://ip_addr/share

    подобно wget может получить файлы с windows-машин через smb-протокол

    mount -t smbfs -o username=user,password=pass //winclient/share /mnt/share

    смонтировать smb-ресурс, предоставленный на windows-машине, в локальную файловую систему

    IPTABLES (firewall)

    Команда

    Описание

    iptables -t filter -nL

    отобразить все цепочки правил

    iptables -nL

    iptables -t nat -L

    отобразить все цепочки правил в NAT-таблице

    iptables -t filter -F

    очистить все цепочки правил в filter-таблице

    iptables -F

    iptables -t nat -F

    очистить все цепочки правил в NAT-таблице

    iptables -t filter -X

    удалить все пользовательские цепочки правил в filter-таблице

    iptables -t filter -A INPUT -p tcp --dport telnet -j ACCEPT

    позволить входящее подключение telnet’ом

    iptables -t filter -A OUTPUT -p tcp --dport http -j DROP

    блокировать исходящие HTTP-соединения

    iptables -t filter -A FORWARD -p tcp --dport pop3 -j ACCEPT

    позволить «прокидывать» (forward) POP3-соединения

    iptables -t filter -A INPUT -j LOG --log-prefix "DROP INPUT"

    включить журналирование ядром пакетов, проходящих через цепочку INPUT, и добавлением к сообщению префикса «DROP INPUT»

    iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

    включить NAT (Network Address Translate) исходящих пакетов на интерфейс eth0. Допустимо при использовании с динамически выделяемыми ip-адресами.

    iptables -t nat -A PREROUTING -d 192.168.0.1 -p tcp -m tcp --dport 22 -j DNAT --to-destination 10.0.0.2:22

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

    Работа с запущенными процессами. Мониторинг системы и отладка

    Команда

    Описание

    top

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

    ps -eafw

    отобразить запущенные процессы, используемые ими ресурсы и другую полезную информацию (единожды)

    ps -e -o pid,args --forest

    вывести PID’ы и процессы в виде дерева

    pstree

    отобразить дерево процессов

    kill -9 98989

    «убить» процесс с PID 98989 «на смерть» (без соблюдения целостности данных)

    kill -KILL 98989

    kill -TERM 98989

    Корректно завершить процесс с PID 98989

    kill -1 98989

    заставить процесс с PID 98989 перепрочитать файл конфигурации

    kill -HUP 98989

    lsof -p 98989

    отобразить список файлов, открытых процессом с PID 98989

    lsof /home/user1

    отобразить список открытых файлов из директории /home/user1

    strace -c ls >/dev/null

    вывести список системных вызовов, созданных и полученных процессом ls

    strace -f -e open ls >/dev/null

    вывести вызовы бибилотек

    watch -n1 'cat /proc/interrupts'

    отображать прерывания в режиме реального времени

    last reboot

    отобразить историю перезагрузок системы

    last user1

    отобразить историю регистрации пользователя user1 в системе и время его нахождения в ней

    lsmod

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

    free -m

    показать состояние оперативной памяти в мегабайтах

    smartctl -A /dev/hda

    контроль состояния жёсткого диска /dev/hda через SMART

    smartctl -i /dev/hda

    проверить доступность SMART на жёстком диске /dev/hda

    tail /var/log/dmesg

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

    tail /var/log/messages

    вывести десять последних записей из системного журнала

    Монтирование устройств и файловых систем

    Команда

    Описание

    mount /dev/hda2 /mnt/hda2

    монтирует раздел ‘hda2’ в точку монтирования ‘/mnt/hda2’. Убедитесь в наличии директории-точки монтирования ‘/mnt/hda2’

    umount /dev/hda2

    размонтирует раздел ‘hda2’. Перед выполнением, покиньте ‘/mnt/hda2’

    fuser -km /mnt/hda2

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

    umount -n /mnt/hda2

    выполнить размонитрование без занесения информации в /etc/mtab. Полезно когда файл имеет атрибуты «только чтение» или недостаточно места на диске

    mount /dev/fd0 /mnt/floppy

    монтировать флоппи-диск

    mount /dev/cdrom /mnt/cdrom

    монтировать CD или DVD

    mount /dev/hdc /mnt/cdrecorder

    монтировать CD-R/CD-RW или DVD-R/DVD-RW(+-)

    mount -o loop file.iso /mnt/cdrom

    смонтировать ISO-образ

    mount -t vfat /dev/hda5 /mnt/hda5

    монтировать файловую систему Windows FAT32

    mount -t smbfs -o username=user,password=pass //winclient/share /mnt/share

    монтировать сетевую файловую систему Windows (SMB/CIFS)

    mount -o bind /home/user/prg /var/ftp/user

    «монтирует» директорию в директорию (binding). Доступна с версии ядра 2.4.0. Полезна, например, для предоставления содержимого пользовательской директории через ftp при работе ftp-сервера в «песочнице» (chroot), когда симлинки сделать невозможно. Выполнение данной команды сделает копию содержимого /home/user/prg в /var/ftp/user

    Информация о диске: дисковое пространство

    Команда

    Описание

    df -h

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

    ls -lSr |more

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

    du -sh dir1

    подсчитывает и выводит размер, занимаемый директорией ‘dir1’ (Прим.переводчика. ключ -h работает не во всех *nix системах)

    du -sk * | sort -rn

    отображает размер и имена файлов и директорий, с соритровкой по размеру

    rpm -q -a --qf '%10{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 т.п.)

    Пользователи и группы

    Команда

    Описание

    groupadd group_name

    создать новую группу с именем group_name

    groupdel group_name

    удалить группу group_name

    groupmod -n new_group_name old_group_name

    переименовать группу old_group_name в new_group_name

    useradd -c "Nome Cognome" -g admin -d /home/user1 -s /bin/bash user1

    создать пользователя user1, назначить ему в качестве домашнего каталога /home/user1, в качестве shell’а /bin/bash, включить его в группу admin и добавить комментарий Nome Cognome

    useradd user1

    создать пользователя user1

    userdel -r user1

    удалить пользователя user1 и его домашний каталог

    usermod -c "User FTP" -g system -d /ftp/user1 -s /bin/nologin user1

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

    passwd

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

    passwd user1

    сменить пароль пользователя user1 (только root)

    chage -E 2005-12-31 user1

    установить дату окончания действия учётной записи пользователя user1

    pwck

    проверить корректность системных файлов учётных записей. Проверяются файлы /etc/passwd и /etc/shadow

    grpck

    проверяет корректность системных файлов учётных записей. Проверяется файл/etc/group

    newgrp [-] group_name

    изменяет первичную группу текущего пользователя. Если указать «-«, ситуация будет идентичной той, в которой пользователь вышил из системы и снова вошёл. Если не указывать группу, первичная группа будет назначена из /etc/passwd

    Выставление/изменение прав на просмотр и редактирование файлов

    Команда

    Описание

    ls -lh

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

    ls /tmp | pr -T5 -W$COLUMNS

    вывести содержимое директории /tmp и разделить вывод на пять колонок

    chmod ugo+rwx directory1

    добавить полномочия на директорию directory1 ugo(User Group Other)+rwx(Read Write eXecute) — всем полные права. Аналогичное можно сделать таким образом chmod 777 directory1

    chmod go-rwx directory1

    отобрать у группы и всех остальных все полномочия на директорию directory1.

    chown user1 file1

    назначить владельцем файла file1 пользователя user1

    chown -R user1 directory1

    назначить рекурсивно владельцем директории directory1 пользователя user1

    chgrp group1 file1

    сменить группу-владельца файла file1 на group1

    chown user1:group1 file1

    сменить владельца и группу владельца файла file1

    find / -perm -u+s

    найти, начиная от корня, все файлы с выставленным SUID

    chmod u+s /bin/binary_file

    назначить SUID-бит файлу /bin/binary_file. Это даёт возможность любому пользователю запускать на выполнение файл с полномочиями владельца файла.

    chmod u-s /bin/binary_file

    снять SUID-бит с файла /bin/binary_file.

    chmod g+s /home/public

    назначить SGID-бит директории /home/public.

    chmod g-s /home/public

    снять SGID-бит с директории /home/public.

    chmod o+t /home/public

    назначить STIKY-бит директории /home/public. Позволяет удалять файлы только владельцам

    chmod o-t /home/public

    снять STIKY-бит с директории /home/public

    Специальные атрибуты файлов

    Команда

    Описание

    chattr +a file1

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

    chattr +c file1

    позволяет ядру автоматически сжимать/разжимать содержимое файла.

    chattr +d file1

    указавет утилите dump игнорировать данный файл во время выполнения backup’а

    chattr +i file1

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

    chattr +s file1

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

    chattr +S file1

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

    chattr +u file1

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

    lsattr

    показать атрибуты файлов

    Другие полезные команды

    Команда

    Описание

    apropos …keyword

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

    man ping

    вызов руководства по работе с программой, в данном случае ping

    whatis …keyword

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

    mkbootdisk --device /dev/fd0uname -r

    создаёт загрузочный флоппи-диск

    gpg -c file1

    шифрует файл file1 с помощью GNU Privacy Guard

    gpg file1.gpg

    дешифрует файл file1 с помощью GNU Privacy Guard

    wget -r http://sadminblog.ru

    загружает рекурсивно содержимое сайта http://sadminblog.ru

    wget -c http://sadminblog.ru/file.iso

    загрузить файл http://sadminblog.ru/file.iso с возможностью останова и продолжения в последствии

    echo 'wget -c http://sadminblog.ru/files.iso' | at 09:00

    начать закачку в указанное время

    ldd /usr/bin/ssh

    вывести список библиотек, необходимых для работы ssh

    alias hh='history'

    назначить алиас hh команде history

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

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

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

    1. ls

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

    Чтобы вывести список файлов в директории /home/vasya/.ssh выполните:

    ls /home/vasya/.ssh

    2. cd

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

    Например, чтобы перейти в директорию /home/vasya/.local нужно выполнить

    cd /home/vasya/.local

    3. mv

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

    Например, чтобы переместить директорию /home/vasya/documents в директорию /home/vasya/secret выполните:

    mv /home/vasya/documents /home/vasya/secret

    4. cp

    Команда cp создает копию файла или директории.

    Чтобы скопировать файл messages.log в файл messages.log.bak выполните:

    cp messages.log messages.log.bak

    Чтобы скопировать директорию, необходимо после команды добавить аргумент -r. Например, скопируем директорию drivers в display-drivers:

    cp -r drivers display-drivers

    5. sudo

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

    Например, если вы попытаетесь создать копию файла в «системной» директории /etc, то получите предупреждение Permission denied. Поэтому в данном случае команду нужно выполнять от имени суперпользователя, например:

    sudo cp /etc/X11/xorg.conf /etc/X11/xorg.conf.bak

    6. touch

    Командой touch можно создать пустой файл.

    Например, создадим пустой файл path.dat:

    touch path.dat

    7. find

    Команда find предназначена для поиска файлов. Да, это не самая простая команда, но ее знание очень полезно. Для начала достаточно запомнить как искать файлы и директории по имени или по маске (части имени).

    Например, найдем в текущей директории все файлы (и директории), имя которых начинается на document, и заканчивается .odt (это могут быть файлы document-history.odt, document1.odt, document.odt, document-linux.odt):

    find . -name "document*.odt"

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

    8. cat

    Команда cat выводит содержимое указанного файла на экран.

    Например, чтобы просмотреть содержимое файла /var/log/auth.log выполните:

    cat /var/log/auth.log

    9. nano

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

    Например, чтобы создать или отредактировать существующий файл ftp.cfg выполните:

    nano ftp.cfg

    Откроется текстовый редактор. Внесите изменения в файл. Затем нажмите сочетание клавиш Ctrl+x и введите y, чтобы сохранить изменения и выйти (или введите n, чтобы закрыть файл без сохранения изменений).

    10. mkdir

    Команда mkdir создает пустую директорию.

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

    mkdir backup

    rm и rmdir

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

    Например удалим файл veryimportantfile.dat:

    rm veryimportantfile.dat

    Для удаления директории воспользуемся командной rmdir. Например, удалим директорию photos:

    rmdir photos

    apt или apt-get

    И еще одна важная команда для тех, кто использует Ubuntu. apt — это менеджер пакетов, который служит для установки и удаления программ (пакетов), обновления системы.

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

    sudo apt install mc

    Если apt недоступен, то используйте apt-get:

    sudo apt-get install mc

    Что-то еще?

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

    Команды Linux: оболочка BASH

    Что такое Bash?

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

     

     

    Знаете ли, что в unix подобных операционных системах (ubuntu, debian, freebsd, centos и других), принято называть “папки” каталогами. 

     

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

     

    Команда CD

    Если вы хотите перемещаться в терминале линукс по каталогам, вам нужно использовать команду cd.

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

     

    cd /home/YOUR_USER_NAME или проще: cd ~

     

    Для того, чтобы перейти в каталог на уровень выше, выполните команду cd..

     

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

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

     

    Команда CAT

    Для того, чтобы посмотреть содержимое какого нибудь файла, например hosting.txt, вы можете воспользоваться командой cat. Пример:

     

    cat hosting.txt

     

    Команда GREP

    Очень полезную функцию grep можно использовать в ситуации, когда вы хотите посмотреть логи доступа на сайт с определенными данными. Например,  вы хотите посмотреть чем занимался на вашем сайте пользователь с ip адресом 10.23.11.14. Чтобы это сделать нужно ввести команду:

     

    cat /var/log/apache2/access.log | grep 10.23.11.14

    В результате запроса вы увидите данные только по пользователю с ip адреса 10.23.11.14

     

    Команда TAIL

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

     

    tail -f /var/log/apache2/access.ru

     

    Команда SSH

    SSH — это протокол подключения к серверу. Для того, чтобы подключиться к серверу по ssh, введите команду в формате:

     

    ssh [email protected] и нажмите enter. 

    И если ваш сервер поддерживает подключение по ssh, вам нужно будет ввести пароль и вы попадете на нужный вам сервер в оболочку Bash или оболочку, которая настроена по умолчанию на вашем сервере.

    Стандартный порт SSH — 22. Многие администраторы, для того, чтобы немного обезопасить сервер закрывают доступ к ssh через порт 22, а открывают альтернативный порт, например 2231. 

    Если ваш сервер находиться на не стандартном порте 22, а на порте к примеру 2231, тогда команда подключения через ssh к серверу будет выглядеть так:

     

    ssh [email protected] -p2231

     

    Как изменить права на файл (chmod)

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

     

    chmod 644 .htaccess

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

    Пример команды:

    chmod -R 775 catalog

     

    Как получить root права в linux и выполнять команды от root. Команда sudo.

    Для получения root прав, без смены пользователя, можно воспользоваться командой sudo перед основной командой. Пример команды sudo:

    sudo less /etc/php5/apache2/php.ini

     

    Команда сменить владельца файла или каталога (chown и sudo)

    У файлов и у каталогов есть владельцы. Если вы зашли под пользователем root и создали файл backup.sh, затем разлогинились и зашли под обычным пользователем, например под пользователем john, вы не сможете обратиться к этому файлу, т.к. у файла backup.sh владелец пользователь root. 

    Для смены владельца файла или каталога, нужно воспользоваться двумя командами: sudo и chown:

    sudo chown john:john backup.sh затем enter и введите пароль для root и снова enter.

    Команда sudo позволит без входа пол пользователем root, выполнить команду от root.
    jonh — это ваш пользователь, второй john — это группа пользователя john (может быть любой).

     

    Резюме

    В данной статье мы рассмотрели несколько полезных команд оболочки Bash в Linux и Unix подобных системах. Эти команды вам могут пригодиться для настройки собственного VDS сервера, например от хостинга Таймвеб. 

     

    В следующих статьях мы рассмотрим не менее полезные команды оболочки bash, познакомимся с консольным редактором nano и vim, файловыми менеджером mc и многими другими. 





    Читайте также




    Все материалы с сайта wh-db.com и ru.wh-db.com защищены авторским правом. Копирование, публикация, продажа и распространение материала строго запрещены.

    КОМАНДЫ LINUX «от A до Z»

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

     

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

    $ man "название команды"

     

    Команда adduser/addgroup

    Команды adduser и addgroup используются для добавления пользователя и группы в систему в соответствии с конфигурацией по умолчанию, указанной в файле /etc/adduser.conf.

    $ sudo adduser sedicomm
    $ sudo addgroup sedicomm

     

    Команда agetty

    Agetty – это команда, которая управляет физическими или виртуальными терминалами и вызывается init. Как только она обнаруживает соединение, сразу открывает порт tty, запрашивает имя пользователя для входа и вызывает команду /bin/login. Agetty – это замена Linux getty:

    $ agetty -L 9600 ttyS1 vt100

     

    Команда alias

    Alias ​​- полезная встроенная командная оболочка для создания псевдонимов (ярлыков) для команд Linux. Это полезно для создания новых/пользовательских команд из существующих команд оболочки Linux (включая опции):

    $ alias home='cd /home/sedicomm/'

     

    Вышеупомянутая команда создаст псевдоним, называемый home для каталога /home/sedicomm/, поэтому всякий раз, когда вы вводите home в командной строке терминала, она помещает вас в каталог /home/sedicomm/.

     

    Команда anacron

    Anacron – это команда Linux, используемая для периодического запуска команд с частотой, определенной в днях, неделях и месяцах.

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

     

    Команда apropos

    Команда apropos используется для поиска и отображения краткой справочной страницы команды/программы следующим образом:

     

    Команда apt

    Инструмент apt – относительно новый менеджер пакетов высокого уровня для систем Debian/Ubuntu:

     

    Команда apt-get

    Apt-get – мощный и бесплатный менеджер пакетов интерфейса для систем Debian/Ubuntu. Он используется для установки новых, удаления доступных и обновления существующих пакетов программного обеспечения, а также обновления всей операционной системы.

     

    Команда aptitude

    Aptitude – это мощный текстовый интерфейс для системы управления пакетами Debian GNU/Linux. Такими как apt-get и apt. Его можно использовать для установки, удаления или обновления пакетов программного обеспечения в системе.

     

    Команда arch

    Arch – простая команда для отображения архитектуры машины или имени оборудования (аналогично uname -m):

     

    Команда arp

    ARP (протокол разрешения адресов) – это протокол, который отображает IP-адреса сети с адресами аппаратного обеспечения (MAC) в сети IPv4.

    Вы можете использовать его, как показано ниже, чтобы найти все “живые” хосты в сети:

    $ sudo arp-scan --interface=enp2s0 --localnet

     

    Команда at

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

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

    $ sudo echo "shutdown -h now" | at -m 23:55

     

    Команда atq

    Команда atq используется для просмотра заданий в командной очереди:

     

    Команда atrm

    Команда atrm используется для удаления заданий (обозначенных их номером) из очереди команд:

     

    Команда awk

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

    $ awk '//{print}' /etc/hosts

     

    Командная batch

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

     

    Команда basename

    Команда basename выводит имя файла, удаляя каталоги в абсолютном пути:

    $ basename bin /findhosts.sh

     

    Команда bc

    Bc – простой, но мощный и произвольный язык калькулятора CLI, который можно использовать следующим образом:

    $ echo 20.05 + 15.00 | bc

     

    Команда bg

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

    $ tar -czf home.tar.gz
    $ bg
    $ jobs

     

    Команда bzip2

    Команда bzip2 используется для сжатия или распаковки файлов.

    $ bzip2 -z filename #Compress
    $ bzip2 -d filename.bz2 #Decompress

     

    Команда cal

    Команда cal выводит календарь.

     

    Команда cat

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

     

    Команда chgrp

    Команда chgrp используется для изменения правила группового владения файлом. Укажите новое имя группы в качестве первого аргумента, а имя файла – как второй аргумент:

    $ chgrp sedicomm users.txt

     

    Команда chmod

    Команда chmod используется для изменения/обновления прав доступа к файлу:

     

    Команда chown

    Команда chown изменяет/обновляет права доступа пользователей и групп к файлу/каталогу:

    $ chmod -R www-data:www-data /var/www/html

     

    Команда cksum

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

     

    Команда clear

    Команда clear позволяет очистить экран терминала, для этого просто введите её в терминал:

     

    Команда cmp

    Cmp выполняет побайтное сравнение двух файлов:

     

    Команда comm

    Команда comm используется для сравнения двух отсортированных по очереди файлов. Это возможно с помощью команды:

     

    Команда cp

    Команда cp используется для копирования файлов и каталогов из одного места в другое.

    $ cp /home/sedicomm/file1 / home/sedicomm/personal/

     

     

    Команда date

    Команда date отображает/устанавливает системную дату и время следующим образом.

    $ date
    $ date --set = "8 JUN 2017 13:00:00"

     

    Команда dd

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

    В приведенном ниже примере показано создание загрузочного USB-устройства:

    $ dd if=/home/sedicomm/kali-linux-1.0.4-i386.iso of=/dev/sdc1 bs=512M; sync\

     

    Команда df

    Команда df используется для демонстрации использования дискового пространства файловой системы:

     

     

    Команда diff

    Команда diff используется для сравнения двух файлов по строкам. Её также можно использовать, чтобы найти разницу между двумя каталогами в Linux:

     

    Команда dir

    Команда dir работает как команда ls, она перечисляет содержимое каталога.

     

    Команда dmidecode

    Команда dmidecode – это инструмент для извлечения информации об оборудовании любой системы Linux. Он преобразовывает содержимое таблицы DMI компьютера в удобный для чтения формат.

    Чтобы просмотреть информацию о системном оборудовании, вы можете ввести:

    $ sudo dmidecode --type system

     

    Команда du

    Du используется для отображения дискового пространства файлов, присутствующего в каталоге, а также его подкаталогах следующим образом:

     

    Команда echo

    Команда echo выводит текст в строку выделенную для неё:

    $ echo “This is Sedicomm - Linux How Tos”

     

    Команда eject

    Команда eject используется для извлечения съемных носителей, таких как DVD или CD ROM из системы.

    $ eject /dev/cdrom
    $ eject /mnt/cdrom/
    $ eject /dev/sda

     

    Команда env

    Команда env перечисляет все текущие переменные среды и используется для их установки.

     

    Команда exit

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

     

    Команда expr

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

     

    Команда factor

    Factor используется для отображения простых коэффициентов числа.

     

    Команда Find

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

    $ find /home/sedicomm/ -name trolo-lo.txt

     

    Команда Free

    Free, показывает использование системной памяти в системе, включая пространство подкачки. Используйте параметр -h для отображения вывода в удобном пользовательском формате.

     

    Команда grep

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

    $ grep 'sedicomm' domain-list.txt

     

     

    Команда groups

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

    $ groups
    $ group sedicomm

     

    Команда gzip

    Gzip помогает сжать файл, меняя его расширение на “.gz“, как показано ниже:

    $ gzip passwds.txt
    $ cat file1 file2 | gzip > foo.gz

     

    Команда gunzip

    Gunzip восстанавливает файлы, сжатые командой gzip.

     

    Команда head

    Head используется для отображения первых строк (10 строк по умолчанию) указанного файла или stdin на экран:

    # ps -eo pid,ppid,cmd,%mem,%cpu --sort=-%mem | head 

     

    Команда History

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

     

     

    Команда hostname

    Hostname используется для вывода или установки имени системного хоста в Linux.

    $ hostname
    $ hostname NEW_HOSTNAME

     

    Команда hostnamectl

    Команда hostnamectl управляет именем системного хоста под systemd. Она используется для вывода или изменения имени системного хоста и любых связанных настроек:

    $ hostnamectl
    $ sudo hostnamectl set-hostname NEW_HOSTNAME

     

    Команда Hwclock

    Hwclock – это инструмент для управления аппаратными часами системы.

    $ sudo hwclock
    $ Sudo hwclock --set --date 8/06/2017

     

    Команда hwinfo

    Hwinfo используется для проверки оборудования, присутствующего в системе Linux.

     

    Команда id

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

     

    Команда ifconfig

    Команда ifconfig  используется для настройки, просмотра и управления сетевыми интерфейсами Linux.

    $ Ifconfig
    $ sudo ifconfig eth0 up
    $ sudo ifconfig eth0 down
    $ sudo ifconfig eth0 172.16.25.125

     

    Команда ionice

    Ionice используется для установки или просмотра класса планирования ввода-вывода процесса и приоритета указанного процесса.

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

    $ ionice -c 3 rm /var/logs/syslog

     

    Команда iostat

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

     

    Команда ip

    ip — утилита командной строки в Linux из пакета iproute2. Позволяет выполнять настройку сетевой подсистемы и является заменой таких утилит, как ifconfig, route, arp.

    Эта команда назначит IP-адрес определенному интерфейсу (eth2 в этом случае).

    $ sudo ip addr add 192.168.56.10 dev eth2

     

    Команда iptables

    Iptables – это брандмауэр на основе терминалов для управления входящим и исходящим трафиком через набор настраиваемых правил таблиц.

    Приведенная ниже команда используется для проверки существующих правил в системе (для этого могут потребоваться привилегии root).

     

    Команда iw

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

     

    Команда iwlist

    Команда iwlist отображает подробную беспроводную информацию с беспроводного интерфейса. Приведенная ниже команда позволяет получить подробную информацию о интерфейсе wlp1s0.

     

    Команда kill

    Kill используется для завершения процесса с использованием его PID, посылая ему сигнал (сигнал по умолчанию для kill – TERM).

    $ kill -p 2300
    $ kill -SIGTERM -p 2300

     

    Команда killall

    Команда killall используется для завершения процесса с использованием его имени.

     

     

    Команда kmod

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

     

    Команда Last

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

     

    Команда ln

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

    $ ln -s /usr/bin/lscpu cpuinfo

     

    Команда locate

    Команда locate используется для поиска файла по имени. Приведенная ниже команда будет искать файл по его точному имени:

    $ locate -b '\ domain-list.txt'

     

    Команда login

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

     

    Команда ls

    Команда ls используется для отображения содержимого каталога. Она работает аналогично команде dir.

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

     

     

    Команда lshw

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

     

    Команда lscpu

    Команда lscpu отображает информацию о архитектуре ЦП (количество процессоров, потоков, ядер, сокетов и т.д.).

     

    Команда lsof

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

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

     

    Команда lsusb

    Команда lsusb показывает информацию о шинах USB как в системе так и на устройствах, подключенных к ним.

     

    Команда Man

    Man используется для просмотра справочных страниц для команд и программ.

     

    Команда md5sum

    Команда md5sum используется для вычисления и вывода дайджеста сообщения MD5 файла. Если запустить без аргументов, debsums проверяет каждый файл в вашей системе на наличие файлов md5sum:

     

    Команда mkdir

    Команда mkdir используется для создания одного или нескольких каталогов, если они еще не существуют (их можно переопределить с помощью опции -p).

    $ mkdir sedicomm-files
    $ mkdir -p sedicomm-files

     

    Команда more

    Команда more позволяет просматривать относительно длинные текстовые файлы на одном экране.

     

    Команда mv

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

     

    Команда nano

    Nano – популярный небольшой, бесплатный и удобный текстовый редактор для Linux. Чтобы открыть файл с помощью nano, введите:

     

    Команда nc/netcat

    Nc (или netcat) используется для выполнения любой операции, связанной с сокетами TCP, UDP или UNIX. Она может обрабатывать как IPv4, так и IPv6 для открытия TCP-соединений, отправки UDP-пакетов, прослушивания на произвольных портах TCP и UDP, выполнения сканирования портов.

    Приведенная ниже команда поможет нам узнать, открыт ли 22 порт на хосте 192.168.56.5.

     

    Команда netstat

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

    Эта команда отобразит все открытые порты в локальной системе:

     

    Команда nice

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

    Следующая команда запускает процесс «tar command», устанавливая значение «nice» равным 12.

    $ nice -12 tar -czf backup.tar.bz2 /home/*

     

    Команда nmap

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

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

    $ nmap -sV 192.168.56.0/24

     

    Команда nproc

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

     

    Команда openssl

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

    $ tar -czf - * | openssl enc -e -aes256 -out backup.tar.gz

     

    Команда passwd

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

     

    Команда pidof

    Pidof отображает идентификатор процесса запущенной программы/команды.

    $ pidof init
    $ pidof cinnamon

     

    Команда ping

    Команда ping используется для определения отклика подключения между хостами в сети (или в Интернете):

     

    Команда ps

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

    # ps -eo pid,ppid,cmd,%mem,%cpu --sort=-%mem | head

     

    Команда pstree

    Pstree показывает запущенные процессы, которое берут истоки либо в PID, либо в init.

     

    Команда pwd

    Команда pwd отображает имя текущего/рабочего каталога, как показано в примере ниже:

     

    Команда rdiff-backup

    Rdiff-backup – мощный локальный/удаленный инкрементный сценарий резервного копирования, написанный на Python. Он работает в любой операционной системе POSIX, такой как Linux, Mac OS X.

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

    $ sudo rdiff-backup /etc /media/sedicomm/Backup/server_etc.backup

     

    Команда reboot

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

     

    Команда rename

    Команда rename используется для переименования нескольких файлов одновременно. Если у вас есть набор файлов с расширением «.html», и вы хотите поменять их расширение на «.php», это можно выполнить введя команду приведенную ниже:

    $ rename '/ / .html $ / \. Php /' * .html

     

    Команда rm

    Команда rm используется для удаления файлов или каталогов, как показано в примере ниже:

    $ rm file1
    $ rm -rf my-files

     

    Команда rmdir

    Команда rmdir помогает удалить пустые каталоги следующим образом:

     

    Команда scp

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

    $ scp ~/names.txt [email protected]:/root/names.txt

     

    Команда shutdown

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

     

    Команда sleep

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

    $ check.sh; sleep 5; sudo apt update

     

    Команда Sort

    Sort используется для сортировки строк текста в указанных файлах или из stdin, как показано ниже:

     

     

    Команда split

    Split, как следует из названия, используется для разделения большого файла на мелкие части.

    $ tar -cvjf backup.tar.bz2 /home/sedicomm/Documents/*

     

    Команда ssh

    Ssh (SSH client) – это команда для удаленного доступа и запуска команд на удаленном компьютере. Она предназначен для обеспечения защищенной зашифрованной связи между двумя ненадежными хостами по небезопасной сети, такой как Интернет.

    $ ssh [email protected]

     

     

    Команда stat

    Stat используется для отображения состояния файловой системы (опция -f используется для указания файловой системы).

     

    Команда su

    Команда su используется для переключения на другой идентификатор пользователя или включения пользователя root во время сеанса входа в систему. Обратите внимание, что когда su вызывается без имени пользователя, по умолчанию пользователь – root.

     

    Команда sudo

    Sudo позволяет разрешенному пользователю системы запускать команду как root пользователь, по правилам определенным политикой безопасности, такой как sudoers.

    $ Sudo apt update
    $ Sudo useradd sedicomm
    $ Sudo passwd sedicomm

     

    Команда sum

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

     

    Команда tac

    Команда tac объединяет и отображает файлы в обратном порядке. Она просто выводит каждый файл в терминал, сначала показывая последнюю строку.

     

    Команда tail

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

    Если имеется более одного файла, перед каждым заголовком указывается имя файла. Используйте её следующим образом (укажите больше строк для отображения с использованием опции -n).

    $ tail long-file
    $ tail -n 15 long-file

     

    Командная talk

    Команда talk используется для общения с другим пользователем системы/сети. Чтобы поговорить с пользователем используйте его имя для входа, однако, чтобы поговорить с пользователем на другом компьютере, используйте «user @ host».

    $ talk person [ttyname]
    $ talk 'user @ host '[ttyname]

     

    Команда tar

    Команда tar – самая мощная утилита для архивирования файлов в Linux.

     

     

    Команда tee

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

    $ echo "Testing how tee command works" | tee file1 

     

    Команда Time

    Time запускает программы и суммирует использование ресурсов системы.

     

     

    Команда top

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

     

    Команда Touch

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

     

    Команда tr

    Tr – полезная утилита, используемая для перевода (изменения) или удаления символов из stdin и записи результата в stdout.

    $ cat domain-list.txt | Tr [: lower:] [: upper:]

     

    Команда uname

    Команда uname отображает системную информацию, такую ​​как операционная система, имя ядра узла хоста, версия, дата релиза и т.д.

    Используйте опцию -a, чтобы отобразить всю системную информацию:

     

    Команда uniq

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

     

    Команда uptime

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

     

    Команда User

    User показывает имена пользователей, которые вошли в настоящее время.

     

    Команда vim/vi

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

     

     

    Команда w

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

     

    Команда Wall

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

    $ wall “This is Sedicomm – Linux How Tos”

     

    Команда watch

    Команда watch запускает программу повторно, пока она отображается в полноэкранном режиме. Её также можно использовать для просмотра изменений в файле/каталоге. В приведенном ниже примере показано, как просматривать содержимое каталога.

     

    Команда wc

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

     

    Команда wget

    Команда wget – это простая утилита, используемая для загрузки файлов из Интернета неинтерактивным (может работать в фоновом режиме) способом.

    $ wget -c http://ftp.gnu.org/gnu/wget/wget-1.5.3.tar.gz

     

    Команда whatis

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

     

    Команда which

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

     

    Команда who

    Команда who показывает информацию о пользователях, которые в настоящее время вошли в систему.

     

    Команда whereis

    Команда whereis помогает нам находить двоичные файлы, исходные файлы и т.д..

     

    Команда xargs

    Команда xargs – полезная утилита для чтения элементов с терминала, разделенных пробелами или иными символами (двойными или одинарными кавычками или обратной косой чертой).

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

    $ echo /home/aaronkilik/test/ /home/aaronkilik/tmp | xargs -n 1 cp -v /home/aaronkilik/bin/sys_info.sh

     

    Команда Yes

    Команда yes используется для отображения строки несколько раз, пока она не будет завершена  с помощью [Ctrl + C].

    $ yes "This is Sedicomm - Linux HowTos"

     

    Команда youtube-dl

    Youtube-dl – это легкая команда командной строки для загрузки видео, а также для извлечения треков MP3 с сайта YouTube.com и еще некоторых сайтов.

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

    $ youtube-dl --list-formats https://www.youtube.com/watch?v=iR

     

    Команда zcmp / zdiff

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

    $ zcmp domain-list.txt.zip basic_passwords.txt.zip
    $ zdiff domain-list.txt.zip basic_passwords.txt.zip

     

    Команда zip

    Zip – простая в использовании команда, используемая для сжатия (архивирования) файлов.

    $ tar cf -. | Zip | dd of =/dev/nrst0 obs=16k
    $ zip inarchive.zip foo.c bar.c --out outarchive.zip
    $ tar cf -. | zip backup -

     

    Команда zz

    Команда zz является псевдонимом инструмента командной строки fasd, который обеспечивает быстрый доступ к файлам и каталогам в Linux. Она используется для быстрого и интерактивного ввода cd в ранее доступный каталог, выбирая номер каталога из первого поля следующим образом.

     

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

     

    Спасибо за уделенное время на прочтение статьи!

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

    Подписывайтесь на обновления нашего блога и оставайтесь в курсе новостей мира инфокоммуникаций!

    Чтобы знать больше и выделяться знаниями среди толпы IT-шников, записывайтесь на курсы Cisco от Академии Cisco, курсы Linux от Linux Professional Institute на платформе SEDICOMM University.

    Курсы Cisco, Linux, кибербезопасность, DevOps / DevNet, Python с трудоустройством!

    Спешите подать заявку! Группы стартуют 25 января, 26 февраля, 22 марта, 26 апреля, 24 мая, 21 июня, 26 июля, 23 августа, 20 сентября, 25 октября, 22 ноября, 20 декабря.

    Что Вы получите?

    • Поможем стать экспертом по сетевой инженерии, кибербезопасности, программируемым сетям и системам и получить международные сертификаты Cisco, Linux LPI, Python Institute.
    • Предлагаем проверенную программу с лучшими учебниками от экспертов из Cisco Networking Academy, Linux Professional Institute и Python Institute, помощь сертифицированных инструкторов и личного куратора.
    • Поможем с трудоустройством и стартом карьеры в сфере IT — 100% наших выпускников трудоустраиваются.

    Как проходит обучение?

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

    А еще поможем Вам:

    • отредактировать или создать с нуля резюме;
    • подготовиться к техническим интервью;
    • подготовиться к конкурсу на понравившуюся вакансию;
    • устроиться на работу в Cisco по специальной программе. Наши студенты, которые уже работают там: жмите на #НашиВCisco Вконтакте, #НашиВCisco Facebook.
    Чтобы учиться на курсах Cisco, Linux LPI, кибербезопасность, DevOps / DevNet, Python, подайте заявку или получите бесплатную консультацию.

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

    На момент написания этой статьи доля Linux на мировом рынке настольных компьютеров составляла 2,68%, но более 90% всей облачной инфраструктуры и услуг хостинга работают в этой операционной системе. Только по этой причине очень важно знать популярные команды Linux.

    Согласно опросу StackOverflow 2020 года, Linux является наиболее часто используемой операционной системой профессиональными разработчиками с впечатляющей долей рынка 55,9%. Это не просто совпадение.Linux является бесплатным и открытым исходным кодом, имеет лучшую безопасность, чем его конкуренты, и может похвастаться мощной командной строкой, которая делает разработчиков и опытных пользователей более эффективными. У вас также есть доступ к мощному диспетчеру пакетов и множеству инструментов разработки, таких как DevKinsta.

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

    Начнем!

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

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

    Любой графический интерфейс пользователя (GUI) — это просто абстракция программ командной строки. Например, когда вы закрываете окно, нажимая «X», за этим действием выполняется команда.

    Флаг — это способ передачи параметров выполняемой вами команде. У большинства команд Linux есть страница справки, которую мы можем вызвать с помощью флага -h . В большинстве случаев флаги необязательны.

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

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

    Знаете ли вы, что 90% всей облачной инфраструктуры и хостинговых услуг используют Linux? 🤯 Только по этой причине очень важно знать популярные команды Linux.⬇️Нажмите, чтобы твитнуть

    Наиболее часто используемые команды Linux

    Прежде чем перейти к наиболее часто используемым командам Linux, обязательно запустите терминал . В большинстве дистрибутивов Linux для этого нужно использовать Ctrl + Alt + T . Если это не работает, найдите на панели приложений «терминал».

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

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

    1.

    лс Команда

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

      лс  

    У него много опций, поэтому может быть полезно получить помощь, используя флаг --help . Этот флаг возвращает все флаги, которые вы можете использовать с ls.

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

      лс --color=auto  
    Раскрашенная команда ls.

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

    Но набирать ls с флагом цвета было бы неэффективно; вот почему мы используем команду псевдонима .

    2.

    псевдоним Команда

    Команда alias позволяет определить временные псевдонимы в сеансе оболочки. При создании псевдонима вы указываете своей оболочке заменить слово серией команд.

    Например, чтобы установить цвет ls без ввода флага --color каждый раз, вы должны использовать:

      псевдоним ls="ls --color=auto"  

    Как видите, команда alias принимает один параметр пары «ключ-значение»: alias NAME="VALUE" . Обратите внимание, что значение должно быть заключено в кавычки.

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

      псевдоним  
    Команда псевдонима.

    3.

    без псевдонима Команда

    Как следует из названия, команда unalias предназначена для удаления псевдонима из уже определенных псевдонимов. Чтобы удалить предыдущий псевдоним ls , вы можете использовать:

      unalias лс  

    4.

    пароль Команда

    Команда pwd означает «распечатать рабочий каталог» и выводит абсолютный путь к каталогу, в котором вы находитесь.Например, если ваше имя пользователя «john» и вы находитесь в каталоге «Документы», его абсолютный путь будет следующим: /home/john/Documents .

    Чтобы использовать его, просто введите pwd в терминале:

      пароль
    
    # Мой результат: /home/kinsta/Documents/linux-commands  

    5.

    cd Команда

    Очень популярна команда cd , а также ls . Он ссылается на « c hange d irectory» и, как следует из названия, переключает вас в каталог, к которому вы пытаетесь получить доступ.

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

      CD Видео  

    Вы также можете указать абсолютный путь к папке:

      cd /home/kinsta/Документы/Видео  

    Есть несколько хитростей с командой cd , которые могут сэкономить вам много времени при игре с ней:

    1. Перейти в домашнюю папку
      CD  
    2.Перейти на уровень выше
      кд ..  
    3. Вернуться в предыдущий каталог
      компакт-диск -  

    6.

    cp Команда

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

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

      cp file_to_copy.txt new_file.txt  

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

      cp -r dir_to_copy/ new_copy_dir/  

    Помните, что в Linux папки заканчиваются косой чертой (/).

    7.

    пм Команда

    Теперь, когда вы знаете, как копировать файлы, будет полезно узнать, как их удалять.

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

    Чтобы удалить обычный файл, введите:

      РМ file_to_copy.txt  

    Если вы хотите удалить пустой каталог, вы можете использовать рекурсивный ( -r ) флаг:

      rm -r dir_to_remove/  

    С другой стороны, чтобы удалить каталог с содержимым внутри него, вам нужно использовать флаги Force (-f) и рекурсивные:

      rm -rf каталог_с_содержимым_для_удаления/  

    Информация

    Будьте осторожны с этим — вы можете стереть целый день работы, неправильно используя эти два флажка!

    8.

    МВ Команда

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

    Чтобы использовать эту команду, введите ее имя вместе с исходным и целевым файлами:

      mv исходный_файл папка_назначения/
    
    команды mv command_list.txt/  

    Чтобы использовать абсолютные пути, вы должны использовать:

      mv /home/kinsta/BestMoviesOfAllTime ./  

    …где ./ — это каталог, в котором вы сейчас находитесь.

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

      mv old_file.txt new_named_file.txt  

    9.

    mkdir Команда

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

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

      изображений mkdir/  

    Чтобы создать подкаталоги с помощью простой команды, используйте родительский флаг ( -p ):

      mkdir -p фильмы/2004/  

    10.

    человек Команда

    Еще одна важная команда Linux — man . Он отображает справочную страницу любой другой команды (если она есть).

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

      человек мкдир  

    Вы можете даже обратиться к странице руководства man :

      мужчина мужчина  
    Справочная страница «мужчины».

    11.

    сенсорный Команда

    Команда touch позволяет обновить время доступа и модификации указанных файлов.

    Например, у меня есть старый файл, последний раз измененный 12 апреля:

    . Старая дата.

    Чтобы изменить дату модификации на текущее время, нам нужно использовать флаг -m :

      сенсорный -m старый_файл  

    Теперь дата совпадает с сегодняшней датой (которой на момент написания было 8 августа).

    Новая дата

    Тем не менее, в большинстве случаев вы не будете использовать touch для изменения дат файлов, а скорее будете создавать новые пустые файлы:

      коснитесь new_file_name  

    12.

    чмод Команда

    Команда chmod позволяет быстро изменить режим файла (разрешения). Он имеет много вариантов, доступных с ним.

    Основные разрешения, которые может иметь файл:

    • р (чтение)
    • Вт (запись)
    • х (выполнить)

    Одним из наиболее распространенных вариантов использования chmod является создание исполняемого файла пользователем. Для этого введите chmod и флаг +x , а затем файл, для которого вы хотите изменить разрешения:

      chmod +x скрипт  

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

    13.

    ./ Команда

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

    Например, с помощью этой команды вы можете запустить скрипт Python или программу, доступную только в формате .run, например XAMPP. При запуске исполняемого файла убедитесь, что у него есть разрешения на выполнение (x), которые можно изменить с помощью команды chmod .

    Вот простой скрипт Python и то, как мы могли бы запустить его с нотацией ./ :

     
    #! /USR/бен/python3
    
    # имя файла: скрипт
    
    для я в диапазоне (20):
    
    print(f"Это классный скрипт {i}")  

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

      chmod +x скрипт
    
    ./скрипт  

    14.

    выход Команда

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

      выход  

    15.

    судо Команда

    Эта команда расшифровывается как «superuser do» и позволяет вам действовать как суперпользователь или пользователь root во время выполнения определенной команды. Именно так Linux защищает себя и не позволяет пользователям случайно изменить файловую систему машины или установить неподходящие пакеты.

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

      sudo apt установить gimp
    
    судо  компакт-диск  / корень /  

    Он попросит вас ввести пароль администратора перед запуском команды, которую вы ввели после него.

    16.

    выключение Команда

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

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

      выключение сейчас  

    Вы также можете запланировать отключение системы в 24-часовом формате:

      выключение 20:40  

    Чтобы отменить предыдущий вызов shutdown , вы можете использовать флаг -c :

      выключение -с  

    17.

    htop Команда

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

    Подпишитесь на информационный бюллетень

    Хотите узнать, как мы увеличили трафик более чем на 1000%?

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

    Подпишитесь сейчас
      верхняя часть  
    Интерфейс «htop».

    18.

    распаковать Команда

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

    Здесь мы распаковываем ZIP-файл, полный изображений:

      распаковать images.zip  

    19.

    apt , yum , pacman команды

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

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

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

    1. На основе Debian (Ubuntu, Linux Mint)
      sudo apt установить gimp  
    2. На базе Red Hat (Fedora, CentOS)
      sudo yum установить gimp  
    3.На базе Arch (Manjaro, Arco Linux)
      судо пакман -S канитель  

    20.

    эхо Команда

    Команда echo отображает определенный текст в терминале — это так просто:

      эхо "Классное сообщение"  
    Команда echo

    Ее основное использование — вывод переменных окружения внутри этих сообщений:

      эхо "Привет, $USER"
    
    # Привет, кинста  

    21.

    кот Команда

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

    .
      кот long_text_file.txt  
    Команда кота.

    22.

    пс Команда

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

      шт.  
    Команда пс.

    Если вам нужно что-то более интерактивное, вы можете использовать htop .

    23.

    убить Команда

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

    Проще говоря, kill отправляет TERM или сигнал уничтожения процессу, который завершает его.

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

      убить 533494
    
    убить фаерфокс  

    Будьте осторожны с этой командой — с kill вы рискуете случайно удалить проделанную работу.

    24.

    пинг Команда

    ping — самая популярная утилита сетевого терминала, используемая для проверки подключения к сети. ping имеет массу вариантов, но в большинстве случаев вы будете использовать его для запроса домена или IP-адреса:

      ping google.com
    
    эхо-запрос 8.8.8.8  

    25.

    вим Команда

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

    Некоторые люди считают его сложным в использовании — выход из Vim — один из самых популярных вопросов StackOverflow — но как только вы к нему привыкнете, он станет вашим лучшим союзником в командной строке.

    Чтобы запустить Vim, просто введите:

      вим  
    Текстовый редактор vim.

    26.

    История Команда

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

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

    27.

    пароль Команда

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

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

      пароль  
    Команда passwd

    Будьте осторожны при ее использовании — вы не хотите испортить свой пароль пользователя!

    28.

    который Команда

    Команда which выводит полный путь к командам оболочки. Если он не может распознать данную команду, он выдаст ошибку.

    Например, мы можем использовать это для проверки двоичного пути для Python и веб-браузера Brave:

      какой питон
    
    # /usr/бен/питон
    
    какой смелый
    
    # /usr/bin/храбрый  

    29.

    измельчить Команда

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

    Вот файл с небольшим содержимым:

    Файл для уничтожения.

    Теперь давайте заставим уничтожить сделать свое дело, введя следующую команду:

      уничтожить file_to_shred.txt  
    Перезаписанный контент.

    Если вы хотите удалить файл сразу, вы можете использовать флаг -u :

      измельчить -u файл_в_уничтожение.текст  

    30.

    меньше Команда

    меньше (наоборот больше) — это программа, которая позволяет просматривать файлы вперед и назад:

      меньше large_text_file.txt  
    Чем меньше команда.

    Отличительной чертой меньше является то, что он включает в свой интерфейс больше и команд vim . Если вам нужно что-то более интерактивное, чем , кот , меньше — хороший вариант.

    31.

    хвост командный

    Аналогично cat , tail печатает содержимое файла с одной важной оговоркой: выводятся только последние строки.По умолчанию он печатает последние 10 строк, но вы можете изменить это число с помощью -n .

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

      хвост длинный.txt  
    Хвостовая команда.

    Для просмотра только последних четырех строк:

      хвост -n 4 long.txt  
    хвост четыре строки.

    32.

    Головка Команда

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

      головка длинная.текст
    
    голова -n 5 long.txt  
    Головная команда.

    33.

    grep Команда

    Grep — одна из самых мощных утилит для работы с текстовыми файлами. Он ищет строки, соответствующие регулярному выражению, и выводит их:

    .
      grep "linux" long.txt  
    Команда grep.

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

      grep -c "linux" long.txt
    
    # 2  

    34.

    whoami Команда

    Команда whoami (сокращение от «кто я») отображает текущее используемое имя пользователя:

      кто
    
    # кинста  

    Вы получите тот же результат, используя echo и переменную окружения $USER:

    .
      эхо $ПОЛЬЗОВАТЕЛЬ
    
    # кинста  

    35.

    что это Команда

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

      что такое питон
    
    # python (1) — интерпретируемый, интерактивный, объектно-ориентированный язык программирования
    
    что есть что
    
    # whatis (1) - отображать однострочные описания страниц руководства  

    36.

    туалет Команда

    Wc означает «количество слов» и, как следует из названия, возвращает количество слов в текстовом файле:

    .
      wc long.txt
    
    # 37 207 1000 long.txt  

    Давайте разберем вывод этой команды:

    • 37 строк
    • 207 слов
    • Размер 1000 байт
    • Имя файла (long.txt)

    Если вам нужно только количество слов, используйте флаг -w :

      wc -w длинный.текст
    
    207 длинный.txt  

    37.

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

    uname (сокращение от «Unix name») выводит информацию об операционной системе, которая пригодится, если вы знаете текущую версию Linux.

    Большую часть времени вы будете использовать флаг -a (-all), так как вывод по умолчанию не так полезен:

      одно имя
    
    # Линукс
    
    uname -а
    
    # Linux kinstamanjaro 5.4.138-1-MANJARO #1 SMP PREEMPT Чт, 5 августа, 12:15:21 UTC 2021 x86_64 GNU/Linux  

    38.

    Неофетч Команда

    Neofetch — это инструмент CLI (интерфейс командной строки), который отображает информацию о вашей системе — например, версию ядра, оболочку и аппаратное обеспечение — рядом с логотипом ASCII вашего дистрибутива Linux:

      неофетч  
    Команда neofetch.

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

    39.

    найти Команда

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

    .
      найти [флаги] [путь] -имя [выражение]  

    Чтобы найти файл с именем long.txt в текущем каталоге, введите следующее:

      найти  ./  -name "long.txt" # ./long.txt  

    Для поиска файлов с расширением .py (Python) можно использовать следующую команду:

      найти  ./  -type f -name "*.py" ./get_keys.py ./github_automation.ру ./binarysearch.py ​​ 

    40.

    wget Команда

    wget (World Wide Web get) — это утилита для извлечения содержимого из Интернета. Здесь находится одна из самых больших коллекций флагов.

    Вот как можно загрузить файл Python из репозитория GitHub:

      wget https://raw.githubusercontent.com/DaniDiazTech/Object-Oriented-Programming-in-Python/main/object_oriented_programming/cookies.py  

    Памятка по командам Linux

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

    Команда Применение
    лс Выводит содержимое каталога
    псевдоним Определение или отображение псевдонимов
    без псевдонима Удалить псевдоним определений
    пароль Печатает рабочий каталог
    CD Каталог изменений
    КП Копирует файлы и каталоги
    п/м Удалить файлы и каталоги
    мв Перемещает (переименовывает) файлы и каталоги
    мкдир Создает каталоги
    мужчина Отображает справочную страницу других команд
    сенсорный Создает пустые файлы
    чмод Изменяет права доступа к файлам
    ./ Запускает исполняемый файл
    выход Выход из текущего сеанса оболочки
    Судо Выполняет команды как суперпользователь
    выключение Выключает вашу машину
    верхняя часть Отображает информацию о процессах и ресурсах
    разархивировать Извлекает сжатые ZIP-файлы
    ап , ням , пакман Менеджеры пакетов
    эхо Отображает строки текста
    кат Распечатывает содержимое файла
    шт. Сообщает о состоянии процессов оболочки
    убить Завершает программы
    эхо-запрос Проверка подключения к сети
    вим Эффективное редактирование текста
    история Показывает список предыдущих команд
    пароль Изменяет пароль пользователя
    который Возвращает полный двоичный путь программы
    измельчить Перезаписывает файл, чтобы скрыть его содержимое
    меньше Интерактивная проверка файлов
    хвост Отображает последние строки файла
    головка Отображает первые строки файла
    группа Печатает строки, соответствующие шаблонам
    кто Выводит имя пользователя
    что есть Показывает однострочные описания
    туалет Файлы подсчета слов
    одно имя Отображает информацию об ОС
    неофетч Отображает информацию об ОС и оборудовании
    найти Ищет файлы по шаблону
    wget Получает файлы из Интернета

     

    По состоянию на 2020 год Linux была самой используемой операционной системой профессиональными разработчиками 😲 Изучите 40 наиболее часто используемых команд и начните пользоваться преимуществами этой мощной системы с помощью этого поста🚀Нажмите, чтобы твитнуть

    Резюме

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

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

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


    Экономьте время, деньги и максимизируйте производительность сайта с:

    • Мгновенная помощь от экспертов по хостингу WordPress, круглосуточно и без выходных.
    • Интеграция Cloudflare Enterprise.
    • Глобальный охват аудитории благодаря 29 центрам обработки данных по всему миру.
    • Оптимизация с помощью нашего встроенного мониторинга производительности приложений.

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

    Шпаргалка по командам Linux


    Из этой памятки командной строки Linux/Unix вы узнаете:

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

    .
    Команда Описание
    лс Список всех файлов и каталогов в текущем рабочем каталоге
    лс-р Список файлов в подкаталогах, а также
    лс-а Выводит также список скрытых файлов
    лс-ал Список файлов и каталогов с подробной информацией, такой как разрешения, размер, владелец и т. д.
    компакт-диск или компакт-диск ~ Перейти к домашнему каталогу
    кд .. Перейти на один уровень вверх
    CD Для перехода к определенному каталогу
    компакт-диск / Перейти в корневой каталог
    кот > имя файла Создает новый файл
    имя файла кота Отображает содержимое файла
    cat файл1 файл2 > файл3 Объединяет два файла (файл1, файл2) и сохраняет вывод в новом файле (файл3)
    mv файл "новый путь к файлу" Перемещает файлы в новое место
    mv имя файла новое_имя_файла Переименовывает файл в новое имя файла
    Судо Позволяет обычным пользователям запускать программы с привилегиями безопасности суперпользователя или root
    rm имя файла Удаляет файл
    мужчина Предоставляет справочную информацию о команде
    история Выдает список всех прошлых команд, введенных в текущем сеансе терминала
    прозрачный Очищает терминал
    mkdir имя_каталога Создает новый каталог в текущем рабочем каталоге или по указанному пути
    корневой каталог Удаляет каталог
    мв Переименовывает каталог
    пр-х Разбивает файл на x столбцов
    пр-ч Назначает заголовок файлу
    пр-н Обозначает файл с номерами строк
    лп-нк, лпр к Печатает «c» копий файла
    лп-д лп-п
    Указывает имя принтера
    способ получить
    Команда, используемая для установки и обновления пакетов
    mail -s 'тема'
    -c 'cc-address'

    -b 'bcc-address'
    'to-address'
    Команда для отправки электронной почты
    mail -s "Тема"
    to-address < имя файла
    Команда для отправки электронной почты с вложением

    Команды доступа к файлам

    Команда Описание
    лс-л , чтобы показать тип файла и разрешение на доступ
    р разрешение на чтение
    ш разрешение на запись
    х разрешение на выполнение
    -= нет разрешения
    Пользователь Chown Для смены владельца файла/каталога
    Пользователь Chown: имя файла группы изменить пользователя, а также группу для файла или каталога

    Команда переменных среды

    Команда Описание
    эхо $ПЕРЕМЕННАЯ Для отображения значения переменной
    env Отображает все переменные среды
    ИМЯ_ПЕРЕМЕННОЙ = значение_переменной Создать новую переменную
    Снят с охраны Удалить переменную
    экспорт Переменная=значение Установить значение переменной окружения

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

    Команда Описание
    sudo adduser имя пользователя Чтобы добавить нового пользователя
    sudo пароль -l 'имя пользователя' Чтобы изменить пароль пользователя
    sudo userdel -r 'имя пользователя' Чтобы удалить вновь созданного пользователя
    sudo usermod -a -G ИМЯ ГРУППЫ ИМЯ ПОЛЬЗОВАТЕЛЯ Чтобы добавить пользователя в группу
    sudo deluser USER GROUPNAME Чтобы удалить пользователя из группы
    палец Показывает информацию обо всех пользователях, вошедших в систему
    имя пользователя пальца Предоставляет информацию о конкретном пользователе

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

    Команда Описание
    SSH имя пользователя@ip-адрес или имя хоста войти на удаленную машину Linux, используя SSH
    Ping hostname="" или ="" Проверка связи и анализ сетевых и хост-соединений
    директор Показать файлы в текущем каталоге удаленного компьютера
    CD "Имя" изменить каталог на «dirname» на удаленном компьютере
    положить файл загрузить «файл» с локального на удаленный компьютер
    получить файл Загрузка «файла» с удаленного компьютера на локальный
    выход Выход

    Команда процесса

    Команда Описание
    бг Чтобы перевести процесс в фоновый режим
    фг Чтобы запустить остановленный процесс на переднем плане
    верх Подробная информация обо всех активных процессах
    шт. Дать статус запущенных процессов для пользователя
    пс PID Дает статус определенного процесса
    пидоф Выдает идентификатор процесса (PID) процесса
    убить PID Убивает процесс
    Ницца Запускает процесс с заданным приоритетом
    ренис Изменяет приоритет уже запущенного процесса
    дф Освобождает место на жестком диске вашей системы
    бесплатно Предоставляет свободную оперативную память в вашей системе

    Команды редактирования VI

    Команда Описание
    и Вставить в курсор (переход в режим вставки)
    и Запись после курсора (переходит в режим вставки)
    А Запись в конце строки (переходит в режим вставки)
    ЭКУ Завершить режим вставки
    и Отменить последнее изменение
    У Отменить все изменения для всей строки
    или Открыть новую строку (перейти в режим вставки)
    дд Удалить строку
    3-й Удалить 3 строки
    Д Удалить содержимое строки после курсора
    С Удалить содержимое строки после курсора и вставить новый текст.Нажмите клавишу ESC, чтобы завершить вставку.
    дв Удалить слово
    4дв Удалить 4 слова
    Изменить слово
    х Удалить символ рядом с курсором
    р Заменить символ
    Р Перезаписать символы, начиная с курсора
    с Заменить один символ под курсором, продолжить вставку
    С Заменить всю строку и начать вставку в начале строки
    ~ Изменить регистр отдельных символов

    Надеюсь, это справочное руководство по Linux поможет вам!

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

    Коснитесь кошачьего хвоста.Найдите голову человека. ВОЗ?

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

    Мы только что опубликовали курс на YouTube-канале freeCodeCamp.org, который научит вас использовать 50 наиболее распространенных команд Linux и терминала.

    Все эти команды работают в Linux, macOS, WSL и везде, где есть среда UNIX.

    Кольт Стил разработал этот курс. Кольт — один из самых популярных преподавателей веб-разработки, и он превосходный преподаватель.

    Однажды вам может понадобиться эта информация, чтобы обезвредить бомбу. (источник: xkcd)

    В этом курсе вы узнаете о следующих темах и командах:

    • Зачем использовать командную строку?
    • Мир операционных систем
    • Что такое Linux?
    • Shools and Bash
    • Настройка для Linux пользователей
    • Настройка для Mac пользователей
    • Настройка для Windows (WSL)
    • с помощью Terminal
    • WHOAMI
    • MAN
    • CLEAR
    • PWD
    • LS
    • кд
    • MkDir
    • касание
    • RmDir
    • ет
    • открытых
    • мв
    • сП
    • голова
    • хвост
    • дата
    • перенаправлять стандартный вывод
    • кошки
    • менее
    • эха
    • туалет
    • трубопроводов
    • рода
    • уник
    • разложения
    • дифференциалов
    • находка
    • Grep
    • дю
    • ДФ
    • История
    • пс
    • топ
    • убить
    • killall
    • рабочих мест, Б.Г., и фг
    • gzip
    • gunzip
    • tar (команда обезвреживания бомбы)
    • nano
    • псевдоним
    • Xargs
    • LN
    • LN
    • SU
    • Sudo
    • Sudo
    • Chavdwd
    • Chavdwd
    • Chawn
    • Понимание разрешений
    • CHMOD
    • CHMOD

    Смотреть полный курс ниже или на FreeCodeCamp.org YouTube канал (5 часов просмотра).

    Интерфейс командной строки Linux Введение: Руководство по CLI Linux

    Давайте познакомимся с интерфейсом командной строки Linux (CLI).

    Введение

    Командная строка Linux — это текстовый интерфейс для вашего компьютера.

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

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

    Немного истории

    The Bourne Sh ell (sh) был первоначально разработан Стивеном Борном во время работы в Bell Labs.

    Выпущен в 1979 году в версии 7 Unix, распространяемой среди колледжей и университетов.

    B ourne A gain Sh ell (bash) был написан как бесплатная замена Bourne Shell с открытым исходным кодом.

    Учитывая открытый характер Bash, со временем он был принят в качестве оболочки по умолчанию в большинстве систем Linux.

    Первый взгляд на командную строку

    Теперь, когда мы рассмотрели некоторые основы, давайте откроем окно терминала и посмотрим, как оно выглядит!

    При открытии терминала отображается подсказка.

    Давайте проанализируем скриншот выше:

    Строка 1: Приглашение оболочки, оно состоит из [email protected]:location$

    • Имя пользователя: наше имя пользователя называется «Джон»
    • Имя хоста: Имя системы, в которой мы вошли
    • Местоположение: рабочий каталог, в котором мы находимся
    • $: Ограничивает конец подсказки

    После знака $ мы можем ввести команду и нажать Enter, чтобы эта команда была выполнена.

    Строка 2: После приглашения мы набрали команду whoami , что означает «кто я», и нажали [Enter] на клавиатуре.

    Строка 3: Показывает результат выполнения ранее введенной нами команды whoami , также известной как вывод команды. Эта команда просто выводит имя текущего пользователя.

    Строка 4: Показывает пример другой базовой команды с именем pwd , что означает печать рабочего каталога.

    Строка 5: Как было показано ранее, эта строка показывает результат ранее выполненной команды. /tmp — это наш рабочий каталог.

    Строка 6: Представляет нам новую подсказку и ждет, пока мы введем новую команду.

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

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

    Типичный синтаксис может выглядеть примерно так:

    команда [-аргумент] [--long-argument] файл

    Пример:

    Сначала мы ввели команду ls , что означает список.По умолчанию эта команда напечатает содержимое текущего каталога.

    Во-вторых, мы добавили аргумент к ls , введя пробел и -l . Этот аргумент изменяет формат вывода ls и означает «формат длинного списка».

    Затем мы добавили еще один аргумент -h , который означает «человек». Этот аргумент указывает команде ls печатать размер файла в удобочитаемом формате.

    Позже мы объединили два аргумента, -l и -h в -lh , что дало нам тот же результат, и мы дали имя файла «ls».Результат показывает нам только файл, переданный в качестве последнего аргумента.

    В качестве последнего примера мы заменили короткий аргумент -h его эквивалентной длинной формой аргумента --human-readable . Как видите, вывод команды не изменился.

    Примечания

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

    В оболочке Linux имена команд, файлов и каталогов чувствительны к регистру, что означает, что при вводе pwd будет напечатан текущий рабочий каталог, а при вводе PWD будет возвращена ошибка, аналогичная -bash: PWD: команда не найдена

    • / (прямая косая черта) — это специальный символ, используемый в качестве разделителя каталогов

    Интерфейс командной строки Linux полон специальных символов, и мы более подробно рассмотрим эту тему.Пока просто имейте это в виду.

    • Расширения файлов не имеют значения

    Если вы пришли из Windows, файл с расширением .exe означает, что это исполняемый файл. В Linux CLI тип файла определяется автоматически. (Прочитав заголовок файла).

    • Почти каждая команда Linux поддерживает --help аргумент

    Во время знакомства с интерфейсом командной строки вы часто будете задаваться вопросом: «Какой аргумент мне нужен, чтобы выполнить X?» Ответ просто --help прочь.

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

    Фантастика, вы зашли так далеко. Вы доказали свою мотивацию!

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

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

    Мы уже видели некоторые из них, например, мы использовали pwd для печати рабочего каталога и ls для вывода содержимого каталога, но теперь давайте расширим наш список команд!

    пароль

    Как мы уже видели, pwd просто выведет текущий рабочий каталог.

    лс

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

    файл

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

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

    В приведенном ниже примере мы видим john_file с расширением «.exe», команда file выводит реальный тип файла, в данном случае простой текстовый файл.

    кот

    Команда cat распечатает содержимое текстового файла, заданного в качестве аргумента.

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

    Команда cd , что означает «Изменить каталог», изменит ваш рабочий каталог на тот, который был передан в качестве аргумента.

    Обратите внимание, как изменилась подсказка.

    прозрачный

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

    Чтобы очистить экран и начать все заново, введите команду clear .

    история

    Команда history покажет исторический список команд, которые были введены в сеансе терминала.

    кп

    Команда cp , означающая копирование, используется для создания копии файла/каталога.

    Чтобы создать копию john_file и назвать нашу копию copy_of_john_file , мы будем использовать команду cp .

    Команда cp ничего не выводит, но наше действие было выполнено, как и ожидалось.

    мв

    Команда mv , обозначающая перемещение, перемещает файл/папку в новое место или переименовывает ее.

    Чтобы переименовать файл copy_of_john_file в john_file_renamed , мы будем использовать mv .

    Чтобы переместить файл john_file_renamed внутрь john_directory , мы по-прежнему будем использовать mv .

    Примечание: При указании файла в терминале косая черта «/» в конце указывает, что это каталог.

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

    п.м.

    Наша последняя, ​​но не менее важная команда для сегодняшней статьи — rm , что означает удаление.

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

    Теперь попробуем удалить все файлы и папку, которую мы создали.

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

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

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

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

    Учебник по Linux — Освойте командную строку

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

    Ваше окно в компьютер.

    Введение

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

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

    Так что же это такое?

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

    Командная строка обычно представляет собой подсказку. По мере ввода он будет отображаться после подсказки. Большую часть времени вы будете отдавать команды. Вот пример:

    1. лс -л /дом/райан
    2. всего 3
    3. drwxr-xr-x 2 пользователя ryan 4096 23 марта 13:34 bin
    4. drwxr-xr-x 18 пользователей ryan 4096 17 февраля 09:12 Документы
    5. drwxr-xr-x 2 пользователя ryan 4096 5 мая 17:25 public_html

    Давайте разберем:

    • Строка 1 представляет нам подсказку ( [email protected] ).После этого вводим команду ( ls ). Обычно команда — это всегда первое, что вы вводите. После этого у нас есть так называемые аргументы командной строки ( -l /home/ryan ). Важно отметить, что они разделены пробелами (также должен быть пробел между командой и первым аргументом командной строки). Первый аргумент командной строки ( -l ) также называется опцией. Параметры обычно используются для изменения поведения команды. Опции обычно указываются перед другими аргументами и обычно начинаются с дефиса (-).
    • Строки 2–5 выводятся при выполнении команды. Большинство команд производят вывод, и он будет указан прямо под выдачей команды. Другие команды просто выполняют свою задачу и не отображают никакой информации, если только не произошла ошибка.
    • Строка 6 снова представляет нам подсказку. После выполнения команды и готовности терминала к вводу другой команды отобразится приглашение. Если подсказка не отображается, возможно, команда все еще выполняется (позже вы узнаете, как с этим справиться).
    • Вероятно, на вашем терминале не будет номеров строк. Я только что включил их сюда, чтобы упростить обращение к различным частям материала.

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

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

    • Если вы работаете на Mac, вы найдете программу Terminal в разделе Applications -> Utilities .Простой способ добраться до него — это комбинация клавиш «команда + пробел», которая вызовет Spotlight, затем начните вводить «Терминал», и он скоро появится.
    • Если в Linux, то вы, вероятно, найдете его в Applications -> System или Applications -> Utilities . В качестве альтернативы вы можете «щелкнуть правой кнопкой мыши» на рабочем столе, и может быть опция «Открыть в терминале».
    • Если вы работаете в Windows и собираетесь удаленно войти на другую машину, вам понадобится SSH-клиент.Довольно хорошим является Putty (бесплатно).

    Оболочка, Баш

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

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

    Пока он выводит на экран что-то, заканчивающееся на bash, все в порядке.

    Ярлыки

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

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

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

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

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

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

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

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

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

    • && — Это настолько просто, что технически это даже не команда. Если вы когда-нибудь захотите запустить несколько команд в последовательном порядке, просто вставьте это между ними. Например,
        [команда1] && [команда2]  
      сначала запустит [command1], а затем сразу после этого [command2]. Вы можете связать столько команд, сколько хотите.
    • ! — Повторяет недавно использованную команду. Лучше всего использовать его вместе с
        история  
      команда. Вы можете использовать
        !n  
      повторить n-ю команду в истории. Вы также можете использовать
        !-n  
      повторить команду, которая произошла n команд назад.
    • cd — Изменяет текущий каталог терминала.
    • clear — очищает экран терминала.
    • history — Отображает список всех недавно использовавшихся команд. Вы также можете переключаться между недавно использованными командами, нажимая клавиши со стрелками вверх и вниз в терминале.
    • ls — Отображает список всех файлов в текущем каталоге терминала. Вы можете изменить его с помощью параметров, чтобы указать другой каталог или изменить формат списка.
    • man — Отображает страницу справки (из руководства) на основе вашего поискового запроса. Очень полезно для изучения того, как использовать команду, которую вы не знаете, или когда вы забыли параметры редко используемой команды.Если вы когда-нибудь запутались, обратитесь к человеку.
    • pwd — Отображает текущий каталог терминала в виде абсолютного пути.
    • whatis — Отображает краткие описания программ командной строки. Думайте об этом как об упрощенной версии
        мужчина  
      когда вы не уверены, что делает команда, но вам не нужно полное руководство по ее использованию.
    Изображение предоставлено: фатмавати ахмад заэнури через Shutterstock

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

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

    • cat — При использовании в одном текстовом файле будет отображаться содержимое этого файла.При использовании с двумя или более текстовыми файлами все их содержимое будет отображаться в последовательном порядке. Используйте оператор перенаправления (« > «), чтобы объединить несколько текстовых файлов в один текстовый файл.
    • chmod/chown
        чмод  
      команда изменяет права на чтение, запись и выполнение файла, в то время как
        чаун  
      Команда изменяет пользователя и/или группу пользователей, которым принадлежит файл.
    • cp — Делает копию файла. По умолчанию копия появляется в текущем каталоге терминала, но вы также можете указать каталог назначения.
    • find — Выполняет поиск в определенном каталоге (или во всей вашей системе) для поиска файлов, соответствующих заданному набору критериев. Существуют десятки параметров, включая имя файла, тип файла, размер файла, разрешения, владельцев, дату создания, дату изменения и т. д.
    • grep — Выполняет поиск в определенном файле или наборе файлов, чтобы узнать, существует ли заданная строка текста, и, если да, сообщает, где текст находится в этих файлах. Эта команда очень гибкая (например, использовать подстановочные знаки для поиска всех файлов заданного типа) и особенно полезна для программистов (для поиска определенных строк кода).
    • locate — Ищет во всей системе файлы или каталоги, соответствующие поисковому запросу, а затем выводит абсолютные пути для каждого совпадения.По умолчанию он ищет только в каталогах, для которых у вас есть разрешения. Это самый простой и быстрый способ найти файл.
    • mkdir/rmdir — создает или удаляет каталог, по умолчанию в текущем каталоге терминала, но также можно указать целевой каталог. При удалении каталог должен быть полностью пуст.
    • mv — Перемещает файл из одного каталога в другой, и вы можете указать другое имя для файла в целевом каталоге.Вы можете использовать эту команду, чтобы переименовать файл, переместив его в тот же каталог, но с другим именем файла.
    • nano/emacs/vim — три основных терминальных текстовых редактора, которые существуют почти во всех системах Linux, в порядке возрастания сложности. Новичкам следует придерживаться
        нано  
      Как оба
        емакс  
      а также
        вим  
      дико сложны (и дико сильны).
    • переименовать — Изменяет имя файла или набора файлов. Поставляется с множеством интересных параметров, позволяющих автоматически переименовывать кучу файлов по шаблону.
    • rm — Удаляет файлы. С определенным параметром его можно использовать для очистки всего содержимого указанного каталога. Его также можно использовать для удаления нескольких файлов, которые соответствуют определенному шаблону имени файла.
    • touch — Изменяет дату доступа или дату изменения данного файла на прямо сейчас.
    • wget — Загружает файл или страницу по указанному веб-URL.
    • zip/gzip/tar — Различные форматы для сжатия и распаковки файловых архивов.
    Кредит изображения: isak55 через Shutterstock

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

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

    • apt — Пока
        кв  
      сама по себе не является командой, есть три команды, которые вы должны знать, чтобы в полной мере использовать APT:
        добавить репозиторий  
      (для поиска сторонних пакетов),
        способ получить  
      (для фактической установки пакетов) и
        apt-кэш  
      (для поиска в ваших репозиториях).
      • Если ваш дистрибутив не использует APT, он может использовать YUM, RPM или другую альтернативу. Посмотрите на их эквивалентные команды.
    • bg/fg — Отправляет приоритетное задание для выполнения в фоновом режиме или фоновое задание для выполнения на переднем плане. Подробнее о вакансиях см.
        рабочих мест  
      команда.
    • df — Показывает, сколько места занято и свободно в вашей системе.
    • free — Отображает количество используемой и свободной оперативной памяти в вашей системе.
    • ip  — Отображает полезные сведения о сети, такие как ваш IP-адрес, сетевые интерфейсы, использование полосы пропускания и многое другое. Может также использоваться для настройки параметров, связанных с сетью.
    • заданий — Отображает все текущие задания и их статусы. Задание — это просто представление запущенного процесса или группы процессов.
    • kill/killall — Вы можете использовать
        убить  
      для завершения процесса в соответствии с его идентификатором процесса (часто используется в сочетании с
        шт.  
      команда), тогда как вы можете использовать
        убитьвсе  
      чтобы завершить все процессы, имена которых соответствуют вашему запросу.
    • mount/umount — Присоединяет и отсоединяет отдельную файловую систему от основной файловой системы вашей системы. В основном используется для обеспечения взаимодействия внешних устройств, таких как жесткие диски или USB-накопители, с вашим компьютером.
    • ps — Отображает список запущенных в данный момент процессов. По умолчанию в нем перечислены только процессы, запущенные под вашим текущим пользователем, но существуют параметры для поиска и фильтрации всех видов процессов.
    • sudo/gksudo — В ожидании
        Судо  
      позволяет запускать любую команду от имени суперпользователя (например,
        судо [команда 1]  
      ). Если вы хотите запустить графическую программу с правами суперпользователя, используйте
        гксудо  
      затем исполняемый файл программы.
    • top — Отображает список запущенных в данный момент процессов, отсортированных по тому, сколько ЦП использует каждый процесс. В отличие от
        шт.  
      , эта команда регулярно обновляется в режиме реального времени. В основном терминал, эквивалентный диспетчеру задач.
    • uname — Отображает основную системную информацию в зависимости от используемых вами параметров, таких как имя и версия ядра, аппаратное обеспечение компьютера и операционная система.
    • uptime — Отображает время, прошедшее с момента последней загрузки.
    • , где — Находит расположение исполняемого файла для данной программы.
    • whoami — Отображает текущее имя пользователя. Удобно, когда вы переключаетесь между пользователями с
        к  
      команда, и вы теряете из виду, кто вы в данный момент.

    Заинтересованы в одновременном запуске нескольких команд? Посмотрите, как вы можете работать в многозадачном режиме на терминале Linux с помощью Screen.

    Посмотрите, какие команды вы используете чаще всего

    Как ваши собственные привычки работы с терминалом Linux отражают эти команды? Если вам нужен окончательный ответ, на самом деле довольно просто увидеть ваши личные наиболее часто используемые команды, и мы можем увидеть, что они из себя представляют, используя одну из команд, упомянутых выше:

      история | awk '{напечатать $2}' | сортировать | уникальный -c | сортировать -рн | головка -10  

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

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

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

    Довольно изящно, но теряет точность каждый раз, когда вы очищаете кэш Bash.

    Для дальнейшего чтения, почему бы не взглянуть на различия между Linux и Unix?

    6 лучших надстроек Gmail для повышения производительности

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

    Читать Далее

    Об авторе Джоэл Ли (опубликовано 1506 статей)

    Джоэл Ли ранее был главным редактором MakeUseOf с 2018 по 2021 год.У него есть B.S. в области компьютерных наук и более девяти лет профессионального опыта написания и редактирования.

    Более От Джоэла Ли
    Подпишитесь на нашу рассылку

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

    Нажмите здесь, чтобы подписаться

    Команды Linux — Учебники по Linux

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

    В этом уроке вы узнаете:

    • Как использовать команды Linux
    Руководство по командам Linux
    Требования к программному обеспечению и соглашения о командной строке Linux
    Категория Требования, соглашения или используемая версия программного обеспечения
    Система Любая система Linux
    Программное обеспечение Оболочка Баша
    Прочее Привилегированный доступ к вашей системе Linux от имени пользователя root или с помощью команды sudo .
    Соглашения # — требует, чтобы данные команды linux выполнялись с привилегиями root либо непосредственно от имени пользователя root, либо с помощью команды sudo
    $ — требует выполнения данных команд linux от имени обычного непривилегированного пользователя

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

    Скорее всего, всякий раз, когда вы слышите, как кто-то говорит об операционной системе GNU/Linux, вы также слышите, как они говорят о командной строке или командах Linux.Запустите эту команду и выполните ту и ту команду! Верно?

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

    Многие начинающие пользователи GNU/Linux связывают командную строку и команды Linux с трепетом, магическими навыками высокого уровня и ненужными накладными расходами.

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


    Поэтому не будем обвинять систему GNU/Linux в наших недостатках! Он здесь, чтобы помочь, являетесь ли вы полным новичком или пользователем продвинутого уровня. Насколько система может вам помочь, не зависит от глубины вашего кошелька, как это бывает с некоторыми другими проприетарными операционными системами! Объем помощи, которую вы получаете от системы GNU/Linux, зависит исключительно от вашего желания учиться и вашей решимости.

    На данном этапе я уверен, что вопрос, который вы задаете себе, звучит так: Нужно ли мне изучать командную строку GNU/Linux и множество команд для использования операционной системы GNU/Linux? Быстрый ответ — нет! Любая приличная операционная система GNU/Linux с установленным графическим интерфейсом не требует от пользователя использования командной строки для выполнения основных и даже сложных задач.

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

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



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

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

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

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

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

    Теперь вы можете подумать: Хорошо, это все хорошо, но сколько там команд и нужно ли мне их все учить? Количество команд Linux, доступных в вашей системе GNU/Linux, не имеет значения, поскольку это число всегда отличается от системы к системе. Однако, если вы настаиваете на точном числе, выполните следующую команду в своем терминале:

     $ для i в ${PATH//:/ }; сделать ls $i; сделано | сортировать | уникальный | туалет -л
     

    В моей установке Ubuntu Desktop Linux доступно ровно 2024 команд.

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

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

    Ладно, хватит болтовни и приступим!



    Основные команды файловой системы и навигации Linux

    Аргументы, опции и параметры командной строки

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

    Лучшим инструментом для объяснения различий между аргументами, опциями и параметрами командной строки Linux является команда ls. Не беспокойтесь, если вы еще не знаете команду ls , так как эта команда подробно описана в последующих разделах. Откройте терминал и выполните следующую команду. Не вводите знак $ , так как этот знак служит только для информирования вас о том, что это команда, которая должна быть выполнена в командной строке и должна выполняться как обычный непривилегированный пользователь:

     $ лс
     

    После того, как вы ввели приведенную выше команду и нажали клавишу ENTER, команда выводит список всех файлов и каталогов в вашем текущем каталоге.На данный момент не обращайте внимания на вывод команды и обратите внимание, что эта команда состоит из одного аргумента, который является самой командой ls . Мы называем этот аргумент аргументом 0 . Затем попробуйте эту команду:

     $ лс -а
     

    Приведенная выше команда состоит из двух аргументов. Первый аргумент, называемый аргументом 0 , — это сама команда ls , а второй аргумент, пронумерованный как 1 , — это параметр -a команды ls .

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

    Находясь в домашнем каталоге, выполните следующую команду:

     $ лс -л .bashrc
     

    Если вы следите, то уже знаете, что приведенная выше команда состоит из трех аргументов. Во-первых, это аргумент 0 самой команды. Второй аргумент, точнее, аргумент 1 , является параметром -l команды ls , который предписывает команде ls выводить длинный список, предоставляя пользователю дополнительную информацию об одном или нескольких файлах. Наконец, номер третьего аргумента 2 — это параметр, передаваемый команде ls , который указывает команде действовать только с одним файлом с именем .башрк .

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

     $ ls -l -h .bashrc .bash_history
     

    В данном случае наша команда состоит из пяти аргументов. Существует команда ls , две опции, а именно -l и -h , и, наконец, есть два имени файла в качестве параметров, .bashrc и .bash_history файл.

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

    .
     $ ls .bashrc -l .bash_история -h
     

    Наконец, чтобы сократить вашу команду, чтобы сделать ее более читаемой, большинство команд позволяют пользователю объединять несколько параметров в один аргумент. Это означает, что можно объединить опции -l и -h в один аргумент как -lh . Например:

     $ ls -lh .bashrc .bash_history
     

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



    Навигация по файловой системе

    В этом разделе рассматривается еще одна важная часть командной строки Linux — навигация по файловой системе. На протяжении многих лет я видел, как многим пользователям было трудно понять навигацию по файловой системе GNU/Linux, поскольку она резко отличается от обычных дисков C: или D: . В этом разделе вы также изучите первые две команды Linux: команду cd и команду pwd .

    Начнем со следующего утверждения: Забудьте о дисках C: или D: , которые вы знаете по другим проприетарным операционным системам. Это знание здесь не применимо и может только запутать вас.
    Файловая система GNU/Linux позволяет получить доступ к любому жесткому диску или разделу из любого каталога во всей файловой системе. Однако на данном этапе нам не следует беспокоиться об этом.

    Возможно, лучшая аналогия для описания файловой системы GNU/Linux — это та, которую я уже использовал в своем Учебнике по написанию сценариев Bash.Представьте файловую систему GNU/Linux в виде многоэтажного здания. Так называемый корневой каталог (входная дверь здания), обозначенный /, обеспечивает вход во всю файловую систему (здание), следовательно, дает доступ ко всем каталогам (уровням/комнатам) и файлам (людям).

    Чтобы перейти в комнату 1 на уровне 3, нам сначала нужно войти в главную дверь /, затем пройти на уровень 3 level3/ и оттуда войти в комнату room1 . Следовательно, абсолютный путь к этой конкретной комнате в здании равен /level3/room1 .Отсюда, если мы хотим посетить комнату 2 также на уровне 3, нам сначала нужно покинуть наше текущее местоположение, то есть комнату 1, введя ../ , а затем включить имя комнаты room2 . Мы взяли относительный путь к room2, который в данном случае равен ../room2 . Мы уже были на уровне 3, поэтому не нужно было покидать все здание и идти по абсолютному пути через главный вход /level3/room2 .
    Запутанно? Не беспокойтесь, после нескольких сеансов работы с командной строкой GNU/Linux знания впитаются и станут вашей второй натурой.

    Хотите верьте, хотите нет, но операционная система GNU/Linux предоставляет всем пользователям компас для помощи в навигации по файловой системе в виде команды pwd ( p rint w orking d irectory). Каждый раз, когда вы заблудитесь, просто введите команду pwd , и она укажет вам путь. Попробуй это сейчас. Откройте терминал и введите pwd , а затем ENTER:

    .
     $ в день
     

    Пример команды pwd для печати пути к текущему рабочему каталогу.

    По умолчанию ваш начальный рабочий каталог всегда является вашим домашним каталогом. У каждого несистемного пользователя есть свой каталог, расположенный в каталоге /home . Как показано на изображении выше, абсолютный путь к домашнему каталогу пользователя linuxconfig /home/linuxconfig . Если в вашей системе есть пользователь «john», то абсолютный путь к домашнему каталогу этого пользователя — /home/john .

    На этом этапе мы должны знать, как вводить команды в командной строке, а также знать, как получить наше текущее местоположение в файловой системе.Пора начинать двигаться. Для этого мы используем команду cd ( c hange d irectory). Команда cd позволяет пользователю перейти к любому каталогу, доступному в файловой системе, при условии, что у пользователя есть соответствующие права доступа.

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

    .
      $ кд/дом
    $ компакт-диск linuxconfig
    $ кд /
    $ cd домой/linuxconfig
    $ cd ../linuxconfig
    $ кд ../../и т.д.
    $ cd /home/linuxconfig  

    За исключением строк 5 и 6, приведенные выше команды говорят сами за себя. В строке 5 мы использовали ярлык ../ для перехода к родительскому каталогу каталога linuxconfig . В строке 6 мы переместились на два каталога вверх и, в конце концов, перешли к каталогу и т. д. .

    Навигация по командной строке Linux с помощью команды cd .

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



    Список содержимого каталога

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

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

     $ лс
     

    Выделение цветом по сравнению с обычным выводом команды ls .

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

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

    .
     $ лс-л
     

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

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

    Другим распространенным параметром команды ls является -a , в котором перечислены все, а также скрытые файлы или каталоги в каталоге. Любой файл или каталог, имя которого имеет префикс . скрыт, поэтому не включается в вывод команды ls по умолчанию.

     $ лс -а
     

    Многие параметры команды ls имеют значение только в сочетании с некоторыми другими параметрами. Например, чтобы показать размер любого выбранного файла, пользователь может указать команды ls с опцией -l и фактическим именем рассматриваемого файла в качестве параметра. Рассмотрим следующий пример команды ls , чтобы показать размер файла image.jpg :

     $ ls -l изображение.jpg
     

    Отображение размера файла с помощью команды ls Linux.

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

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

     $ лс /etc/systemd
    $ лс -л ../
    $ ls -lh /etc/услуги
     

    Пример параметра абсолютного или относительного пути с помощью команды ls .



    Создание каталога

    Назначение каталогов — поддерживать файловую систему, а значит, наши и системные файлы организованными. В этом разделе вы узнаете, как создавать каталоги с помощью команды mkdir в командной строке GNU/Linux.

    Создать каталог в системе GNU/Linux так же просто, как выполнить команду mkdir , указав желаемое непосредственное имя в качестве аргумента. Попробуй это сейчас. Откройте терминал и создайте новый каталог с именем, например. dir1 в вашем домашнем каталоге.

     $ mkdir dir1
     

    Затем используйте команду ls , чтобы просмотреть содержимое вашего текущего рабочего каталога, и, если каталог был создан правильно, вы должны увидеть его в выводе команды.

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

    Теперь есть два способа выполнить эту задачу. Во-первых, мы могли бы перейти к /tmp с помощью команды cd , а в каталоге выполнить команду mkdir , за которой следует имя нового каталога.

    Другое решение состоит в том, чтобы создать каталог, просто указав перед именем нового каталога правильный абсолютный или относительный путь к каталогу, в котором должен быть создан наш новый каталог примера . Следовательно, нет необходимости использовать команду cd для перехода в каталог /tmp/ до выполнения команды mkdir :

     $ mkdir /tmp/пример
     

    Мало что можно узнать о команде mkdir . Пока вы понимаете разницу между абсолютным и относительным путем, как объяснялось ранее, все в порядке.В сочетании с командой mkdir используется только еще одна распространенная опция — -p .

    Допустим, вы хотите создать новый каталог dir2 в существующем каталоге dir1 , а также создать новый dir3 в пределах dir2 . Первым решением будет сначала создать dir2 , а затем выполнить вторую команду mkdir для создания dir3 в каталоге dir2 .Однако при использовании параметра -p этого можно добиться выполнением одной команды mkdir :

     $ mkdir -p каталог1/каталог2/каталог3
     

    Создание каталогов с помощью команды mkdir в командной строке GNU/Linux.



    Создание файлов и чтение содержимого файла

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

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

    Давайте начнем с создания пустого файла с именем file1 в нашем домашнем каталоге. Для этого воспользуемся командой touch . Откройте терминал и введите следующую команду Linux:

    .
     $ сенсорный файл1
     

    Вот и все! Теперь вы успешно создали новый файл с именем file1 в вашем домашнем каталоге.Выполните команду ls сейчас, и вы должны увидеть этот новый файл в вашем домашнем каталоге.

    Создайте файл с помощью команды GNU/Linux коснитесь .

    Возможно, вы заметили, что мы создали файл без расширения, например .txt или .exe . Обратите внимание, расширение файла в системах GNU/Linux в большинстве случаев не имеет никакого значения, кроме того факта, что при выполнении команды ls для вывода списка всех файлов и каталогов сразу видно, что файл с расширением .txt , вероятно, является текстовым файлом ASCII, а файл с .png , вероятно, является файлом изображения.

    Здесь важно отметить, что существует множество способов создания файла в операционной системе GNU/Linux. На самом деле вам вряд ли понадобится создавать пустой файл, как мы это делали ранее. На самом деле, основной целью команды touch является не создание файлов, а управление временными метками файлов, о чем мы поговорим в другой раз.

    Поскольку основная цель файлов — хранить данные, мы собираемся сделать именно это.Давайте воспользуемся редактором текстовых файлов с именем nano , чтобы создать новый файл с именем todo-list.txt , содержащий произвольный текст. Начните с выполнения следующей команды:

     $ нано todo-list.txt
     

    После выполнения команды nano открывается редактор nano, позволяющий редактировать содержимое нового файла todo-list.txt . В редакторе nano внесите необходимые изменения в содержимое файла.

    Когда все будет готово, нажмите CTRL+o , а затем ENTER , чтобы сохранить файл.На этом этапе создается новый файл todo-list.txt . Чтобы выйти из редактора nano , нажмите комбинацию клавиш CTRL+x , как показано на рисунках ниже:

    Откройте редактор nano . Введите желаемое имя файла в качестве параметра.

    Отредактируйте содержимое файла, введя нужный текст. Когда все будет готово, нажмите комбинацию клавиш CTRL+o , чтобы сохранить текущее содержимое файла.

    Подтвердите имя файла и нажмите клавишу ENTER .



    Продолжите редактирование и повторите предыдущие два шага или выйдите из редактора nano , нажав комбинацию клавиш CTRL+x .

    Создан новый файл с именем todo-list.txt , который должен быть виден после выполнения команды ls .

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

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

    Попробуйте прямо сейчас. Выполните команду cat и укажите в качестве параметра имя файла, который вы хотите проверить. Например:

     $ кошачий список дел.текст
     

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

    Прежде чем мы пометим этот раздел как «Готово и пыльно», есть еще одна команда, с которой вам следует ознакомиться. Эта команда называется файл .

    Помните, ранее мы говорили о том, что не обязательно добавлять суффиксы к именам файлов с расширениями. Хорошо, если это так, как мы узнаем, какой тип файла хранится в нашем домашнем каталоге или где-либо в файловой системе GNU/Linux, если уж на то пошло? Здесь пригодится команда file .Команда file выводит тип любого файла, предоставленного ей в качестве параметра. Попробуйте прямо сейчас:

     $ файл todo-list.txt
     

    Получите информацию о типе файла с помощью команды file GNU/Linux.



    Переименование или перемещение файлов и каталогов

    Еще один логичный шаг — научиться переименовывать или перемещать файлы и каталоги. На этом этапе мы обсудили, как создавать файлы или каталоги, но как насчет перемещения существующего каталога или файла в другое место? Что ж, вам должно быть приятно узнать, что перемещение и переименование файлов или каталогов в системе GNU/Linux по сути одно и то же.

    Переименование и перемещение файлов в файловой системе GNU/Linux — простая задача. Все, что требуется, — это команда mv и понимание абсолютного и относительного пути, как описано выше в разделе Навигация по файловой системе выше.

    Рассмотрим следующий пример:

     $ сенсорный файл1
    $ мкдир каталог1
     

    Используя приведенные выше команды touch и mkdir , мы создали файл с именем file1 и каталог dir1 .Использование команд touch и mkdir уже было рассмотрено ранее, поэтому объяснение не требуется.

    Предстоящая задача — переименовать file1 в file2 и dir1 в dir2 с помощью команды mv . Для этого нам нужно предоставить команде mv абсолютный или относительный путь к файлу или каталогу, который мы хотим переименовать, в качестве первого параметра. Второй обязательный параметр — это абсолютный или относительный путь к файлу или каталогу, в который мы хотим переименовать наш файл или каталог:

    .
     $ mv файл1 файл2
    $ мв дир1 дир2
     

    Здесь нужно понимать, что GNU/Linux не имеет явной команды для переименования файлов.Вместо этого команда mv (сокращение от move) используется для перемещения файла или каталога из одного места в другое при изменении их имени в процессе. Рассмотрим следующий пример:

     $ mv файл2 /tmp/файл3
    $ mv каталог2 /tmp/каталог2
     

    Первая команда переместила файл2 в каталог /tmp/ и переименовала его в файл3 . Вторая команда переместила dir2 в /tmp/, и поскольку мы указали то же имя целевого каталога, имя каталога осталось прежним.

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

     $ mv dir2 /tmp/
     

    Очень важно понимать приведенную выше команду mv , так как команда mv также может принимать несколько параметров. Это означает, что можно одновременно перемещать несколько каталогов и/или файлов, выполнив одну команду mv :

    .
     $ mkdir dir4 dir5
    $ сенсорный файл4 файл5
    $  mv file4 dir4 file5 dir5 /tmp 
     

    Приведенная выше команда mv переместила несколько файлов и каталогов в новое место: каталог /tmp .Здесь важно отметить, что независимо от того, сколько исходных файлов или каталогов вы собираетесь предоставить команде mv в качестве параметров, последний предоставленный параметр рассматривается как место назначения.

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

    ПРЕДУПРЕЖДЕНИЕ :
    Если параметр файла назначения, предоставленный команде mv , уже существует, он может быть перезаписан без предупреждения, поэтому это действие может привести к необратимому удалению ваших данных без возможности восстановления.Рассмотрим следующий пример команды mv :
     $ cat /tmp/sample.txt
    linuxconfig.org
    $ сенсорный пример.txt
    $ mv sample.txt /tmp/sample.txt
    $ кошка /tmp/sample.txt
    $
     

    Если вы не уверены, используйте параметр -i , чтобы команда mv выдавала предупреждение, если целевой файл уже существует. Пример:

     $ mv -i образец.txt /tmp/sample.txt
    mv: перезаписать '/tmp/sample.txt'?
     

    На приведенном ниже рисунке показана команда mv в действии, как описано в этом разделе:

    Рабочий пример того, как перемещать и переименовывать файлы или каталоги в GNU/Linux с помощью команды mv .



    Копирование файлов и каталогов

    В предыдущем разделе мы обсуждали, как перемещать файлы и каталоги из одного места в другое с помощью команды mv GNU/Linux. В этом разделе рассматривается аналогичная тема о том, как сделать копию файлов и каталогов с помощью команды cp .

    Большая часть информации, полученной в предыдущем разделе, поможет нам изучить команду cp GNU/Linux, поскольку синтаксис команд mv и cp очень похож.Основное отличие состоит в том, что вместо перемещения файлов или каталога команда cp создает точную копию исходного файла или каталога.

    Как и в случае с командой mv , для команды cp требуется как минимум два параметра. Первый параметр — исходный файл или каталог, а второй параметр — конечный файл или каталог.

    Начнем с простого примера создания копии файла, находящегося в нашем домашнем каталоге.Сначала мы используем команду touch для создания нового файла с именем file1 , а затем делаем его точную копию с именем file2 :

    .
     $ сенсорный файл1
    $ cp файл1 файл2
     

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

     $ cp файл1 файл1
    cp: «file1» и «file1» — это один и тот же файл
     

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

    .
     $ cp файл1 /tmp/файл1
     

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

     $ cp файл1 /tmp/
     

    Вы можете использовать тот же синтаксис команды cp , чтобы сделать копию каталога. Однако есть одно существенное отличие: для копирования каталога нам нужно использовать параметр команды -r (рекурсивный) cp .Рассмотрим следующий пример:

     $ mkdir dir1
    $ cp dir1 /tmp/
    cp: -r не указано; опуская каталог 'dir1'
    $ cp -r dir1 /tmp
     

    Как и в случае с командой GNU/Linux mv , команда cp также принимает несколько параметров. Это означает, что можно копировать несколько файлов и каталогов одновременно, выполнив одну команду cp .

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

     $ mkdir dir2
    $ коснуться файл1 файл2
    $ cp -r каталог2/ файл1 файл2 /tmp/
     
    ПРЕДУПРЕЖДЕНИЕ :
    Если параметр файла назначения, предоставленный команде cp , уже существует, он может быть перезаписан без предупреждения, поэтому это действие может привести к необратимому удалению ваших данных без возможности восстановления.В некоторых случаях это поведение справедливо и для каталогов! Рассмотрим следующий пример команды cp :
     $ образец кота.txt
    linuxconfig.org
    $ коснитесь /tmp/sample.txt
    $ cp /tmp/sample.txt sample.txt
    $ кошка образец.txt
    $
     

    Если вы не уверены, используйте параметр -i , чтобы команда cp выдавала предупреждение, если целевой файл уже существует. Пример:

     $ cp -i /tmp/sample.txt sample.txt
    cp: перезаписать 'sample.текст'?
     

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

    cp Примеры команд GNU/Linux для копирования каталогов и файлов в файловую систему GNU/Linux с использованием терминала командной строки GNU/Linux.



    Удаление файлов и каталогов

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

    В этом разделе будут рассмотрены две команды. Первая команда — rmdir , а вторая — rm . Глядя на имена обеих команд rmdir и rm , вы можете быстро сделать вывод, что команда rmdir используется для удаления каталогов, а последняя команда rm используется для удаления файлов, и по большей части вы правильно.Начнем с команды rmdir .

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

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

    Как и в случае с любыми уже изученными вами командами GNU/Linux, команда rmdir также принимает несколько аргументов.Например, чтобы удалить dir4 , все, что нам нужно сделать, это предоставить командному каталогу rmdir имя каталога, который мы хотим удалить, в качестве параметра:

     $ rmdir my_files/dir4/
     

    Просто, верно? Давайте теперь удалим следующий каталог, скажем, dir1 :

     $ rmdir my_files/dir1
    rmdir: не удалось удалить «my_files/dir1»: каталог не пуст
     

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

    Логика верна! Единственный способ удалить непустой каталог — использовать довольно длинный параметр командной строки rmdir --ignore-fail-on-non-empty . Однако на этом этапе намного проще использовать команду rm .Команда rm с правильной комбинацией параметров способна удалить любое количество файлов и каталогов, независимо от того, является ли каталог пустым или заполненным любым количеством файлов и подкаталогов.

    Во-первых, давайте протестируем rm , чтобы удалить файл с именем my_file.txt :

     $ rm my_files/my_file.txt
     

    Чтобы удалить каталог с rm , нам нужно использовать комбинацию параметров -r . Параметр -r означает рекурсивный, что означает, что команда удалит любой каталог, а также его содержимое.Следующая команда удалит весь каталог my_files/dir1 , включая любой файл или подкаталог:

    ПРЕДУПРЕЖДЕНИЕ :
    Удаление файлов с помощью команды rm является необратимым действием. Это означает, что в зависимости от используемой файловой системы и использования вашей системы ваши данные не могут быть восстановлены. Обязательно дважды отмерьте и один раз отрежьте при использовании команды rm Linux.

     $ rm -r мои_файлы/каталог1/
     

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

    Удаление файлов и каталогов с помощью команды GNU/Linux rm и rmdir .



    Поиск файлов или каталогов

    К этому моменту вы уже должны быть достаточно знакомы с навигацией по файловой системе и управлением файлами/каталогами. Прежде чем мы перейдем к следующему разделу, посвященному основным командам системного администрирования GNU/Linux, мы должны обсудить, как искать файлы в случае возникновения такой необходимости.Есть две основные команды Linux, которые позволяют пользователю искать файлы. А именно, это команда locate и команда find .

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

    Основное использование команды locate Linux довольно простое. Введите , найдите , а затем имя файла или каталога в качестве параметра.Например, давайте найдем файл с именем issue :

    .
     $ найти проблему
     

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

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

    Регулярные выражения выходят далеко за рамки этого руководства. На данный момент нам нужно только знать, что для поиска точного имени файла или каталога нам нужно окружить строку / и $ . Например:

     $ locate -r /issue$
     

    Использование команды GNU/Linux locate для поиска файлов и каталогов

    Перед тем, как вы продвинетесь до звания Мастера команды locate Linux, давайте кратко обсудим, как работает команда locate .Команда locate очень быстро выполняет поиск, поскольку она просто обращается к существующему файлу индекса базы данных перед сборкой, обновляемому один раз в день с помощью команды updatedb .

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

     $ судо обновленоb
     

    updateb Пример использования команды.



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

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

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

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

     $ sudo whoami
    $ кто
     

    Команда whoami всегда возвращает имя пользователя, который ее выполняет.В этом случае мы видим, что префикс команды whoami Linux с командой sudo гарантирует выполнение команды whoami от имени пользователя root.

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

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

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

    Существуют две основные ветви дистрибутивов GNU/Linux, когда речь идет об управлении программными пакетами.

    А именно это ДЭБ и РПМ . Первая ветвь использует apt , а вторая ветвь использует команду yum для установки программного обеспечения.Конечно, есть много других вспомогательных команд, помогающих в установке или обслуживании программного обеспечения, но основные объясняются ниже.

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

     ДЕБ СИСТЕМЫ GNU/LINUX:
    $ apt search торрент-клиент
    СИСТЕМЫ RPM GNU/LINUX:
    $ yum поисковый торрент-клиент
     

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

    Допустим, пакет, который мы хотим установить, называется bittorrent . Чтобы начать установку, наша команда должна быть выполнена с правами администратора, как описано в предыдущем разделе. При появлении запроса введите y , чтобы выполнить установку:

     ДЕБ СИСТЕМЫ GNU/LINUX:
    $ sudo apt установить битторрент
    СИСТЕМЫ RPM GNU/LINUX:
    $ sudo yum установить битторрент
     

    Использование инструмента управления пакетами программного обеспечения командной строки apt для установки программного обеспечения в системе Ubuntu Linux.



    Проверка использования дискового пространства

    В этом разделе вы узнаете, как проверить размер каталога и файла, а также как получить информацию о текущем использовании дискового пространства. Первая команда Linux, которую мы рассмотрим в этом разделе, — это команда df . Имя команды df является сокращением слов d isk f ree.

    При выполнении команды df без каких-либо параметров команда возвращает информацию об используемом и доступном дисковом пространстве для всех доступных разделов в килобайтах.Выходные данные команды по умолчанию df выводят информацию об использовании диска в килобайтах. Однако это поведение можно изменить с помощью параметра -h :

    $ дф-ч
     

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

     $ дф-ч /дом
     

    Проверьте наличие свободного места на диске с помощью команды df в каталоге /home .

    ПРИМЕЧАНИЕ
    Проверка свободного места в каталоге с помощью команды df не дает никакой информации о его размере. Команда df выводит только информацию об использовании дискового пространства раздела, в котором находится каталог. Чтобы проверить размер каталога, используйте команду Linux du , как описано ниже.

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

    Чтобы получить информацию о размере файла в удобочитаемом формате, мы можем использовать описанную выше команду ls с комбинацией опций -l (long-listing) и -h (удобочитаемый) и полный или относительный путь к рассматриваемому файлу. Например, приведенная ниже команда ls вернет размер файла под названием swapfile , расположенного в корневом каталоге /:

    .
     $ ls -lh /файл подкачки
     

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

    .
     $ du -h /дом/
     

    Чтобы получить сводку по общему размеру отдельного каталога, используйте параметр -s . Еще раз, как и во всех приведенных выше примерах в этом разделе, нас интересует удобочитаемый вывод, поэтому мы используем параметр -h :

     $ ду-ш /дом/
     

    Пример использования команды Linux du для проверки размера каталога /home .



    Сжатие файлов и каталогов

    В этом разделе мы обсудим несколько способов сжатия и распаковки файлов в системе GNU/Linux. Первые инструменты, с которыми вы познакомитесь, — это команды tar и gzip . Команда tar в основном используется для объединения всего каталога в один файл и, при необходимости, применения сжатия в процессе.

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

     $ tar cf my_dir.tar my_dir
     

    Для дальнейшего сжатия полученного файла мы можем использовать команду gzip для создания сжатого файла с именем my_dir.tar.gz :

     $ gzip my_dir.tar
     

    Однако в большинстве случаев нам все равно нужно сжимать каталог, поэтому можно сжать каталог, сочетая инструменты tar и gzip в качестве альтернативы вышеуказанным командам:

     $ tar czf my_dir.tar.gz мой_каталог
     

    Файлы, созданные комбинацией команд tar и gzip , называются gzip tarballs или просто tarballs .

    Чтобы распаковать любой архив, мы можем просто отменить процесс, но вместо gzip мы будем использовать команду gunzip . Например, чтобы распаковать архив gzip my_dir.tar.gz , мы можем использовать команду gunzip :

     $ gunzip my_dir.tar.gz
     

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

     $ tar xf my_dir.tar
     

    Пример сжатия и распаковки файлов и каталогов с помощью команд tar , gzip и gunzip Linux.

    Завершение работы и перезагрузка

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

    Да, это правда, что вы можете перезагрузить свою систему, например, с помощью команды init 6 или reboot , но изучение команды shutdown дает вам больше возможностей и возможностей. Ниже приведены несколько примеров команды shutdown .

    Первый пример команды shutdown перезагрузит вашу систему через одну минуту:

     $ sudo выключение -r
     

    Чтобы немедленно перезагрузить систему GNU/Linux, выполните:

     $ sudo shutdown -r сейчас
     

    Выключение системы с помощью команды shutdown выполняется по тому же принципу, что и приведенные выше команды перезагрузки.В следующих двух примерах показано, как завершить работу системы за одну минуту, немедленно и с задержкой в ​​1,5 часа (90 минут):

     $ sudo завершение работы
    $ sudo завершение работы сейчас
    $ судо выключение +90
     

    Если вы выполнили отложенное завершение работы системы, вы можете отменить процесс завершения работы:

     $ sudo выключение -c
     


    Расширенные команды Linux

    Устранение неполадок подключения к Интернету/сети

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

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

    $ ip а
     

    Приведенная выше команда показывает IP-адрес, который в настоящее время используется системой.Обратите внимание, что имя вашего сетевого интерфейса может отличаться. В следующем примере мы получаем IP-адрес вашего шлюза. Мы снова используем команду ip , но на этот раз с параметром r (маршрут):

    $ ип р
     

    Следующая часть головоломки — IP-адрес DNS (сервер доменных имен). Чтобы проверить, какой DNS-сервер используется вашей системой для преобразования имен хостов в IP-адреса, просто проверьте содержимое файла /etc/resolv.conf с помощью команды cat , как объяснялось ранее:

     $ cat /etc/resolv.конф
     

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

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

    Используя команду ping , мы можем проверить подключение к любому IP-адресу или хосту. Команда ping отправит пакет на любой желаемый хост или IP-адрес и сообщит нам о результате.По умолчанию команда ping отправляет бесконечный пинг на выбранный IP-адрес или хост. Чтобы прервать непрерывный ping , нажмите комбинацию клавиш CTRL+C . В качестве альтернативы используйте параметр -c с комбинацией чисел, указывающих количество пакетов, которые вы хотите отправить. Например:

     $ пинг linuxconfig.org
    PING linuxconfig.org (104.24.11.18) 56 (84) байт данных.
    64 байта от 104.24.11.18 (104.24.11.18): icmp_seq=1 ttl=57 время=9.83 мс
    64 байта от 104.24.11.18 (104.24.11.18): icmp_seq=2 ttl=57 время=10,0 мс
    64 байта от 104.24.11.18 (104.24.11.18): icmp_seq=3 ttl=57 время=9,95 мс
    
    --- Статистика пинга linuxconfig.org ---
    3 пакета передано, 3 получено, 0% потери пакетов, время 2002 мс
    rtt min/avg/max/mdev = 9,833/9,933/10,008/0,073 мс
    
    $ пинг -c 2 8.8.4.4
    PING 8.8.4.4 (8.8.4.4) 56 (84) байт данных.
    64 байта из 8.8.4.4: icmp_seq=1 ttl=121 время=10,3 мс
    64 байта из 8.8.4.4: icmp_seq=2 ttl=121 время=10,4 мс
    
    --- 8.8.4.4 статистика пинга ---
    2 пакета передано, 2 получено, 0% потери пакетов, время 1001 мс
    rtt min/avg/max/mdev = 10,340/10,412/10,485/0,125 мс
     

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

    Устранение неполадок подключения к Интернету с помощью команды ping Linux.



    Изменение разрешений и владельца

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

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

     $ лс -л дир/
     

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

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

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

    .
    Тип разрешения Восьмеричное представление Символическое представление
    Чтение 4 р
    Напишите 2 с
    Выполнить 1 х

    Инструмент для изменения прав доступа к файлам или каталогам в файловой системе GNU/Linux — chmod .Есть два способа изменить права доступа к файлу или каталогу с помощью команды chmod , а именно, восьмеричное или символьное представление. Из этих двух наилучший подход — тот, который вам легче всего запомнить и использовать.

    В следующем примере показано, как использовать команду chmod как с восьмеричным, так и с символьным представлением, чтобы изменить разрешения каталога dir на следующие:

    Цель Требование Восьмеричное представление Символическое представление
    Пользователь (владелец) Чтение, запись и выполнение 7 как в (4 + 2 + 1) u=rwx
    Группа Чтение и запись 6 как в (4 + 2) г=рв
    Прочее Нет разрешений 0 о =

    Следующие две команды chmod linux, использующие восьмеричное и символическое представление разрешений, взаимозаменяемы и изменят разрешения каталога dir в соответствии с вышеуказанными требованиями:

     ВОСЬМЕРИЧНЫЙ:
    $ чмод 760 дир
    СИМВОЛИЧЕСКОЕ:
    $ chmod u=rwx,g=rw,o= каталог
     

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



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

    Следующий пример команды chown Linux изменит файл с именем file.txt , чтобы он принадлежал пользователю lubos и всем пользователям, принадлежащим к группе linuxconfig :

     $ chown файл lubos.linuxconfig.txt
     

    ПРИМЕЧАНИЕ . Чтобы успешно изменить владельца файла или каталога с помощью команды chown Linux, применяются следующие два правила.Во-первых, пользователь и группа должны существовать, а во-вторых, для смены владельца с пользователя или группы root или на них требуются административные разрешения. Для получения дополнительной информации см. приведенное выше объяснение команды sudo .

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

    Пример использования команд chmod и chown Linux.

    Проверить версию ядра системы

    Бывают случаи, когда вам необходимо устранить неполадки в вашей системе GNU/Linux, поэтому вам необходимо получить информацию о вашем текущем работающем ядре a.к.а. линукс.

    Использование команды uname с комбинацией -a выведет подробную информацию о версии и архитектуре вашего ядра:

     $ uname -a
     

    Заключение

    Вот и все, ребята! Но не позволяйте длине этой статьи обмануть вас, думая, что больше нечему учиться. Наоборот, эта статья едва касается поверхности, поскольку ее целью было только познакомить читателя с некоторыми основными приемами командной строки GNU/Linux.

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

    Что вы должны узнать дальше? Что ж, продолжайте экспериментировать с основами и старайтесь ежедневно добавлять в свой репертуар новые команды Linux. Практика делает совершенным!

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

    .

    Leave a Reply