Основы командной строки в Linux: команды, которые вам нужно знать

Основы командной строки в Linux Изучение

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

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

Каждый дистрибутив Linux поставляется с командной строкой. В этой статье используется Ubuntu 20.04, команды должны работать с большинством дистрибутивов.

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

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

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

Краткая история командной строки Linux

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

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

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

Пользовательские команды были заключены в программы «оболочки». Чтобы упростить сложные задачи, пользователи могли писать сценарии оболочки, автоматизирующие длинную серию команд оболочки.

Linux является потомком Unix. Его основная часть спроектирована так, чтобы вести себя аналогично системе Unix. Bourne Again Shell (BASH) был разработан Стивеном Борном и выпущен в 1979 году в версии 7 Unix выпуска. Со временем он стал оболочкой по умолчанию для систем Linux.

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

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

Метод 1: мероприятия

1. Щелкните Действия в верхнем левом углу экрана.

Щелкните Действия в верхнем левом углу экрана

2. Найдите терминал, оболочку, команду или приглашение.

Найдите терминал, оболочку, команду или приглашение

3. Выберите значок терминала, чтобы запустить его. Вот и ваш терминал. Пока это просто тусклый экран.

Выберите значок терминала, чтобы запустить его

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

Метод 2: сочетание клавиш

Это самый простой способ получить доступ к вашему терминалу Linux. Нажмите, CTRL+ALT+Tчтобы мгновенно открыть терминал.

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

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

Здесь вы можете просмотреть все сочетания клавиш

Щелкните ярлык рядом с «Запустить терминал», введите новый ярлык в окне «Установить ярлык», нажмите «Установить», и все готово.

Например, я изменил ярлык на CTRL+T, как вы можете видеть ниже.

Например, я изменил ярлык на CTR

Как перемещаться по файлам

Теперь, когда вы увидели терминал, давайте попробуем несколько основных команд. Команды — это инструкции, которые вы даете своему компьютеру что-то делать.

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

pwd

Введите команду ниже и нажмите Enter.

Когда вы запускаете терминал, вы попадаете в домашний каталог вашего пользователя. Обычно это выглядит примерно так: «/ home / username». Команда pwdprint working directory позволяет узнать, в каком каталоге вы находитесь.

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

maryam@maryam-VirtualBox:~$ pwd
/home/maryam
maryam@maryam-VirtualBox:~$

ls

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

# ls
0001.pcap        Desktop    Downloads         index.html   install.log.syslog  Pictures  Templates
anaconda-ks.cfg  Documents  fbcmd_update.php  install.log  Music

Чтобы просмотреть любые скрытые файлы, добавьте —aв команду.

# ls -a
.                .bashrc  Documents         .gconfd          install.log         .nautilus     .pulse-cookie
..               .cache   Downloads         .gnome2          install.log.syslog  .netstat.swp  .recently-used.xbel
0001.pcap        .config  .elinks           .gnome2_private  .kde                .opera        .spice-vdagent
anaconda-ks.cfg  .cshrc   .esd_auth         .gtk-bookmarks   .libreoffice        Pictures      .tcshrc
.bash_history    .dbus    .fbcmd            .gvfs            .local              .pki          Templates
.bash_logout     Desktop  fbcmd_update.php  .ICEauthority    .mozilla            Public        Videos
.bash_profile    .digrc   .gconf            index.html       Music               .pulse        .wireshark

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

Читайте также:  Структура данных 101: реализация хеш-таблиц в JavaScript
Параметры Описание
ls -X сортировать по имени расширения
ls -t сортировать по времени и дате
ls -s размер файла списка
ls -S сортировать по размеру файла
ls -r список в обратном порядке
ls -R рекурсивно перечислить дерево каталогов
ls -ls список в длинном формате с размером файла
ls -lh список длинного формата с читаемым размером файла
ls -la список длинного формата, включая скрытые файлы
ls -l список с длинным форматом — показать разрешения
ls -d список каталогов — с помощью ‘* /’

cd

