Unix / Linux - Каталоги

Добро пожаловать, стремящиеся к программированию! Сегодня мы окунемся в fascinierende мир каталогов Unix и Linux. Как ваш доброжелательный соседский учитель компьютера, я здесь, чтобы провести вас через это путешествие, шаг за шагом. Так что возьмите себе чашку кофе (или чая, если это ваше дело), и давайте исследуем структуру каталогов этих мощных операционных систем!

Unix / Linux - Directories

Структура каталогов Linux

Представьте себе ваш компьютер как большое дерево. Корень этого дерева - это, собственно, корневой каталог (/). Оттуда ветви (подкаталоги) расходятся, создавая иерархическую структуру. Эта структура является основой систем Unix и Linux.

Вот упрощенный вид структуры каталогов Linux:

/
├── bin
├── boot
├── dev
├── etc
├── home
├── lib
├── media
├── mnt
├── opt
├── proc
├── root
├── sbin
├── tmp
├── usr
└── var

Каждый из этих каталогов имеет определенную цель. Например, /bin содержит основные команды пользователя, /etc хранит файлы конфигурации системы, а /home - это место, где находятся домашние каталоги пользователей.

Домашний каталог

Говоря о доме, давайте поговорим о вашем личном пространстве в мире Linux - домашний каталог. Это как ваша спальня в большом доме Linux.

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

cd ~

Или просто:

cd

Здесь cd означает "изменить каталог", а ~ - это сокращение для вашего домашнего каталога.

Абсолютные/относительные пути

Теперь давайте обсудим, как navigeren по этому древовидному structure. Мы используем пути, которые бывают двух видов: абсолютные и относительные.

Абсолютные пути

Абсолютный путь начинается с корневого каталога (/). Это как дать кому-то ваш полный адрес, включая страну, город и улицу.

Пример:

cd /home/username/Documents

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

Относительные пути

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

Пример:

cd Documents

Если вы уже находитесь в вашем домашнем каталоге, это переместит вас в папку Documents.

Список каталогов

Теперь, когда мы знаем, как navigeren, давайте посмотрим, что находится внутри этих каталогов. Команда ls - ваш лучший друг здесь.

ls

Эта команда покажет содержимое текущего каталога. Хотите больше деталей? Попробуйте:

ls -l

Опция -l предоставляет вам длинный формат списка, показывая разрешения, владельца, размер и дату изменения.

Создание каталогов

Пришло время создать свои собственные ветви на этом дереве Linux! Мы используем команду mkdir для создания каталогов.

mkdir MyNewFolder

Это создаст новый каталог с именем "MyNewFolder" в вашем текущем местоположении.

Создание родительских каталогов

Что, если вы хотите создать каталог внутри каталога, который еще не существует? Не волнуйтесь! Опция -p поможет вам.

mkdir -p Projects/WebDevelopment/HTML

Это создаст весь путь, даже если родительские каталоги не существуют.

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

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

rmdir MyNewFolder

Будьте осторожны, однако! Если вы хотите удалить каталог и все его содержимое, используйте rm -r, но используйте это с осторожностью:

rm -r Projects

Это удалит каталог Projects и все, что находится внутри него. Это как использовать chainsaw вместо secateurs!

Изменение каталогов

Мы уже видели команду cd, но давайте освежим память:

cd /path/to/directory    # Перейти в определенный каталог
cd ..                    # Переместиться на один уровень вверх
cd ~                     # Перейти в домашний каталог
cd -                     # Перейти в предыдущий каталог

Переименование каталогов

В Unix/Linux у нас нет отдельной команды "переименовать". Вместо этого мы используем команду mv (переместить):

mv oldname newname

Например:

mv MyProjects MyAwesomeProjects

Это переименует каталог "MyProjects" в "MyAwesomeProjects".

Каталоги . (точка) и .. (две точки)

Давайте закончим с двумя специальными именами каталогов:

  • . (одна точка) представляет текущий каталог
  • .. (две точки) представляет родительский каталог

Эти_catalogs_очень полезны в относительных путях. Например:

cp ../file.txt .

Это скопирует файл "file.txt" из родительского каталога в текущий каталог.

Вот таблица, резюмирующая основные команды, связанные с каталогами, которые мы рассмотрели:

Команда Описание Пример
cd Изменить каталог cd /home/user
ls Список содержимого каталога ls -l
mkdir Создать новый каталог mkdir NewFolder
rmdir Удалить пустой каталог rmdir OldFolder
rm -r Удалить каталог и его содержимое rm -r Projects
mv Переместить/переименовать каталог mv OldName NewName
cp Копировать файлы или каталоги cp -r SourceDir DestDir

помните, что практика делает perfect! Не бойтесь экспериментировать в вашем терминале. Linux очень прощает (за исключением случаев, когда вы используете rm -r неосторожно!). Счастливого исследования и да будет с вами сила Linux!

Credits: Image by storyset