Базовые команды linux: 34 Команды Linux, Которые Должен Знать Каждый Пользователь

Содержание

34 Команды Linux, Которые Должен Знать Каждый Пользователь

VPS

Янв 14, 2022

Olha L.

7хв. читання

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

Linux — это целое семейство операционных систем Unix с открытым исходным кодом, основанных на ядре Linux. Сюда входят все самые популярные системы на основе Linux, такие как Ubuntu, Fedora, Mint, Debian и другие. Если быть точным, их называют дистрибутивами.

С тех пор как Linux был впервые выпущен в 1991 году, он продолжал набирать популярность благодаря открытому исходному коду. Люди могут свободно модифицировать и распространять его под своим именем.

При работе с ОС Linux вам нужно использовать оболочку — интерфейс, который даёт вам доступ к службам операционной системы. В большинстве дистрибутивов Linux для удобства в качестве оболочки используется графический интерфейс пользователя (GUI).

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

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

Получите скидку до 77% на Linux VPS-хостинг.

Начать

Оглавление

Основные Команды Linux

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

Хотя шаги могут несколько различаться в зависимости от используемого вами дистрибутива, обычно командную строку вы можете найти в разделе «Утилиты».

Итак, 34 базовые команды Linux. Поехали!

1.

Команда pwd

Используйте команду pwd, чтобы узнать путь к текущему рабочему каталогу (папке), в котором вы находитесь от корневого каталога. Команда вернёт абсолютный (полный) путь, который по сути является путём всех каталогов, начинающийся с косой черты (/). Примером абсолютного пути является /home/username.

2. Команда cd

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

Допустим, вы находитесь в /home/username/Documents и хотите перейти в Photos, подкаталог Documents. Для этого просто введите следующую команду:

cd Photos.

Другой сценарий, если вы хотите перейти в совершенно новый каталог, например, /home/username/Movies. В этом случае вам нужно ввести cd, а затем абсолютный путь к каталогу: cd/home/username/Movies.

Также есть несколько шорткодов для более быстрой навигации:

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

Также стоит отметить, что оболочка Linux чувствительна к регистру. Важно точно вводить имена каталогов.

3. Команда ls

Команда ls используется для просмотра содержимого каталога. По умолчанию эта команда отобразит содержимое вашего текущего рабочего каталога.

Если вы хотите просмотреть содержимое других каталогов, введите ls, а затем путь к каталогу. Например, введите

ls /home/username/Documents для просмотра содержимого в Documents.

Варианты использования команды Linux ls:

  • ls -R также выведет список всех файлов в подкаталогах
  • ls -a покажет скрытые файлы
  • ls -al выведет список файлов и каталогов с подробной информацией, такой как разрешения, размер, владелец и т. д.

4.

Команда cat

cat (сокращение от concatenate) — одна из наиболее часто используемых команд в Linux. Используется для вывода содержимого файла в командной строке (sdout). Чтобы запустить эту команду, введите cat, а затем имя файла и его расширение. Например: cat file.txt.

Вот другие варианты использования команды Linux cat:

  • cat> filename создаёт новый файл
  • cat filename1 filename2>filename3 объединяет два файла (1 и 2) и сохранит их содержимое в новом файле (3)
  • Чтобы преобразовать файл в верхний или нижний регистр,
    cat filename | tr a-z A-Z >output.txt

5. Команда cp

Используйте команду cp для копирования файлов из текущего каталога в другой каталог. Например, команда cp scenery.jpg/home/username/Pictures создаст копию scenery.jpg (из вашего текущего каталога) в каталог Pictures.

6. Команда mv

Основное предназначение команды mv — перемещение файлов, хотя её также можно использовать для их переименования.

Аргументы в mv похожи на аргументы команды cp. Вам нужно ввести mv, имя файла и каталог назначения. Например: mv file.txt/home/username/Documents.

Команда Linux для переименования файлов будет выглядеть так: mv starojeimia.ext novojeimia.ext.

7. Команда mkdir

Используйте команду mkdir, чтобы создать новый каталог. Если вы введёте mkdir Music, команда создаст каталог с именем Music.

Дополнительные команды mkdir:

  • Чтобы создать новый каталог внутри другого каталога, используйте эту базовую команду Linux mkdir Music/Newfile;
  • Используйте опцию p (parents), чтобы создать каталог между двумя существующими каталогами. Например, mkdir -p Music/2020/Newfile создаст новый файл «2020».

8. Команда rmdir

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

9. Команда rm

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

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

