My-library.info
Все категории

Уильям Шоттс - Командная строка Linux. Полное руководство

На электронном книжном портале my-library.info можно читать бесплатно книги онлайн без регистрации, в том числе Уильям Шоттс - Командная строка Linux. Полное руководство. Жанр: Прочая околокомпьтерная литература издательство -, год 2004. В онлайн доступе вы получите полную версию книги с кратким содержанием для ознакомления, сможете читать аннотацию к книге (предисловие), увидеть рецензии тех, кто произведение уже прочитал и их экспертное мнение о прочитанном.
Кроме того, в библиотеке онлайн my-library.info вы найдете много новинок, которые заслуживают вашего внимания.

Название:
Командная строка Linux. Полное руководство
Издательство:
-
ISBN:
-
Год:
-
Дата добавления:
6 октябрь 2019
Количество просмотров:
277
Читать онлайн
Уильям Шоттс - Командная строка Linux. Полное руководство

Уильям Шоттс - Командная строка Linux. Полное руководство краткое содержание

Уильям Шоттс - Командная строка Linux. Полное руководство - описание и краткое содержание, автор Уильям Шоттс, читайте бесплатно онлайн на сайте электронной библиотеки My-Library.Info
Книга Уильяма Шоттса "Командная строка Linux: Полное руководство" представляет обширный обзор «жизни» в командной строке Linux. В отличие от других книг, посвященных одной программе, такой как командный интерпретатор bash, в этой книге автор попытается рассказать, как поладить с интерфейсом командной строки в более широком аспекте. Как он работает? Что можно сделать с его помощью? Как лучше его использовать? Эта книга не об администрировании системы Linux. Эта книга исключительно о Linux.В книге материал излагается в тщательно выверенной последовательности, как в школе, где учитель руководит вами и направляет вас по правильному пути. Многие авторы грешат тем, что подают материал в «систематическом» порядке, имеющем определенный смысл для писателя, но способном вызывать путаницу у начинающих пользователей. Цель данной книги — познакомить вас с идеологией Unix, которая отличается от идеологии Windows.

Командная строка Linux. Полное руководство читать онлайн бесплатно

Командная строка Linux. Полное руководство - читать книгу онлайн бесплатно, автор Уильям Шоттс

Перемещение и переименование файлов


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

[ [email protected] playground]$ mv passwd fun

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

[ [email protected] playground]$ mv fun dir1

переместит файл в каталог dir1. Следующая команда

[ [email protected] playground]$ mv dir1/fun dir2

переместит файл из каталога dir1 в каталог dir2. Следующая команда

[ [email protected] playground]$ mv dir2/fun .

вернет его в текущий рабочий каталог. Теперь посмотрим, как mv влияет на каталоги. Сначала переместите файл в каталог dir1:

[ [email protected] playground]$ mv fun dir1

затем переместите dir1 в dir2 и проверьте их содержимое командой ls:

[ [email protected] playground]$ mv dir1 dir2

[ [email protected] playground]$ ls -l dir2

итого 4

drwxrwxr-x 2 me me 4096 2012-01-11 06:06 dir1

[ [email protected] playground]$ ls -l dir2/dir1

итого 4

-rw-r--r-- 1 me me 1650 2012-01-10 16:33 fun

Обратите внимание: так как dir2 уже существует, mv переместит dir1 в dir2. Если бы каталога dir2 не было, mv просто переименовала бы dir1 в dir2. В заключение верните все на свои места:

[ [email protected] playground]$ mv dir2/dir1 .

[ [email protected] playground]$ mv dir1/fun .

Создание жестких ссылок


Теперь попробуем поиграть со ссылками. Сначала займемся жесткими ссылками: создайте несколько жестких ссылок для нашего файла:

[ [email protected] playground]$ ln fun fun-hard

[ [email protected] playground]$ ln fun dir1/fun-hard

[ [email protected] playground]$ ln fun dir2/fun-hard

Теперь у нас есть четыре экземпляра файла fun. Посмотрим, что содержит наш каталог playground:

[ [email protected] playground]$ ls -l

итого 16

drwxrwxr-x 2 me me 4096 2012-01-14 16:17 dir1

drwxrwxr-x 2 me me 4096 2012-01-14 16:17 dir2

-rw-r--r-- 4 me me 1650 2012-01-10 16:33 fun

-rw-r--r-- 4 me me 1650 2012-01-10 16:33 fun-hard

Прежде всего следует обратить внимание на на второе поле в записях, соответствующих файлам fun и fun-hard. Оба они содержат 4 — число жестких ссылок на файл, существующих в данный момент. Как вы помните, файл всегда имеет хотя бы одну жесткую ссылку, потому что имя файла определяется ссылкой. Но как убедиться, что fun и fun-hard — это один и тот же файл? В этом случае команда ls нам не помощник. Вы, конечно, скажете, что fun и fun-hard имеют одинаковые размеры (поле 5), но по списку файлов нельзя уверенно утверждать, что это один и тот же файл. Чтобы решить эту задачу, заглянем поглубже.

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

Команда ls может извлекать эту информацию. Для этого ее нужно вызвать с параметром -i:

[ [email protected] playground]$ ls -li

итого 16

12353539 drwxrwxr-x 2 me me 4096 2012-01-14 16:17 dir1

12353540 drwxrwxr-x 2 me me 4096 2012-01-14 16:17 dir2

12353538 -rw-r--r-- 4 me me 1650 2012-01-10 16:33 fun

12353538 -rw-r--r-- 4 me me 1650 2012-01-10 16:33 fun-hard

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

Создание символических ссылок


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

Создаются символические ссылки почти так же, как жесткие ссылки:

