Терминал Linux для начинающих
Будь то ваш интерес или необходимость что-то сделать, если вы находитесь на Linux, рано или поздно вам придется иметь дело с терминалом. Это не так страшно. Вот как начать работу с командной строкой Linux.
Почему терминал Linux?
Хотя современные системы Linux имеют графические интерфейсы, которые могут соперничать с Windows и macOS, большая часть полезной работы все еще выполняется с использованием терминала.
Основная причина использования терминала заключается в том, что он часто быстрее, чем запуск отдельной графической программы. Программы, работающие в терминале, обычно менее требовательны к вашему оборудованию, особенно если вы выполняете ресурсоемкие операции, такие как обработка видео и изображений с помощью FFmpeg и ImageMagick. Вы можете запустить полноценный редактор изображений или видео, но зачем это делать, если все, что вам нужно, это несколько быстрых изменений размера или конвертаций?
Вы можете легко комбинировать их в конвейеры, что я продемонстрирую позже, подавая вывод одной команды на вход другой.
Если вы серьезно настроены узнать о Linux, особенно если вы рассматриваете карьеру в разработке программного обеспечения или IT, изучение командной строки Linux необходимо. Многие важные инструменты, такие как инструменты программирования, работают только через командную строку.
Еще одно преимущество программ командной строки Linux заключается в том, что они могут работать на разных системах без каких-либо модификаций. Это связано с тем, что текст является зрелым интерфейсом. Программы на основе текста могут работать как на самых мощных рабочих станциях, так и на смартфонах.
Преимущества командной строки Linux доступны и на других системах, помимо Linux. macOS имеет собственное приложение терминала с утилитами из FreeBSD, другой системы с открытым исходным кодом. Существуют некоторые тонкие различия между утилитами, которые вы можете найти в системе Linux и macOS, но они достаточно близки, чтобы вы могли следовать большинству учебных пособий, предназначенных для Linux, на macOS, включая HTG.
Вы также можете воспользоваться командной строкой Linux на Windows с помощью Подсистемы Windows для Linux. Если вы никогда не использовали Linux раньше, вы можете установить его и почувствовать, что можете делать в командной строке.
Еще одна причина изучать терминал заключается в том, что он может быть быстрее, чем использование графического интерфейса для некоторых задач. Если вам нужно работать с большим количеством файлов, вы можете использовать символы подстановки, чтобы указать диапазон файлов, вместо того чтобы вводить или щелкать их один за другим.
Базовые команды: pwd, ls, cd, cat, less, rm
Чтобы начать использовать терминал Linux, найдите программу в меню рабочего стола, которая называется «терминал» или «консоль». Когда вы откроете её, вы увидите приглашение, ожидающее вашего ввода.
Вы начнете в "домашнем каталоге." Здесь будут находиться файлы, которые вы создаете. Linux организует файлы по-другому, чем системы Windows. Здесь нет таких вещей, как буква диска. Все каталоги отходят от "корневого каталога," или одного символа/(косая черта), как ветви от ствола дерева.
Чтобы увидеть, в каком каталоге вы находитесь, введите «pwd». Эта команда означает «Печать рабочего каталога». Каталог, в котором вы находитесь, называется «рабочим каталогом» в Linux.
В этом примере, после ввода pwd, он показывает мой рабочий каталог как /home/ddelony в этой системе.
В зависимости от того, как настроен ваш командный интерпретатор или оболочка, она может отображать текущий рабочий каталог в приглашении. Это сэкономит вам много времени на ввод команды «pwd». В этом случае домашний каталог отображается как символ ~ (тильда). Это распространенная сокращенная запись в Linux и других Unix-подобных системах.
Чтобы увидеть файлы в директории, используйте команду ls. Чтобы увидеть файлы в рабочей директории:
ls
И чтобы увидеть файлы в директории /etc:
ls /etc
По умолчанию команда ls покажет вам ограниченный набор файлов. Она не покажет файлы, начинающиеся с точки (.). Эти файлы обычно являются конфигурационными файлами в домашних директориях. Эти файлы также известны как «точечные файлы» или «скрытые файлы», так как они не отображаются в командах ls, если вы не запросите их. Чтобы увидеть их, используйте опцию -a.
ls -a
Вы также можете увидеть информацию о владельце файла и разрешениях, используя опцию -l:
ls -l
Вы можете комбинировать параметры. Например, чтобы увидеть информацию о правах собственности/разрешениях на все файлы, включая скрытые файлы, в текущем каталоге:
ls -la
В командных программах Linux опции обычно начинаются с символа "-" (дефис) или двух дефисов (—), в зависимости от программы.
Чтобы перейти в другую директорию, используйте команду cd.
Чтобы перейти в каталог /usr/bin, где хранятся многие исполняемые команды, используйте эту команду:
cd /usr/bin
Это пример абсолютного пути, так как он начинается от корневого каталога. Вы также можете менять каталоги, используя относительные пути или пути, которые относятся к вашему текущему рабочему каталогу.
Вы можете перетаскивать файлы из графического файлового менеджера, и терминал часто автоматически заполняет путь к файлу, что может быть удобно для длинных путей и имен файлов.
Например, чтобы перейти в подпапку под названием «pictures» в вашей домашней директории, просто введите следующее:
cd pictures
Чтобы подняться на уровень вверх в директории, введите ".." в качестве пути для cd:
cd ..
Если вы хотите подняться на уровень выше, а затем перейти в другой подпапку, введите это
cd ../foo
«Foo» будет обозначать любое имя подкаталога.
Чтобы вернуться в ваш каталог домашнего, вы можете просто ввести «cd» без каких-либо дополнительных аргументов.
Вы можете не только просматривать каталог, но и видеть, что находится в этих файлах. В конце концов, смысл хранения файлов на компьютере заключается в том, чтобы вы могли их восстановить.
Одна из команд для отображения текстовых файлов — это команда cat. Это сокращение от "конкатенировать", что на самом деле является красивым термином для "собрать кучу вещей вместе." То, что cat собирает вместе, — это строки файла, которые он выводит в ваш терминал. Это очень старая программа, восходящая к временам, когда терминалы использовали рулоны бумаги, а не экраны.
Чтобы вывести файл на экран, используйте cat, за которым следует путь к файлу. Например, для программы Python «Hello, world!», которая есть у меня в домашней директории:
cat hello.py
Вы также можете распечатать разные файлы:
cat foo bar baz
Если вы попробуете использовать команду cat на "бинарных" файлах, таких как программы, вы получите длинную строку nonsensical символов. Это выглядит странно, но безвредно.
Вы могли заметить, если пробовали команду cat на любых длинных тестовых файлах, что вывод проходит очень быстро. Может быть трудно ориентироваться, прокручивая назад в терминале. Если файл достаточно большой, вы даже можете не иметь возможности вернуться к началу.
Программа less полезна для отображения больших файлов. more — это программа-пейджер, которая отображает файлы по экрану. Это облегчает навигацию вперед и назад по документу.
Чтобы отобразить файл, используйте путь к файлу так же, как вы делали бы с командой cat.
less /foo/bar
Вы можете «перелистывать» файл с помощью пробела, чтобы двигаться вперед, и клавиши b, чтобы вернуться назад. Вы также можете использовать клавиши Page Up и Page Down. Вы также можете искать вперед и назад определенный шаблон, используя «/» (косая черта) для поиска вперед и «?» (вопросительный знак) для поиска назад. Нажмите клавишу n, чтобы перейти к следующему совпадению.
Вы можете выйти, нажав q.
less будет запускаться по умолчанию, когда вы выполните команду man для поиска документации.
Чтобы удалить файл, используйте команду rm:
rm file
Удаление файла в терминале является постоянным. Вы не сможете вернуть свои файлы, если они будут удалены таким образом.
Как остановить программу в терминале Linux
Иногда операция может занять больше времени, чем вы ожидаете. Чтобы остановить ее, вы можете отправить сигнал Ctrl+C. Это остановит программу и вернет управление терминалом вам. В интерактивной программе, такой как more или редактор, вы можете использовать функцию выхода. Нажатие "q" сработает во многих из них. Если вы находитесь в Vim, нажмите Esc, затем введите ":q!", чтобы выйти без сохранения.
Вы можете запустить программу в фоновом режиме, добавив к ней символ «&» (амперсанд), чтобы вернуть управление оболочке, пока она выполняется.
Перенаправление терминала и конвейеры
Классические программы терминала Linux позволяют вам перенаправлять ввод и вывод.
Вы можете перенаправить вывод в файл, используя знак ">" (больше). Чтобы перенаправить список директорий в текстовый файл:
ls > my_files
Чтобы взять ввод из файла вместо клавиатуры, вы можете использовать «
cat <file
Вы можете отправить вывод одной программы на ввод другой, используя символ «|». Это называется конвейером.
cat files | ls
Хорошим примером является использование grep для поиска шаблонов из команды ps. Здесь я могу искать шаблон «sh» при выводе всех процессов для всех пользователей:
ps aux | grep 'sh'
Командная строка Linux: не только для Linux
Вам не нужно запускать полную систему Linux, чтобы воспользоваться этими командами. Если вы используете Windows, вы можете установить Windows Subsystem for Linux (WSL), чтобы начать выполнять команды Linux. Если вы используете macOS, вы можете использовать приложение Terminal. Команды основаны на FreeBSD, но на практике они практически идентичны командам Linux.
Собирая все воедино: примеры ImageMagick и FFmpeg
Одна из причин, по которой многие люди начинают использовать терминал Linux, заключается в использовании ImageMagick и FFmpeg. Это популярные инструменты для конвертации изображений и видеофайлов. Одна из причин, почему вы можете захотеть это сделать, заключается в том, чтобы уменьшить их размер, например, для отправки кому-то или чтобы они занимали меньше места на вашем устройстве.
Например, чтобы изменить размер изображения с именем old_image.jpg на 25% и сохранить его в файл с именем new_image.jpg
magick resize 25% old_image.jpg new_image.jpg
Или предположим, вы хотите конвертировать видеофайл с MP4 в AVI с помощью FFmpeg:
ffmpeg -i Big-buck-bunny_trailer.mp4 test.avi
Эта статья лишь поверхностно затрагивает то, что возможно в командной строке Linux. Это может показаться пугающим, если вы никогда ранее не использовали интерфейс командной строки, но вы удивитесь тому, на что сможете быть способны, если будете продолжать использовать терминал Linux.












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