Далее, мы будем смотреть на cd, команды смены каталога. В нашем случае ваш текущий каталог — это то место, где вы сейчас работаете /home/maryam. Прежде чем мы начнем с изменения каталогов, давайте рассмотрим, что такое абсолютные и относительные пути.

Абсолютный путь начинается с корневой системой и относительного пути от текущего каталога. Таким образом, абсолютный путь для документов будет /home/Maryam/Documents, тогда как относительный путь будет Documents.

Чтобы изменить каталоги, используйте:

cd directory_name

Давайте изменим наш каталог на Documents, используя как относительный, так и абсолютный путь соответственно.

maryam@maryam-VirtualBox:~$ cd Documents
maryam@maryam-VirtualBox:~/Documents$
maryam@maryam-VirtualBox:~$ cd /home/maryam/Documents
maryam@maryam-VirtualBox:~/Documents$

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

cd-

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

cd ..

Чтобы перейти на два уровня вверх, используйте:

cd ../../

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

cd ~

Как создавать папки и файлы

В Linux создавать файлы и папки довольно просто. Начнем с создания нового каталога под названием «Пончики». Вы будете использовать команду:

mkdir directory_name

Чтобы проверить, был ли создан каталог, используйте ls.

maryam@maryam-VirtualBox:~$ ls
a.out      Destination    Donuts    hello.c   Public        Source      Videos
batstat    Directory      Downloads Music     remotesrcdpc  Templates

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

mkdir{directory_name1,directory_name2,directory_name3}

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

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

mkdir –p Donuts/Donuts1/Donuts2

Чтобы просмотреть структуру каталогов, используйте:

ls –R

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

  • Сенсорная команда
  • Оператор перенаправления
  • Команда кота
  • Команда echo

Сенсорная команда

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

touch Boston_creme_pie.txt

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

touch glazed_donut.txt chocolate_frosted_donut.txt

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

Подстановочный *знак звездочки позволяет вам сопоставлять экземпляры символа. Чтобы просмотреть все текстовые файлы в Donuts, используйте:

ls *.txt”

Оператор перенаправления

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

Для создания файла используйте:

> filename

Давайте посмотрим, как вы можете >перенаправить вывод в новый файл. Мы перечислим все файлы и каталоги в Donuts, и результат будет перенаправлен в output.txt.

maryam@maryam-VirtualBox:~/Donuts$ ls > output.txt

Чтобы просмотреть output.txt, мы можем распечатать его содержимое в терминале, используя:

cat output.txt

Cat command

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

cat > filename

Нажмите Enter, затем введите текст, который вы хотите добавить в файл, а затем нажмите CTRL+D.

Теперь давайте используем cat для добавления к файлам. В приведенном ниже примере мы добавляем содержимое из Boston_kreme_pie.txtи glazed_donut.txtв jelly_donut.txt. Затем мы используем cat для просмотра содержимого jelly_donut.txt.

Echo command

Чтобы создать пустые файлы с помощью echo, используйте:

echo > filename

Самые важные команды, которые нужно знать

Мы рассмотрели некоторые основные команды в предыдущих разделах. В этом разделе мы рассмотрим некоторые другие важные команды.

Find command

Вы можете использовать команды find, locate и grep с помощью команды find.

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

find –name filename

Чтобы игнорировать регистр, используйте:

find –iname file name

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

find . –name ‘*donut.txt’

И эта команда перечисляет все имена файлов, начинающиеся с c.

find . –name ‘c*

Вы можете искать файлы по размеру, используя:

find –size filesize –type f

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

find -iname "*.txt" mtime -days

Чтобы найти каталог, используйте команду:

find –name filename –type d

Locate command

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

Читайте также:  Лучшие редакторы Markdown для iOS

Команда для установки locate:

sudo apt-get install mlocate

Первый шаг — это ввод пароля. После ввода пароля начнется установка.

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

sudo updatedb

Чтобы искать файлы по их именам, используйте:

locate filename

Примечание. Функция Locate чувствительна к регистру, поэтому CreamPuffs.txtи creamPuffs.txtне одно и то же.

