Манипулировать файлами можно при помощи одного из графических файловых менеджеров, например, Наутилус или Konqueror. Кроме того, это можно делать из командной строки, и это будет даже быстрее. Эта глава разъясняет, как именно работать с файлами в командной строке.
Вы можете создавать новые файлы как при помощи приложений (таких как
текстовые редакторы), так и командой touch, которая создает пустой файл, куда можно добавить текст или
другие данные. Чтобы создать файл с помощью команды touch, наберите в командной строке:
touch <имя_файла>Вместо <имя_файла> должно стоять название файла по вашему выбору. Просмотрев список файлов
текущего каталога с помощью команды
ls -l имя_файлавы увидите, что этот файл содержит ноль (0) байт информации:
-rw-rw-r-- 1 user user 0 Mar 07 16:01 имя_файлаДля копирования файла наберите следующее:
cp <источник> <пункт_назначения>Замените <источник> названием файла, который вы копируете, а
<пункт_назначения> названием каталога,
куда он должен попасть.
Итак, чтобы скопировать файл example.txt в каталог docs/ в вашем домашнем каталоге,
перейдите в свой домашний каталог и наберите:
cp example.txt docs/В команде cp вы можете использовать как относительный, так и абсолютный путь к
файлу. Наш домашний каталог является вышестоящим по отношению к каталогу
docs/; каталог docs/ на ступень ниже домашнего каталога.
![]() | Подсказка |
|---|---|
Чтобы больше узнать об относительных и абсолютных путях, обратитесь к Разд. 4.7, Смена каталога с помощью команды cd. |
Прочтите man-страницу команды cp (наберите в командной строке man cp) и просмотрите полный список опций команды cp. Среди прочих опций команды cp имеются следующие:
-i (interactive) — интерактивный режим.
Требует подтверждения, если командой будет переписан файл в
месте назначения. Это помогает избежать возможных
ошибок.
-r (recursive) — рекурсивный
режим. Вместо копирования всех указанных файлов и каталогов
скопирует все дерево каталогов, подкаталоги и прочее.
-v (verbose) — режим
дополнительных сообщений. Выводить на экран сообщение о каждой выполняемой
операции.
Теперь у вас имеется файл example.txt в каталоге
docs/. Воспользуйтесь командой cp -i, чтобы еще раз скопировать файл в то же самое место:
cp -i example.txt docs/cp: переписать 'docs/example.txt'?
Чтобы переписать файл, нажмите клавишу [Y] и затем [Enter]. Если вы не хотите переписывать существующий файл, нажмите [N] и [Enter].
Для перемещения файлов используйте команду mv. Узнать больше о команде mv можно из man-страницы mv, для чего необходимо набрать в командной
строке man mv.
Ниже приведены некоторые часто используемые опции команды mv:
-i (interactive) — интерактивный
режим. Предупреждает, что выбранный файл будет записан поверх уже
существующего в каталоге назначения. Это полезная опция, она похожа
на опцию
-i команды cp и дает возможность подумать, действительно ли нужно перезаписать уже
существующий файл.
-f (force) — принудительный
режим. Данная опция выключает интерактивный режим и
перемещает файлы, не выдавая подсказок. Если вы еще плохо
разбираетесь, что делать, эта опция опасна; старайтесь ее не
использовать, пока не станете чувствовать себя в системе уверенно.
-v (verbose) — режим дополнительных
сообщений. Выводить на экран сообщение о каждой выполняемой
операции.
Если вы хотите переместить файл из своего домашнего в другой существующий каталог, наберите, находясь в домашнем каталоге, следующее:
mv example.txt docs/Та же команда, но с использованием абсолютного пути, выглядит так:
mv /home/user/example.txt /home/user/docs/Команда mv используется не только для перемещения, но и для переименования файлов и
каталогов.
Следующая команда переименует файл original_name в файл
new_name:
mv original_name new_nameСледующая команда переместит файл original_name из
каталога на один уровень выше текущего в текущий и переименует этот
файл в new_name:
mv ../original_name new_nameСледующая команда переместит файл original_name из
текущего каталога в каталог dir3/ и переименует
этот файл в new_name:
mv original_name /dir1/dir2/dir3/new_nameВы научились создавать файлы командой touch и создали каталог docs/, используя команду mkdir.
Теперь нужно научиться удалять файлы и каталоги. Удаление
командой rm — простой процесс. Для получения более подробной информации обратитесь
к man-странице команды rm. Ниже перечислены некоторые опции данной команды:
-i (interactive) — интерактивный режим.
Требует подтвердить удаление для предотвращения ошибочного
удаления файла.
-f (force) — принудительный режим. Выключает интерактивный режим и
удаляет файл(ы), не запрашивая подтверждения. Не используйте эту
опцию, если вы не достаточно разбираетесь, что нужно делать.
-v (verbose) — режим дополнительных
сообщений. Выводить на экран сообщение о каждой выполняемой
операции.
-r (recursive) — рекурсивный
режим. Удалить каталог и все файлы и подкаталоги в нем.
Чтобы удалить файл test.txt с помощью команды
rm, наберите:
rm test.txt![]() | Внимание |
|---|---|
Как только файл или каталог удален командой
|
Используйте опцию -i, чтобы иметь
последнюю возможность подумать, прежде чем удалить файл.
rm -i test.txtrm: удалить обычный файл 'test.txt'?
Вы можете также удалять файлы, используя метасимволы *, но будьте осторожны, потому что вы можете легко удалить нужные файлы.
Для удаления файла с использованием метасимволов наберите:
rm tes*Эта команда удалит все файлы в каталоге, имена которых
начинаются с tes.
С помощью команды rm можно удалить также несколько файлов. Например:
rm test.txt example.txtЧтобы удалить каталог, используйте команду rmdir (например, rmdir examples), но только если
каталог пуст. Чтобы удалить каталог с помощью команды
rm, необходимо указать опцию
-r.
Например, если вы рекурсивно удаляете каталог
examples/, вы должны ввести:
rm -r examples/Чтобы совместить опции удаления, такие как принудительную и рекурсивную, введите:
rm -rf examples/Удаление каталога с помощью команды rmdir безопаснее, чем с помощью rm. С rmdir вы не сможете использовать рекурсивное удаление, поэтому каталог, который
содержит какие-нибудь файлы, не будет удален.
![]() | Внимание |
|---|---|
Команда |
Чтобы больше узнать о команде rmdir, обратитесь к ее man-странице (введите man rmdir).
Для создания ссылок, символьных и жестких, используется команда ln.
Жесткая ссылка — другое имя для существующего файла. Для создания жесткой ссылки введите в командной строке:
ln файл ссылка
Символьная ссылка — особый маленький файл, содержащий путь к файлу.
Для создания
символьной ссылки используется та же команда, что и для создания
жесткой, но с опцией -s:
ln -s файл ссылкаПри создании символьной ссылки на каталог автоматически создаются символьные ссылки на все входящие в него файлы и каталоги.
Чтобы больше узнать о команде ln, прочтите ее man-страницу, введя в командной строке man ln.