Фундаментальные основы Linux. Часть II: Первые шаги в изучении интерфейса командной строки
Глава 6. Работа с директориями
В данной главе приводится краткий обзор большинства стандартных команд, используемых при работе с директориями: pwd , cd , ls , mkdir и rmdir . Эти команды доступны при работе с любой системой Linux (или Unix).
Кроме того, в данной главе обсуждаются понятия абсолютных и относительных путей , а также описывается методика использования механизма завершения путей командной оболочки bash.
Команда pwd
Команда cd
приведет к аналогичному эффекту.
Для того, чтобы остаться в текущей директории, просто введите команду cd . 😉 Позднее мы все же познакомимся с практическим примером использования символа . , представляющего текущую директорию.
Абсолютные и относительные пути
Вы должны иметь представление об абсолютных и относительных путях в рамках дерева директорий файловой системы. Если вы вводите путь, начинающийся с символа слэша (/) , подразумевается, что путь будет указан относительно корневой директории файловой системы. Если же вы не начинаете ввод пути с символа слэша, подразумевается, что точкой отсчета будет текущая директория.
Этот пример был последним примером, в котором используются команды pwd . С этого момента информация о текущей директории будет всегда выводиться в рамках приглашения командной оболочки. Далее в данной книге будут даны пояснения относительно того, как следует использовать переменную командной оболочки $PS1 для вывода описанной информации.
Завершение путей
Клавиша TAB может помочь избежать ошибок при вводе путей. Нажатие клавиши TAB после ввода части команды cd /et приведет к завершению команды до вида cd /etc/ . При этом нажатие клавиши TAB после ввода команды cd /Et не приведет ни к чему, так как была допущена ошибка при вводе части пути (использована буква E в верхнем регистре).
Вам придется нажимать меньше клавиш в случае использования клавиши TAB , к тому же, при использовании этой клавиши вы можете быть уверены в том, что введенный путь является корректным!
Утилита ls
Другим периодически используемым параметром утилиты ls является параметр -h . Он позволяет выводить числовые значения (соответствующие размерам файлов) в формате, лучше читаемом человеком. Также в примере ниже показаны варианты передачи параметров утилите ls . Позднее в данной книге будут даны подробные пояснения относительно выводимых данных.
Утилита mkdir
Утилита rmdir
Практическое задание: работа с директориями
1. Выведите путь к вашей текущей директории.
2. Перейдите в директорию /etc.
3. А теперь перейдите в вашу домашнюю директорию с помощью ровно трех нажатий клавиш.
4. Перейдите в директорию /boot/grub с помощью ровно одиннадцати нажатий клавиш.
5. Перейдите в родительскую директорию для текущей директории.
6. Перейдите в корневую директорию.
7. Выведите список содержимого корневой директории.
8. Выведите подробный список содержимого корневой директории.
9. Оставаясь в текущей рабочей директории, выведите список содержимого директории /etc.
10. Оставаясь в текущей директории, выведите список содержимого директорий /bin и /sbin.
11. Оставаясь в текущей директории, выведите список содержимого директории
12. Выведите список всех файлов (включая скрытые файлы), находящихся в вашей домашней директории.
13. Выведите список файлов, находящихся в директории /boot, с использованием формата величин для облегчения чтения человеком.
14. Создайте директорию testdir в вашей домашней директории.
15. Перейдите в директорию /etc и, оставаясь в ней, создайте директорию newdir в вашей домашней директории.
16. Создайте с помощью одной команды директории
/dir1/dir1/dir2/dir3 (директория dir3 является поддиректорией директории dir2, а директория dir2 — поддиректорией директории dir1).
17. Удалите директорию testdir.
18. Если позволяет время (или вы ждете момента, когда остальные студенты закончат выполнение данного практического задания), попытайтесь воспользоваться командами pushd и popd и понять принцип их работы. Обратитесь к странице руководства man для командной оболочки bash с целью поиска информации о данных командах.
Корректная процедура выполнения практического задания: работа с директориями
1. Выведите путь к вашей текущей директории.
2. Перейдите в директорию /etc.
3. А теперь перейдите в вашу домашнюю директорию с помощью ровно трех нажатий клавиш.
4. Перейдите в директорию /boot/grub с помощью ровно одиннадцати нажатий клавиш.
5. Перейдите в родительскую директорию для текущей директории.
6. Перейдите в корневую директорию.
7. Выведите список содержимого корневой директории.
8. Выведите подробный список содержимого корневой директории.
9. Оставаясь в текущей рабочей директории, выведите список содержимого директории /etc.
10. Оставаясь в текущей директории, выведите список содержимого директорий /bin и /sbin.
11. Оставаясь в текущей директории, выведите список содержимого директории
12. Выведите список всех файлов (включая скрытые файлы), находящихся в вашей домашней директории.
13. Выведите список файлов, находящихся в директории /boot, с использованием формата величин для облегчения чтения человеком.
14. Создайте директорию testdir в вашей домашней директории.
15. Перейдите в директорию /etc и, оставаясь в ней, создайте директорию newdir в вашей домашней директории.
16. Создайте с помощью одной команды директории
/dir1/dir1/dir2/dir3 (директория dir3 является поддиректорией директории dir2, а директория dir2 — поддиректорией директории dir1).
17. Удалите директорию testdir.
18. Если позволяет время (или вы ждете момента, когда остальные студенты закончат выполнение данного практического задания), попытайтесь воспользоваться командами pushd и popd и понять принцип их работы. Обратитесь к странице руководства man для командной оболочки bash с целью поиска информации о данных командах.
ИТ База знаний
Полезно
— Узнать IP — адрес компьютера в интернете
— Онлайн генератор устойчивых паролей
— Онлайн калькулятор подсетей
— Калькулятор инсталляции IP — АТС Asterisk
— Руководство администратора FreePBX на русском языке
— Руководство администратора Cisco UCM/CME на русском языке
— Руководство администратора по Linux/Unix
Навигация
Серверные решения
Телефония
FreePBX и Asterisk
Настройка программных телефонов
Корпоративные сети
Протоколы и стандарты
Популярное и похожее
15 примеров команды PING для диагностики сети
15 примеров CURL в Linux
Руководство по команде grep в Linux
Как сбросить пароль в Debian
Переменные окружения в Linux: как посмотреть, установить и сбросить
Полезные команды для управления Apache в Linux
11 утилит сканирования Linux серверов на уязвимости и вредоносы
Grandstream GXW4224
Еженедельный дайджест
Linux: команды для работы с файлами и директориями
Во многих наших статьях проскакивают различные команды, связанные с файловыми манипуляциями – создание директорий, файлов, установка пакетов и т.д. В данной статье мы решили начать повествование последовательно.
Основы
Итак, в Linux в отличие от Windows существует понятие полного и относительного пути. Разница между ними в том, что полный путь всегда начинается с корневого каталога (корневой каталог обозначается как /), и далее также через слеш происходит перечисление всех названий каталогов на пути к искомому файлу или директории, а в случае относительного пути – в начале слеш не указывается. То есть без слеша путь указывается относительно нынешнего местоположения, а со слешем – относительно корневого каталога. Примеры:
/tmp/file1 — относительный путь;
Ниже вы встретите часто используемые команды для работы с файлами, архивами и установкой программ.
Команды для работы с файлами и директориями
Команд довольно много, я перечислю самые, на мой взгляд, часто используемые:
- cd — смена директории на домашнюю, можно добавлять аргументы – к примеру, cd /root ;
- pwd — команда покажет текущий путь к директории, в которой вы находитесь в данный момент;
- ls — вывод списка файлов и каталогов по порядку (наверное, самая известная команда) если добавить модификаторы lax , то команда выведет форматированный список всех файлов и директорий (в том числе скрытые);
- cat — показывает содержимое файла, к примеру – cat /root/file.txt ;
- tail — например, tail /root/file.txt , выводит только конец файла, удобно при работе с логами;
- cp — копирование директории или файла, то есть cp /root/file.txt /etc/folder1/file.txt – из /root файл будет скопирован в указанную директорию
- mkdir — создание директории, например, mkdir /root/1 ;
- rmdir — удаление директории, синтаксис такой же, как и у команды выше;
- rm -rf — очень опасная команда (и довольно популярная в интернет фольклоре), но иногда и она может пригодиться – она удаляет директорию со вложенными файлами;
- mv — переименование файла или директории, сначала указывается целевая директория и затем её новое название;
- locate — поиск файла с заданным названием;
Для наглядности, посмотрите на вывод команды tail
В примере выше, команда tail вывела только последние 11 строк.
Работа с архивами
Работа с .tar архивами – очень часто встречающаяся задача, поэтому хотим привести несколько полезных команд, чтобы не пришлось лишний раз пользоваться поисковиком 🙂
- tar cf example.tar /home/example.txt — создание .tar архива, который будет содержать в себе текстовый файл example.txt;
- tar cjf example1.tar.codez2 /home/example1.txt — команда с тем же функционалом, только будет использоваться сжатие Bzip2;
- tar czf example2.tar.gz /home/example2.txt — опять архивация, только на этот раз со сжатием Gzip;
- tar xf example.tar — распаковка архива в текущую директорию, если тип сжатия нестандартный, то после расширения нужно добавить тип сжатия (.codez2 или .gz соответственно);
Работа с .rpm пакетами
Так как мы больше всего рассказываем и пишем про FreePBX, который по умолчанию скачивается с официального сайта вместе c СentOS, здесь место для пары команд по работе c RPM пакетами. Почему? Потому что CentOS – RPM-based Linux Distribution 🙂 Команды требуют наличие прав супер — пользователя.
- rpm -qa — вывод списка всех установленных RPM пакетов в системе;
- rpm –i rpmpackage.rpm — установка пакета с именем rpmpackage;
- rpm –e rpmpackage — удаление пакета с таким именем;
- dpkg -i *.rpm — установка всех пакетов в директории;
Про жёсткие диски
Команда fdisk –l выводит информацию о всех подключенных жёстких и сменных дисках в системе, бывает очень полезной. Ниже пример вывод этой команды (в качестве пример рассматривается OTRS — сервер)
Было полезно?
Почему?
😪 Мы тщательно прорабатываем каждый фидбек и отвечаем по итогам анализа. Напишите, пожалуйста, как мы сможем улучшить эту статью.
😍 Полезные IT – статьи от экспертов раз в неделю у вас в почте. Укажите свою дату рождения и мы не забудем поздравить вас.