Raspberry Pi:Основы Linux/Терминал

Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску

Перевод: Максим Кузьмин
Проверка/Оформление/Редактирование: Мякишев Е.А.


Терминал[1]

Терминал (также называемый «командной строкой») — это один из мощнейших инструментов для управления компьютером (или, в данном случае, Pi). На операционных системах Windows и Mac OS тоже существует нечто подобное: в первом случае это cmd.exe или Powershell, а во втором — Terminal. Все эти инструменты позволяют манипулировать системой напрямую, то есть посредством различных команд. Кроме того, эти команды можно объединить в цепочку, тем самым создав сложный скрипт (подробнее о shell-скриптах для Linux читайте тут) — потенциально более эффективное средство для выполнения задач, чем громоздкие ПО-пакеты.

Запуск LXTerminal

На Raspberry Pi (с установленной Raspbian) терминалом по умолчанию является приложение LXTerminal. Его также называют «эмулятором терминала», и это означает, что он эмулирует в графической среде Raspbian видеотерминал — устройство, широко используемое до изобретения GUI, то есть графических пользовательских интерфейсов. Иконку LXTerminal можно найти на рабочем столе Raspbian. Будучи запущенным, оно выглядит примерно так:

Терминал должен показать следующее сообщение:

pi@raspberrypi ~ $

То есть этим сообщением система показывает нам имя пользователя (pi) и имя хоста (raspberrypi).

Теперь попробуем запустить какую-нибудь команду. Впишите pwd (это команда, показывающая текущую директорию) и нажмите Enter. В ответ будет показано что-то вроде

/home/pi

Навигация и просмотр файловой системы Pi

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

ls -la

Вы должны увидеть примерно следующее:

Команда ls отображает содержимое директории, в которой вы находитесь в данный момент (ее также называют «текущей» или «рабочей» директорией). Компонент -la — это то, что называют «меткой».

Функция метки — модифицировать запускаемую команду. В данном случае '''''l отображает содержимое директории в виде списка (показывая информацию вроде размера и даты последнего редактирования), в то время как a показывает абсолютно все файлы, включая даже те, что начинаются с точки (так называемые «дот-файлы»'). Дот-файлы обычно играют роль конфигурационных файлов для различного ПО. Кроме того, поскольку они представлены в текстовом виде, их можно модифицировать обычным редактированием.

Если мы хотим просмотреть какую-то другую директорию, то в нее нужно сначала перейти, и для этого используется команда cd. Путь к желаемой директории может быть как «полным», так и «относительным». К примеру, если вы захотите перейти к директории python_games, то можете вписать или cd /home/pi/python_games, или просто cd python_games (если в данный момент находитесь в /home/pi). Кроме того, есть несколько приемов, которые делают процесс перемещения в нужную папку более удобным. Так, символ «~» служит псевдонимом для домашней директории, то есть, ~/python_games — это то же самое, что и /home/pi/python_games. Символы «.» и «..» служат псевдонимами для текущей и родительской директорий, соответственно, то есть, если вы находитесь в директории /home/pi/python_games, то команда

cd ..

переместит вас в /home/pi.

История и автоматическое заполнение

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

Команда sudo

Некоторые команды способны вносить в систему необратимые изменения, поэтому для их запуска требуются права самого главного пользователя системы — root-пользователя. Если вы не залогинены через root-пользователя, то его права можно временно получить при помощи команды sudo, но с условием, что ваша учетная запись находится в списке sudo-пользователей (так называемых «sudo'еров»). Если подставить к вашей команде приставку sudo и нажать Enter, система запросит ваш пароль, и если он будет введен правильно, то указанная вами команда будет выполнена с правами root-пользователя. И еще раз — будьте внимательны! Ряд команд, которые требуют для своего выполнения приставку sudo, могут нанести вашей системе необратимый ущерб.

Более подробно о sudo и root-пользователе читайте на этой странице.

Установка ПО при помощи apt-get

Для загрузки на Pi нового ПО можно использовать не только онлайн-магазин Pi Store, но и команду apt-get – это так называемый «пакетный менеджер», который имеется в комплекте всех Linux-дистрибутивов на базе Debian (включая Raspbian). Его функция заключается в установке ПО-пакетов, а также в управлении уже установленными ПО-пакетами. Для того, чтобы установить новый пакет, нужно вписать

sudo apt-get install <название_пакета>

, где <название_пакета> — это, собственно, пакет, который вы хотите установить.

Запуск команды

sudo apt-get update

обновляет список ПО-пакетов, которые уже установлены на вашей системе. Далее используется команда

sudo apt-get upgrade

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

sudo apt-get remove <название_пакета>

удаляет пакет, установленный на вашей системе.

Более подробно об этом читайте на странице об утилите APT.

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

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

  • Команда cp делает копию файла и помещает его в указанную локацию (по сути, это операция «копировать-вставить»). К примеру,
cp file_a /home/other_user/

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

  • Команда mv перемещает файл в указанную локацию (по сути, это операция «вырезать-вставить»). Используется аналогично cp, то есть если вписать
mv file_a /home/other_user/

, это переместит файл file_a из вашей домашней директории в директорию other_user. Кроме того, mv используется для переименования файла, например, так —

mv hello.txt story.txt
  • Команда rm удаляет указанный файл (или директорию, если используется с меткой -r). И предупреждаем — файлы, удаленные таким образом, восстановлению, как правило, не подлежат.
  • Команда mkdir создает новую директорию. К примеру, если вписать
mkdir new_dir

, это создаст в текущей директории папку под названием new_dir.

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

, это покажет содержимое файла some_file.

О других командах можно почитать на соответствующей странице.

Справочная информация о командах

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

man ls

В ответ вам будет показана так называемая man-страница (man — это сокращение от manual, что можно перевести как «руководство» или «справочник»), которая, помимо прочего, будет рассказывать о метках для этой команды и для чего они предназначены. На некоторых man-страницах указаны примеры использования команд.

См.также

Внешние ссылки