10. Команда touch

Команда touch позволяет создать новый пустой файл через командную строку Linux. В качестве примера введите touch /home/username/Documents/Web.html, чтобы создать файл HTML с названием Web в каталоге Documents.

11. Команда locate

Используйте эту команду, чтобы найти нужный вам файл. Она работает, как команда поиска в Windows. Более того, аргумента -i сделает команду нечувствительной к регистру, благодаря чему вы сможете искать файлы, даже если вы не помните их точные названия.

Чтобы найти файл, содержащий два или более слов, используйте звёздочку (*). Например, команда locate -i school*note будет искать любой файл, содержащий слова «school» и «note», не зависимо от того написаны они с большой или маленькой буквы.

12. Команда find

Подобно команде locate, find также выполняет поиск файлов и каталогов. Разница в том, что команда find используется для поиска файлов в текущем каталоге.

Например, команда find/home/-name notes.txt будет искать файл с именем notes.txt в домашнем каталоге и его подкаталогах.

Другие варианты использования команды Linux find

:

  • Для поиска файлов в текущем каталоге используйте find . -name notes.txt
  • Для поиска каталогов используйте / -type d -name notes. txt

13. Команда grep

Ещё одна базовая команда Linux, которая, несомненно, пригодится для повседневного использования — grep. С её помощью совершается поиск по всему тексту в текущем файле.

Например, grep ubuntu notepad.txt будет искать слово ubuntu в файле notepad. Строки, содержащие искомое слово, будут отображаться полностью.

14. Команда sudo

Сокращенно от «SuperUser Do», эта команда позволяет выполнять задачи, требующие прав администратора или root. Однако не рекомендуется использовать эту команду для повседневных задач, так как неправильное её использование может легко стать причиной появления ошибок.

15. Команда df

Используйте команду df, чтобы получить отчёт об использовании дискового пространства в системе в процентах и килобайтах. Если вы хотите просмотреть отчёт в мегабайтах, введите df -m.

16. Команда du

Если вы хотите проверить, сколько места занимает файл или каталог, воспользуйтесь командой du (Disk Usage). Однако вместо размера в обычном формате, в сводке вы увидите количество блоков диск. Если вы хотите посмотреть информацию в байтах, килобайтах и мегабайтах, добавьте аргумент -h в командную строку.

17. Команда head

Команда head используется для просмотра первых строк любого текстового файла. По умолчанию она покажет первые десять строк, но вы можете изменить это число. Например, если вы хотите показывать только первые пять строк, введите head -n 5 filename. ext.

18. Команда tail

Эта команда имеет функцию, аналогичную команде head, но вместо отображения первых строк tail выводит последние десять строк текстового файла. Например, tail -n filename.ext.

19. Команда diff

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

Простейшая форма этой команды — diff file1.ext file2.ext.

20. Команда tar

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

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

21. Команда chmod

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

22. Команда chown

В Linux все файлы принадлежат конкретному пользователю. Команда chown позволяет изменить или перенести владельца файла на указанное имя пользователя. Например, chown linuxuser2 file.ext сделает linuxuser2 владельцем file.ext.

23. Команда jobs

Команда jobs отображает все текущие задачи вместе с их статусами. Задача — это процесс, запущенный в фоновом режиме.

24. Команда kill

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

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

  • SIGTERM (15) — просит программу прекратить работу и даёт ей некоторое время, чтобы сохранить весь прогресс. Если вы не указали сигнал при вводе команды kill, этот сигнал будет использоваться по умолчанию.
  • SIGKILL (9) — принудительно останавливает программы. Несохранённый прогресс будет потерян.

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

уничтожить. Если вы не знаете PID, просто запустите команду ps ux.

Узнав, какой сигнал вы хотите использовать и PID программы, введите следующий синтаксис:

kill [опция сигнала] PID.

25. Команда ping

Используйте команду ping для проверки состояния подключения к серверу. Например, просто введя ping google.com, команда проверит, можете ли вы подключиться к Google, а также измерить время ответа.

26. Команда wget

Командная строка Linux очень полезна — вы даже можете загружать файлы из интернета. Сделать это можно с помощью команды wget. Для этого просто введите wget и ссылку для скачивания.

27. Команда uname

Команда uname, сокращение от Unix Name, выведет подробную информацию о вашей системе Linux, такую как имя машины, операционная система, ядро и т. д.

28. Команда top