Чтобы игнорировать регистр, добавьте в команду —i.

locate –i file name

grep command

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

grep string file name

Вы распечатываете номера строк вместе со строкой соответствия, добавляя —nк команде:

grep string filename –n

Примечание: Grep чувствителен к регистру, поэтому glazedи Glazedне одно и то же.

Чтобы игнорировать регистр, используйте:

grep string file name –i

Для поиска чего-либо в каталоге используйте:

grep string . –R

chmod

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

Чтобы просмотреть разрешения, связанные с файлом, используйте:

ls filename –l

Посмотрим, что означает вывод:

  • -означает, что это обычный файл. Если бы это был каталог, то так и было бы d.
  • rw-rw-r— показывает права доступа к файлу.

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

chmod u=rwx,g=rx,o=r filename

Вы можете просмотреть обновленные разрешения, используя:

ls –l hello.c

Вы также можете использовать команду chmod с числовым методом. Разрешения имеют следующие числовые значения:

  • Читать = 4
  • Написать = 2
  • Выполнить = 1
  • Нет разрешений = 0

Разрешения, которые получает определенный пользователь, представляют собой сумму этих чисел, поэтому, если вы хотите дать разрешение на чтение, запись и выполнение, это будет 4 + 2 + 1 = 74 + 2 + 1 = 7. Прочитать и выполнить будет4 + 0 + 1 = 54 + 0 + 1 = 5, и просто читать будет 4 + 0 + 0 = 44 + 0 + 0 = 4.

ping command

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

ping https://bestprogrammer.ru/

Вы можете проверить, смогли ли вы подключиться, и посмотреть время ответа. Команда продолжает выполняться, пока вы ее не остановите нажатием CTRL+C.

passwd command

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

sudo passwd maryam

free command

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

free –h

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

gzip

Для сжатия файлов через терминал используйте gzipкоманду. Если вы хотите сохранить как исходный файл, так и сжатую версию, добавьте —k, в противном случае исходный файл будет удален.

mv

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

mv current_location new_location

Чтобы переименовать файл, используйте:

mv old_name new_name

Чтобы переименовать файл при его перемещении, используйте:

mv current_location new_location/new_name

man

Чтобы узнать больше о любой команде, используйте man. Вы попадете в руководство, где сможете просмотреть описание и все параметры команды. Давайте рассмотрим команду ls более подробно.

man ls

Как писать собственные скрипты

Как писать собственные скрипты

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

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

В Linux есть следующие оболочки:

  • csh Оболочка C: синтаксис этой оболочки похож на C
  • sh или Bourne Shell: эта оболочка доступна во всех системах Linux. Оболочка является базовой и предлагает несколько функций.
  • ksh или Korn Shell
  • Bash или Bourne Again Shell: этот мощный инструмент является стандартной оболочкой GNU. Он гибкий и интуитивно понятный.

Чтобы узнать больше о BASH, прочтите нашу шпаргалку по 25 лучшим командам BASH.

Приступим к нашему первому сценарию. Откройте текстовый редактор и напишите код ниже.

#!/bin/sh
# This is a comment
echo Hello World!

Сохраните файл как hello_world.sh. Будем распечатывать Hello World!. Первая строка — это директива, означающая, что все последующее должно интерпретироваться оболочкой Bourne. Вторая строка — комментарий. Третья команда печатает Hello World!.

Далее мы установим разрешения для этого файла, например:

maryam@maryam-VirtualBox:~$ chmod 755 hello_world.sh

Чтобы запустить файл, используйте:

./filename

Вот и все. Ваш самый первый сценарий оболочки!

Создадим еще один, name_age.shиспользующий переменные. Ниже у нас есть две переменные: nameи age. Сценарий принимает ввод с помощью чтения и выводит значения переменных на экран.

#!/bin/sh
echo What is your name?
read name
echo Hello, $name! How old are you?
read age
echo You are $age years old!

 

Оцените статью
bestprogrammer.ru
Добавить комментарий