[ [email protected] playground]$ ln -s fun fun-sym

[ [email protected] playground]$ ln -s ../fun dir1/fun-sym

[ [email protected] playground]$ ln -s ../fun dir2/fun-sym

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

[ [email protected] playground]$ ls -l dir1

итого 4

-rw-r--r-- 4 me me 1650 2012-01-10 16:33 fun-hard

lrwxrwxrwx 1 me me 6 2012-01-15 15:17 fun-sym -> ../fun

Запись с информацией о fun-sym в dir1 сообщает, что это символическая ссылка (первый символ l в первом поле), указывающая на ../fun, что правильно. Относительно символической ссылки fun-sym файл fun находится в каталоге уровнем выше. Обратите также внимание на размер файла символической ссылки, равный 6, — это число символов в строке ../fun, а не размер файла, на который она указывает.

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

[ [email protected] playground]$ ln -s /home/me/playground/fun dir1/fun-sym

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

Помимо обычных файлов, символические ссылки могут указывать также на каталоги:

[ [email protected] playground]$ ln -s dir1 dir1-sym

[ [email protected] playground]$ ls -l

итого 16

drwxrwxr-x 2 me me 4096 2012-01-15 15:17 dir1

lrwxrwxrwx 1 me me 4 2012-01-16 14:45 dir1-sym -> dir1

drwxrwxr-x 2 me me 4096 2012-01-15 15:17 dir2

-rw-r--r-- 4 me me 1650 2012-01-10 16:33 fun

-rw-r--r-- 4 me me 1650 2012-01-10 16:33 fun-hard

lrwxrwxrwx 1 me me 3 2012-01-15 15:15 fun-sym -> fun

Удаление файлов и каталогов


Как уже говорилось ранее, удаление файлов и каталогов выполняется при помощи команды rm. Далее мы немного почистим нашу песочницу. Сначала удалите одну из жестких ссылок:

[ [email protected] playground]$ rm fun-hard

[ [email protected] playground]$ ls -l

итого 12

drwxrwxr-x 2 me me 4096 2012-01-15 15:17 dir1

lrwxrwxrwx 1 me me 4 2012-01-16 14:45 dir1-sym -> dir1

drwxrwxr-x 2 me me 4096 2012-01-15 15:17 dir2

-rw-r--r-- 3 me me 1650 2012-01-10 16:33 fun

lrwxrwxrwx 1 me me 3 2012-01-15 15:15 fun-sym -> fun

Результат получился вполне ожидаемым. Файл fun-hard исчез, и счетчик ссылок во втором поле в записи для файла fun уменьшился с четырех до трех. Далее, удалите файл fun и ради развлечения добавьте в команду параметр -i, чтобы посмотреть, что происходит:

[ [email protected] playground]$ rm -i fun

rm: удалить обычный файл `fun'?

Введите y в ответ на запрос, и файл будет удален. Но давайте посмотрим на вывод ls. Заметили, что произошло с fun-sym? Поскольку теперь символическая ссылка указывает на несуществующий файл, она стала битой:

[ [email protected] playground]$ ls -l

итого 8

drwxrwxr-x 2 me me 4096 2012-01-15 15:17 dir1

lrwxrwxrwx 1 me me 4 2012-01-16 14:45 dir1-sym -> dir1

drwxrwxr-x 2 me me 4096 2012-01-15 15:17 dir2

lrwxrwxrwx 1 me me 3 2012-01-15 15:15 fun-sym -> fun

В большинстве дистрибутивов Linux команда ls особым образом настраивается на отображение битых ссылок. В Fedora битые ссылки отображаются как мигающий красный текст. Битые ссылки не представляют никакой опасности, но вносят определенную путаницу. При попытке использовать битую ссылку вы увидите:

[ [email protected] playground]$ less fun-sym

fun-sym: Нет такого файла или каталога

Давайте немного приберем за собой. Удалите символическую ссылку:

[ [email protected] playground]$ rm fun-sym dir1-sym

[ [email protected] playground]$ ls -l

итого 8

drwxrwxr-x 2 me me 4096 2012-01-15 15:17 dir1

drwxrwxr-x 2 me me 4096 2012-01-15 15:17 dir2

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

В заключение удалим каталог playground. Для этого вернитесь в домашний каталог и вызовите команду rm с параметром рекурсивного удаления каталогов (-r), чтобы удалить каталог playground и все его содержимое, включая подкаталоги:

[ [email protected] playground]$ cd

[ [email protected] ~]$ rm -r playground

создание символических ссылок с помощью графического интерфейса

Диспетчеры файлов в GNOME и KDE предоставляют простой автоматизированный способ создания символических ссылок. Если в GNOME во время перетаскивания файла мышью удерживать нажатыми клавиши CTRL и SHIFT, вместо копирования (или перемещения) файлов будет выполнена операция создания ссылки. В KDE, когда перетаскиваемый файл сбрасывается в целевой каталог, появляется небольшое меню, предлагающее выбор из трех операций: скопировать, переместить или создать ссылку.

Заключительное замечание


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


Уильям Шоттс читать все книги автора по порядку

Уильям Шоттс - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки My-Library.Info.


Командная строка Linux. Полное руководство отзывы

Отзывы читателей о книге Командная строка Linux. Полное руководство, автор: Уильям Шоттс. Читайте комментарии и мнения людей о произведении.

Прокомментировать
Подтвердите что вы не робот:*
Подтвердите что вы не робот:*
Все материалы на сайте размещаются его пользователями.
Администратор сайта не несёт ответственности за действия пользователей сайта..
Вы можете направить вашу жалобу на почту librarybook.ru@gmail.com или заполнить форму обратной связи.