Являясь эквивалентом диспетчера задач в Windows, команда top выводит список запущенных процессов, а также информацию о том, сколько ЦП использует каждый процесс. Отслеживать использование системных ресурсов очень полезно. Таким образом, вы сможете определить какой процесс необходимо прекратить, поскольку он потребляет слишком много ресурсов.

29. Команда history

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

30.

Команда man

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

31. Команда echo

Эта команда выводит текст в stdout (стандартный вывод). Оператор >> дописывает stdout в файл. Также есть оператор >, который создаст файл, если он не существует и выведет туда текст или перезапишет существующий файл. Например, если вы хотите добавить текст «Здравствуйте, меня зовут Джон» в файл с именем name.txt, введите echo Здравствуйте, меня зовут Джон >> name.txt.

32. Команда zip, unzip

Используйте команду zip для сжатия ваших файлов в zip-архив, а команду unzip для извлечения zip-файлов из zip-архива.

33. Команда hostname

Если вы хотите узнать имя вашего хоста/сети, просто введите hostname. Добавление -I в конце выведет IP-адрес вашей сети.

34. Команда useradd, userdel

Поскольку Linux является многопользовательской системой, это означает, что более чем один человек может взаимодействовать с одной и той же системой одновременно. useradd используется для создания нового пользователя, в то время как passwd добавляет пароль к учётной записи этого пользователя. Чтобы добавить нового пользователя с именем Джон, введите useradd John. А затем, чтобы добавить пароль, напишите passwd 123456789.

Процесс удаления пользователя напоминает его добавление. Чтобы удалить учётную запись, введите команду userdel ImiaPolzovatelia.

Бонусные Советы и Приёмы

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

Попробуйте кнопку TAB для автозаполнения того, что вы печатаете. Например, если вам нужно набрать Documents, начните вводить команду (например, cd Docu, затем нажмите клавишу Tab), и терминал заполнит всё остальное, показывая вам полную фразу cd Documents.

Комбинации клавиш Ctrl+C и Ctrl+Z используются для остановки любой команды, которая работает в данный момент. Ctrl+C останавливает программу, а Ctrl+Z — ставит её на паузу.

Если вы случайно заморозили терминал, нажав Ctrl+S, просто отмените это с помощью комбинации Ctrl+Q.

Ctrl+A перемещает вас в начало строки, а Ctrl+E — в конец.

Вы можете запустить несколько команд в одной команде, используя «;», чтобы отделить их. Например Command1; Command2; Command3. Или &&, если вы хотите, чтобы следующая команда запускалась только тогда, когда предыдущая будет успешной.

Подводим Итоги

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

В любом случае знание основных команд Linux, несомненно, принесёт вам пользу. Удачи!

Ольга вже близько восьми років працює менеджером у сфері IT, три з яких вона займається SEO. Написання технічних завдань та інструкцій — один з її основних обов’язків. Її хобі — дізнаватися щось нове і створювати цікаві та корисні статті про сучасні технології, веброзробку, мови програмування, пошукову оптимізацію сайтів та багато іншого.

Більше статей від Olha L.

10 команд Linux для начинающих пользователей

480 auto

 

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

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

1

Cd – переход между директориями

Cd — это одна из самых часто используемых команд, так как невозможно работать не перемещение по директориям. Синтаксис команды очень прост: cd

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

cd /etc/

Команда имеет множество удобных шорткодов для более быстрой навигации:

  • cd – перемещение в домашний каталог пользователя, аналог cd home или cd ~
  • cd .. – перемещение на один каталог вверх
  • cd — – возвращение в предыдущей каталог
  • cd / – перемещение в корневую директорию

Если вы запутались или вам сложно сориентироваться, в какой директории вы сейчас находитесь – воспользуйтесь командой pwd. Она выведет полный путь директории.

2

Pwd – отображение полного пути до текущей рабочей директории

Команда pwd возвращает абсолютный (полный) путь, который является путём всех каталогов, начинающийся с косой черты (/).

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

pwd

Пример вывода полного пути:

pseudolukian@DELL-2J1ZPT2:/etc/apt/sources.list.d$ pwd
/etc/apt/sources.list.d

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

3

Ls — отображение содержимого директории

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

ls

Вы можете просмотреть содержимое любого каталога, к которому знаете путь. Например, команда ls /etc/ выведет на экран содержимое каталога etc:

ls /etc/

Команда ls по сравнению с pwd имеет множество полезных ключей, которые меняют форму вывода команды.

Ключ — это специальный параметр команды или терминальной утилиты.

Ключи указываются между названием команды или утилиты и файлом, который передаётся на вход: команда -ключ название файла.

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

