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