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

Если за пример взять DOS-системы, в том числе Windows, где диски четко разграничены, каждый накопитель информации (HDD, SSD, DVD и так далее) помечен уникальной латинской буквой, а все дочерние элементы отделяются от родительских обратным слэшем (\), то, например, путь к каталогу с Internet Explorer выглядит таким образом:

C:\Program Files\Internet Explorer\

То в Unix-системах все немного иначе: нет четкой разбивки на диски. Нам предоставлен единый корень системы (/), в который смонтированы все диски, не имеет значения где он находится. Хоть на другой машине. Главное лишь то, что отсчет начинается с корня.

Давайте вообразим себе рабочую станцию в каком-то вымышленном учреждении. Пусть операционная система будет установлена на HDD, ее каталоги tmp и var будут созданы на SSD, а home в отдельном жестком диске на сервере. А теперь представим, что нам необходимо указать путь к директории с документами пользователя для этой рабочей станции. Его вид будет, примерно, такой:

/home/user/Documents

Хочу обратить ваше внимание на то, что за директорию Documents отвечает пакет xdg-user-dirs. Он создает в домашнем каталоге директории Documents, Videos, Music и другие, а также задает их наименование с учетом языка системы. Например, так будет выглядеть в моей системе описанный выше адрес:

/home/emgrte/Документы

А теперь укажем путь к директории кэша пакетного менеджера pacman. Они расположены в каталоге var и полный путь будет таков:

/var/cache/pacman/pkg

Видите, все начинается с корня и системе все равно на каком диске находится нужный нам каталог или файл. Даже если в системе будет 100500 дисков, любой путь начинается с корня системы: /.

P.S. Можно использовать утилиту tree для просмотра каталогов в виде дерева.

Продолжение следует…

Читайте далее: Гик-чтиво #3 – командная оболочка и запуск скриптов bash