pseudolukian@DELL-2J1ZPT2:/etc/apt$ ls -R
.:
apt.conf.d auth.conf.d preferences.d sources.list sources.list.d trusted.gpg.d

./apt.conf.d:
01-vendor-ubuntu 10periodic 20auto-upgrades 50command-not-found 99update-notifier
01autoremove 15update-stamp 20packagekit 50unattended-upgrades
01autoremove-kernels 20archive 20snapd.conf 70debconf
./auth.conf.d:
./preferences.d:
./sources.list.d:
./trusted.gpg.d:
ubuntu-keyring-2012-archive.gpg ubuntu-keyring-2012-cdimage.gpg ubuntu-keyring-2018-archive.gpg

По умолчанию ls не отображает скрытые файлы, чтобы ls начал отображать скрытые файлы, его надо запустить с ключом -a. Пример вывода содержимого директории /etc/apt:

pseudolukian@DELL-2J1ZPT2:/etc/apt$ ls -a
. .. apt.conf.d auth.conf.d preferences.d sources.list sources.list.d trusted.gpg.d

Обратите внимание, в начале списка, выведены объекты директории:

  • Точка – это псевдоним пути к текущей директории
  • Две точки – это псевдоним родительской директории (директория на уровень выше)

Следующий ключ -l. Используя этот ключ, ls выведет список файлов и каталогов с подробной информацией о пользователях, правах доступа, размерах, владельцах и т. д. Пример вывода с ключом -l:

pseudolukian@DELL-2J1ZPT2:/etc/apt$ ls -l
total 4
drwxr-xr-x 1 root root 4096 Feb 20 02:49 .
drwxr-xr-x 1 root root 4096 Aug 17 15:40 ..
drwxr-xr-x 1 root root 4096 Feb 20 02:51 apt.conf.d
drwxr-xr-x 1 root root 4096 Apr 9 2020 auth.conf.d
drwxr-xr-x 1 root root 4096 Apr 9 2020 preferences.d
-rw-r--r-- 1 root root 2743 Feb 20 02:51 sources.list
drwxr-xr-x 1 root root 4096 Apr 9 2020 sources. list.d
drwxr-xr-x 1 root root 4096 Feb 20 02:49 trusted.gpg.d

Ключи могут быть использованы одновременно. Например, чтобы вывести всё содержимое директории, вместе со скрытыми объектами, команду можно указать так: ls -la.

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

4

Cat, head, sed, tail – вывод содержимого файла

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

cat

Чтобы просмотреть содержимое файла – укажите его полное имя после команды cat:

pseudolukian@DELL-2J1ZPT2:~$ cat test.txt
Привет!
Мы открыли тестовый файл с помощью команды cat. Всё работает нормально :)

Команда cat обладает множеством полезных ключей и функций. Например, ключ -n выводит содержимое файла с нумерацией строк:

pseudolukian@DELL-2J1ZPT2:~$ cat -n test.txt
1 Привет!
2 Мы открыли тестовый файл с помощью команды cat. Всё работает нормально :)
3 Для более наглядного примера, напишем ещё несколько строк. А лучше вставим список.
4 Linux - замечательная ОС, она позволяет:
5 - легко запускать веб-сервера;
6 - гибко настраивать права доступа;
7 - управлять инфраструктурой;
8 - и многое другое.

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

pseudolukian@DELL-2J1ZPT2:~$ head -2 test.txt
Привет!
Мы открыли тестовый файл с помощью команды cat. Всё работает нормально :)

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

pseudolukian@DELL-2J1ZPT2:~$ tail -4 test. txt
- легко запускать веб-сервера;
- гибко настраивать права доступа;
- управлять инфраструктурой;
- и многое другое.

Для вывода произвольного количества строк из файла применяется команда sed с указанием диапазона строк в формате: ‘начало, конец !d’.

pseudolukian@DELL-2J1ZPT2:~$ sed '2,3!d' test.txt
Мы открыли тестовый файл с помощью команды cat. Всё работает нормально :)
Для более наглядного примера напишем ещё несколько строк. А лучше вставим список.

Команды cat, head, sed и tail позволяют выводить информацию в терминал по определенным условиям. Однако часто нужно найти конкретную информацию в файле или файл целиком. Для этого существует команда — grep.

5

Grep — поиск файлов в директориях и строк в файлах

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

