Книга: Ubuntu 10. Краткое руководство пользователя

5.6. Команды для работы с каталогами

5.6. Команды для работы с каталогами

Основные команды для работы с каталогами приведены в табл. 5.2.


При указании имени каталога можно указать следующие символы:

?. — означает текущий каталог. Если вы введете команду cat./file, то она выведет файл file, который находится в текущем каталоге;

? .. — родительский каталог, например, команда cd.. переведет нас на один уровень вверх по дереву файловой системы;

? ~ домашний каталог пользователя.

Теперь рассмотрим команды для работы с файлами на практике. Выполните следующие команды (листинг 5.2).

Листинг 5.2. Работа с файлами

mkdir directory

cd directory

touch file1.txt

touch file2.txt

ls

cd..

ls directory

rm directory

rmdir directory

rm — r directory

Первая команда (mkdir) создает каталог directory в текущем каталоге. Вторая команда (cd) переходит (изменяет каталог) в только что созданный каталог. Следующие две команды touch создают в новом каталоге два файла: file1.txt и file2.txt.

Команда ls без указания каталога выводит содержимое текущего каталога. Команда cd.. переходит в родительский каталог (как уже упоминалось, в Linux родительский каталог обозначается .. , а текущий — . ). Таким образом, находясь в каталоге directory, мы можем обращаться к файлам file1.txt и file2.txt без указания каталога или же как./file1.txt и./file2.txt.

Внимание!

В Linux для разделения элементов пути служит прямой слэш (/), а не обратный (), как в Windows. Запомните это!

В Linux часто употребляется обозначение ~ — это домашний каталог. Предположим, что наш домашний каталог назван /home/den. В нем мы создали подкаталог dir и поместили в него файл file 1.txt. Полный путь к файлу можно записать так:

/home/den/dir/file1.txt

или так:

~/dir/file1.txt

Как видите, тильда (~) заменяет часть пути. Удобно? Конечно!

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

ls directory

Команда rm предназначена для удаления каталога. Но что мы видим — система отказывается удалять каталог! Пробуем удалить его командой rmdir, но и тут отказ. Система сообщает нам, что каталог не пустой, т. е. содержит файлы. Для удаления каталога нужно сначала удалить все файлы. Конечно, делать это не сильно хочется, поэтому проще указать опцию — r команды rm для рекурсивного удаления каталога. В этом случае сначала будут удалены все подкаталоги (и все файлы в этих подкаталогах), а затем будет удален сам каталог (рис. 5.3).


Команды cp и mv работают аналогично — для копирования (перемещения/переименования) сначала указывается каталог-источник, а потом каталог-назначение. Для каталогов желательно указывать параметр — r, чтобы копирование (перемещение) выполнялось рекурсивно.

Оглавление книги


Генерация: 0.932. Запросов К БД/Cache: 2 / 0
поделиться
Вверх Вниз