## 4. Использование каталогов

## 4.1. Каталоги: предварительные понятия

Мы рассмотрели различия между файлами под DOS и Linux. Корневой каталог под DOS обозначается `\`, под Linux `/`. Аналогично, вложенные каталоги отделяются `\` под DOS, `/` под Linux. Примеры полных имен файлов:

> `

>            DOS: C:\PAPERS\GEOLOGY\MID_EOC.TEX

>            Linux:  /home/guido/papers/geology/middle_eocene.tex

> `

Как обычно, `..` - директория предыдущего уровня, а `.` является текущим каталогом. Не забывайте, что система не разрешит применять Вам `cd`, `rd` или `md` всюду, где Вы захотите. Каждый пользователь начинает работу из своего собственного каталога, называемого "домашний", который пользователю отвел администратор данной системы; например, на моем PC мой домашний каталог - `/home/guido`.

## 4.2. Права доступа каталогов

Каталоги также имеют права доступа. Все, что мы рассмотрели в Разделе "Права доступа и владение" применимо в той же степени к каталогам (пользователь, группа и другие). Для каталога `rx` означает, что Вы можете, войти в этот каталог, а `w` означает, что Вы можете удалить файлы в этом каталоге (согласно установленным правам доступа к файлам, конечно) или сам каталог.

Например, чтобы другие пользователи не подглядели содержимое файла `/home/guido/text`:

> `

>            $ chmod o-rwx /home/guido/text

> `

## 4.3. Каталоги: трансляция команд

> `

>            DIR:            ls, find, du

>            CD:             cd, pwd

>            MD:             mkdir

>            RD:             rmdir

>            DELTREE:        rm -R

>            MOVE:           mv

> `

### Примеры

> `

>       DOS                                     Linux

>       ---------------------------------------------------------------------

>       C:\GUIDO>DIR                            $ ls

>       C:\GUIDO>DIR FILE.TXT                   $ ls file.txt

>       C:\GUIDO>DIR *.H *.C                    $ ls *.h *.c

>       C:\GUIDO>DIR/P                          $ ls | more

>       C:\GUIDO>DIR/A                          $ ls -l

>       C:\GUIDO>DIR *.TMP /S                   $ find / -name "*.tmp"

>       C:\GUIDO>CD                             $ pwd

>               не доступен - см. прим.         $ cd

>               то же                           $ cd ~

>               то же                           $ cd ~/temp

>       C:\GUIDO>CD \OTHER                      $ cd /other

>       C:\GUIDO>CD ..\TEMP\TRASH               $ cd ../temp/trash

>       C:\GUIDO>MD NEWPROGS                    $ mkdir newprogs

>       C:\GUIDO>MOVE PROG ..                   $ mv prog ..

>       C:\GUIDO>MD \PROGS\TURBO                $ mkdir /progs/turbo

>       C:\GUIDO>DELTREE TEMP\TRASH             $ rm -R temp/trash

>       C:\GUIDO>RD NEWPROGS                    $ rmdir newprogs

>       C:\GUIDO>RD \PROGS\TURBO                $ rmdir /progs/turbo

> `

Примечания:

1. При использовании `rmdir`, удаляемый каталог должен быть пуст. Чтобы удалить каталог и все его содержимое, используйте `rm -R` (на ваш собственный риск).
2. Символ "`~`" является сокращенным для имени вашего домашнего каталога. Команды `cd` или `cd ~` вернут Вас в ваш домашний каталог из любого места, где бы Вы не находились; команда `cd ~/tmp` переместит Вас в `/home/your_home/tmp`.
3. `cd` - "отменяет" последнюю команду `cd`.