Чаще всего grep используется в сочетании с другими командами, передавая на вход данные через оператор потока PIPE — |. Например, следующая цепочка команд (конвейер) найдёт среди множества файлов все файлы, в названии которых есть слово vdc с расширением .png и выведет на экран первые 3 файла:

ls -l | grep .png | head -3

Искать можно как файлы и директории, так и строки внутри файлов. Например, найдёт строку в тестовом текстовом файле test_test_.txt, содержащую слово «Мы»:

cat test_test.txt | grep Мы

Если нужно найти словосочетание с пробелами, то оно берется в кавычки:

cat test_test.txt | grep "Мы открыли"

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

Грепнем строку «Мы открыли» в файле test_test. txt:

grep "Мы открыли" test_test.txt

Для поиска файлов в директории и вложенных директориях применяется ключ -r. Например, найдем всех файлы с расширением .txt в домашней директории пользователя и всех вложенных директориях:

root@DELL-2J1ZPT2:/home/pseudolukian# grep -r .txt

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

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

6

Touch, cp, mv, rm — создание, копирование, удаление и перемещение файлов

Создать файл в Linux можно несколькими путями: 1) Запустить нужную терминальную утилиту и после сохранить готовый файл; 2) Создать пустой файл командой touch и после его открыть в нужной утилите.

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

touch test.txt

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

cp test.txt copied_test.txt

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

cp test.txt /home/

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

  • -f — перезаписать существующий файл при копировании
  • -i — спросить нужно ли перезаписывать существующий файл
  • -r — рекурсивное копирование директории (подробнее в разделе о работе с директориями)

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

Для перемещения файлов между директориями применяется команда mv:

mv test. txt /home/

Часто команду mv используют для переименования файлов. В этом случае синтаксис команды будет таким:

mv test.txt new_nest.txt

Чтобы удалить файл — применяется команда rm:

rm test.txt

Далее рассмотрим команды для работы с директориями.

7

Mkdir, cp, rm — создание, копирование, удаление и перемещение директорий

Для создания директорий используют команду mkdir, с указанием названия новой директории. Например, мы создадим директорию folder в /home:

mkdir folder

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

touch some_file_{1..10}.txt

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

cp -r folder/ copied_folder

Для удаления директории, содержащий файлы применяют команду rm с ключом -r:

rm -r folder

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

mv folder /home

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

8

Chmod — установка прав на файл

Для работы с правами доступа используется команда chmod. Синтаксис команды:

chmod права файл или папка

Просмотреть права можно командой ls с ключом -l:

root@DELL-2J1ZPT2:/home# ls -l
total 0
drwxr-xr-x 1 root root 4096 Aug 24 12:41 folder
drwxr-xr-x 1 pseudolukian pseudolukian 4096 Aug 24 14:21 pseudolukian
-r--r----- 1 root root 0 Aug 25 13:34 test. txt

Указать изменения в правах на файл через chmod можно двумя разными форматами записей:

Первый формат записи — символьный. В нем используются следующие символы:

  • u — пользователь-владелец
  • g — группа-владелец
  • o — другие пользователи
  • a — все пользователи
  • r — права на чтение
  • w — права на запись
  • x — права на выполнение
  • «+» — добавить права
  • «» — отменить права
  • «=» — заменить набор прав.

Пример добавления прав в символьном формате записи:

chmod u+rwx,g+rwx,a+rwx test.txt

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

chmod u-rwx,g-rwx,a-rwx test.txt

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

chmod u=rwx,g=rwx,a=rwx test. txt

Если нужно некоторые права добавить, а некоторые отменить, то вместо права указывается прочерк — «-»:

chmod u=r-x,g=rw-,a=--- test.txt

Второй формат записи — числовой. Здесь права представляются не в виде букв, а в виде восьмеричной записи групп значений:

  • r — 4
  • w — 2
  • x — 1.

Так запись формата rwxrwxrwx можно представить, как сумму значений прав, разбитых по группам: (4+2+1), (4+2+1), (4+2+1) = 777. Чаще всего для изменения прав используют именно такой формат записи.

Пример добавления прав в цифровом формате записи:

chmod 777 test.txt

Этой записью мы установили максимальные права доступа для всех. Например, если нужно запретить исполнение файла — устанавливается значение 6 (r — 4 + w — 2) в нужную группу прав. Запретим исполнение для всех:

chmod 666 test. txt

Если нужно отменить права сразу на группу прав — устанавливается 0. Например, отменим все права на файл для владельца-пользователя:

chmod 066 test.txt

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

9

Chown, chgrp — смена владельца файла и группы

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

Напомним, что узнать владельца можно командой ls -l. А сменить владельца и группу владельца можно командой chown. Синтаксис команды:

chown новый пользователь:новая группа файл или папка

Например, изменим пользователя и группу пользователя для файла test. txt на root-пользователя:

chown root:root test.txt

Для изменения пользователя у директории и всех вложенных объектов применяется команда chown с ключом -R:

chown root:root ./folder

Существует команда, которая изменяет только группу владельца — chgrp. Синтаксис команды:

chgrp название группы владельца файл или директория

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

10

Useradd, groupadd — создание пользователя, группы и добавление пользователя в группу

Создать пользователя или изменить права уже существующим пользователям в Linux можно с помощью команды useradd. Команда позволяется также создать домашний каталог и скопировать в него системные файлы. Синтаксис команды:

useradd опции имя_пользователя

Команда useradd имеет множество опций. Мы приведем только некоторые из них:

  • -D — отобразить параметры, которые будут применены по умолчанию при создании нового пользователя
  • -p — задать пароль пользователя
  • -s — задать командную оболочку для пользователя
  • -g — основная группа пользователя
  • -G — дополнительная группа пользователя

Ознакомимся сначала с дефолтными условиями создания нового пользователя:

useradd -D

Команда вернет информацию следующего вида:

GROUP=100
HOME=/home
INACTIVE=-1
EXPIRE=
SHELL=/bin/sh
SKEL=/etc/skel
CREATE_MAIL_SPOOL=no

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

useradd -p porol new_user

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

useradd -G adm,cdrom -p parol new_user

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

Создадим группу new_users:

groupadd new_users

Теперь с помощью команд cat и grep проверим, что группа была создана:

root@DELL-2J1ZPT2:/home/folder# cat /etc/group | grep new_users
new_users:x:1002:

А если требуется получить список всех групп, то просто воспользуйтесь командой cat без grep:

cat /etc/group

Команда вернёт список названий групп. Здесь стоит поэкспериментировать с объединением команд для работы с выводом на экран через оператор |. Это позволит вам лучше понять принцип работы каждой из команд.

Если статья показалась вам интересной, возможно, вас заинтересует наша другая статья — «10 горячих клавиш Linux для начинающих пользователей».

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

Linux Unix Grep Учебное пособие + полезные примеры из реальной жизни

ВПС

23 ноября 2022 г.

Игнас Р.

5 минут Чтение

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

Вот где появляется команда grep — она позволяет пользователям легко искать строку в системе.

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

Понимание синтаксиса команды grep

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

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

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

Чтобы начать использовать команду grep, подключитесь к VPS с помощью SSH.

 ssh your-username@your-server 

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

Базовый синтаксис grep при поиске одного файла выглядит так:

 grep [опции] шаблон [ФАЙЛ] 
  • grep – инструкция команды.
  • [опции] – модификаторы к команде.
  • шаблон – поисковый запрос, который нужно найти.
  • [ФАЙЛ] – файл, в котором будет искать команда.

Наглядный пример будет выглядеть так:

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

 grep --help 

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

  • -A – вывести строки перед совпадающей строкой.
  • -B – вывести строки после совпадающей строки.
  • -C — вывести строки до и после совпадающей строки.

Флаги ABC помогут вам добавить контекст к вашим поискам. Например, при использовании grep в файле конфигурации строки до или после предпочтительной строки могут предоставить более полезную информацию о поиске.

В приведенном выше примере команды мы использовали обычную утилиту grep, которая показала только строка Пароль . Затем мы объединили флаг A1 , чтобы распечатать одну дополнительную строку перед соответствующей строкой Password . Аналогичный процесс был проделан с флагами B1 и C1 .

Чтобы еще больше настроить поиск, добавьте следующие флаги:

  • -i – поиск без учета регистра. Если пользователи, например, ищут строку car , она покажет те же результаты, что и CAR .
  • -w — ищет только полные слова, игнорируя вашу строку, если она является частью другого слова.
  • -c — покажет количество совпадений с искомым шаблоном.
  • -r – включает рекурсивный поиск в текущем каталоге.
  • -n – искать строки и получать только совпавшие номера строк текста.
  • -v — эта опция показывает строки, не соответствующие заданному шаблону.

Практические примеры командной строки grep

Ознакомьтесь с этими полезными примерами команды grep, чтобы лучше понять ее.

Как искать слово в файле

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

Для этого просто введите следующую команду:

 grep query file 
  • query — слово, которое вы ищете.
  • файл — файл, в котором вы ищете запрос.

В нашем случае мы ищем слово VPS в образце файла с именем Hostinger.txt :

 grep VPS Hostinger.txt 

Вывод выделяет строки, соответствующие этому запросу:

How to Найти совпадение ключевого слова в нескольких файлах

Если вам нужно выполнить поиск в нескольких файлах, используйте следующий синтаксис:

 grep query файл1 файл2 файл3 
  • запрос – искомое слово.
  • файл1, файл2, файл3 — файлы, в которых вы ищете запрос.

В нашем примере мы ищем слово VPS в этих трех файлах: Hostinger.txt , VPS.txt , SharedHosting.txt .

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

 запрос grep * 

Как выполнять поиск по нескольким ключевым словам

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

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

 файл grep 'query1\|query2'
файл egrep 'query1|query2'
grep -e query1 -e файл query2
grep -E 'query1|query2' файл 

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

Как найти совпадения, которые начинаются или заканчиваются запросом

Поиск Grep также может искать строки, начинающиеся или заканчивающиеся заданным пользователем запросом. Чтобы соответствовать началу строки, используйте 9queryStart.*queryEnd$’

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

Как видно выше, строки, содержащие строку Hello , соответствуют нашему поисковому запросу.

Как отобразить номер строки с помощью команды grep Поиск

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

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

В нашем случае мы использовали grep для поиска строки внутри файла Grep.txt . Зеленые цифры слева отображают номера строк в нашем файле.

Как использовать Invert grep Search

Пользователи могут инвертировать выражение grep, используя флаг -v . Это очень полезно для распечатки несовпадающих строк. В следующем примере показано, как команда отображает выходные строки, которые не соответствуют VPS поисковый запрос.

Мы также объединили регулярные выражения и использовали флаг -n , чтобы увидеть совпадающие номера строк.

Как выполнить рекурсивный поиск с помощью grep

Рекурсивный поиск полезен для поиска между всеми строками в подкаталогах и файлах внутри текущего рабочего каталога. Для этого примера мы создали каталог Grep с каталогами VPS и SharedHosting внутри него и будем искать запрос VPS .

Как экспортировать вывод команды grep в файл

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

 grep query file > OutputFile.txt 

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

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

Заключение

Команда grep упрощает поиск среди сотен файлов и каталогов. С его обширной коллекцией различных флагов вы сможете быстро найти определенные линии.

В этом руководстве мы рассмотрели синтаксис команды grep и научились:

  • Искать слово в файле.
  • Найти совпадение ключевого слова в нескольких файлах.
  • Поиск по нескольким ключевым словам.
  • Найдите совпадения, которые начинаются или заканчиваются вашим запросом.
  • Показать номер строки.
  • Использовать инвертированный поиск grep.
  • Выполнить рекурсивный поиск.
  • Экспорт содержимого вывода grep в файл.

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

Узнайте больше Команды Linux для чтения файлов

Как прочитать содержимое файла
Как прочитать конец файла
Как прочитать файл с помощью команды Sed
Как записать и отобразить файл с помощью команды Tee

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

Подробнее от Игнаса Р.

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

Глоссарий

07 декабря 2022 г.

Домантас Г.

6 минут Чтение

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

В этой статье вы узнаете все, что вам нужно знать о CLI.

Загрузить глоссарий для начинающих веб-мастеров

Что такое интерфейс командной строки?

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

Корни CLI

В 1960-х годах CLI активно использовался.

В то время у людей была только клавиатура в качестве устройства ввода, а экран компьютера мог отображать только текстовую информацию. Операционные системы, такие как MS-DOS, использовали CLI в качестве стандартного пользовательского интерфейса.

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

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

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

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

Изобретение мыши положило начало методу «укажи и щелкни» как новому способу взаимодействия с компьютером.

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

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

Сегодня графический интерфейс стал обычным способом вычислений. Однако большинство операционных систем по-прежнему предлагают комбинацию CLI и GUI. Например, пользователи Mac могут либо ввести «cal» в терминале, либо щелкнуть приложение «Календарь», чтобы получить те же результаты.

Оболочка — основа CLI

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

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

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

На практике есть много вещей, которые может обрабатывать оболочка, например:

  • Работа с файлами и каталогами
  • Открытие и закрытие программы
  • Управление компьютерными процессами
  • Выполнение повторяющихся задач

Среди многих типов оболочек наиболее популярными являются оболочка Windows (для Windows) и bash (для Linux и MacOS).

Оболочка Windows

Оболочкой по умолчанию в Windows является CMD.exe или Командная строка . На самом деле, Microsoft использовала командную строку с давних времен, когда MS-DOS была основной операционной системой.

Чтобы открыть командную строку, нажмите Пуск -> Все программы -> Аксессуары -> Командная строка . Или вы можете просто нажать Windows+R , затем ввести CMD и нажать и ввести .

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

Командная строка настолько надежна, что может управлять многими вещами в операционной системе Windows:

  • Изменение каталогов, просмотр каталогов, содержимого и т. д.
  • Работа с сетью, например, отображение настроек IP-сетей
  • Управление файлами, например переименование, перемещение и т. д.
  • Управление носителями, например форматирование и переименование томов

Теперь давайте узнаем, как использовать синтаксис в командной строке:

Bash

Bash означает Bourne Again SHell и был разработан Фондом свободного программного обеспечения .

Bash — это тип оболочки, используемый в MacOS и многих дистрибутивах Linux. Однако вы также можете установить bash Linux в Windows 10.

В Linux оболочка Bash — одна из многих оболочек, которые могут использовать пользователи Linux. Другие типы: Тчс оболочка , Кш оболочка и Зш оболочка .

В большинстве дистрибутивов Linux оболочка находится в папке Utilities меню. Если вы используете рабочий стол Gnome , имя будет Terminal , но если вы используете KDE , имя будет Konsole .

Между тем, в MacOS программа Terminal.app . Чтобы запустить эту программу, перейдите в Application -> Utilities -> Terminal . Или вы можете просто ввести терминал , используя поиск Spotlight.

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

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

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

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

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

  • Команды, которые управляют процессами
  • Команды, которые обрабатывают файлы

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

  • Список всех файлов в папке
    Чтобы узнать, какие файлы находятся в определенной папке, используйте ls .
    Команда по умолчанию исключает скрытые файлы. Чтобы показать все файлы, вы можете добавить -a . Например:

     

     лс -а 
  • Изменить каталог
    Чтобы перейти в конкретный каталог, используйте компакт-диск назначения . Например:

     

     компакт-диск ~/рабочий стол 
 rm untitled.rtf 

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

Если по определенным причинам вы хотите остановить текущий процесс в командной строке или Bash, просто нажмите Управление+C .

Зачем использовать CLI вместо GUI?

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

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

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

  1. Меньше ресурсов
    Не секрет, что текстовая программа требует очень мало ресурсов вашего компьютера. Это означает, что с помощью CLI вы можете выполнять аналогичные задачи с минимальными ресурсами.
  2. High Precision
    Вы можете легко использовать определенную команду, чтобы нацеливаться на определенные адресаты. Пока вы не введете неправильную команду, она будет работать как шарм. Как только вы изучите основы, написание синтаксиса не так сложно, как вы думаете.
  3. Повторяющиеся задачи Дружественные
    Графический интерфейс хорошо развивался с годами. Но операционная система может не предоставить вам все меню и кнопки для выполнения всех задач. Одна из причин — безопасность. Это оставляет вас ошеломленным, если вам приходится выполнять повторяющиеся задачи. Например, когда вам нужно обрабатывать сотни файлов в папке, CLI позволяет вам использовать одну команду, чтобы легко автоматизировать повторение.
  4. Мощный
    Большинство современных операционных систем не позволяют вам испортить основной процесс системы. В Windows есть защита системы, а в MacOS — SIP (защита целостности системы). Вы не сможете выполнять определенные задачи, защищенные системой. Однако с CLI у вас будет полный контроль над вашей системой.

Чтобы проиллюстрировать это, в разработке веб-сайтов существует метод, называемый PSD to HTML.

Процесс преобразования PSD в HTML начинается с создания макета в Photoshop. Затем документ Photoshop (PSD) преобразуется в HTML.

Преобразование PSD в HTML требует ручного кодирования. Веб-разработчик позаботится о чистоте кода, используемого при конвертации. Это важно для прохождения соответствия W3C.

Соответствие W3C гарантирует, что веб-сайт имеет хороший код, чтобы сделать его совместимым со всеми браузерами.

Итак, понимание кода жизненно важно для понимания основного процесса.

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

Заключение

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

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

  • Требуется на меньше ресурсов
  • Обеспечивает высокую точность
  • Он легко справляется с повторяющимися задачами
  • мощный

Теперь давайте выполним работу с помощью CLI!

Домантас возглавляет группы по контенту и SEO, предлагая свежие идеи и нестандартные подходы.

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

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

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