Найти тему

Команды для копирования и перемещения каталогов и файлов в Linux

Последняя часть трилогии про работу с файлами и папками. В этот раз поговорим о копировании и перемещении файлов и папок при помощи команд в терминале. Предыдущие две части можете найти по ссылкам ниже.

Команды для управления каталогами в Linux

Команды для управления файлами в Linux

Копирование файлов и папок

Команда для копирования выглядит просто и понятно - cp (copy - копировать). В качестве аргументов она принимает исходный и целевой файлы/папки. Результатом выполнения является полностью идентичная копия, при этом если целевой файл/папка существует, то после копирования произойдет полная перезапись содержимого. Исходный файл/папка не изменяются.

-2

В одном из постов мы говорили про права доступа к файлами. Такие параметры называются также атрибуты. Чтобы сохранить атрибуты при копировании файлов нужно указать ключ -p (preserve - сохранить). Также помним, что команда ls - l позволяет просматривать атрибуты файлов.

-3

Копирование каталогов со всем содержимым осуществляется при использовании ключа -R (recursively - рекрусивно). Если вы попытаетесь скопировать папку внутри которой что-то есть без ключа, то выйдет ошибка.

-4

Использование ключа -R не позволит скопировать каталоги и их содержимое с сохранением атрибутов. Чтобы скопировать папку и ее содержимое с полностью сохраненными атрибутами используется ключ -a (archive - архивирование). Все та же команда ls -l поможет проверить правильность копирования атрибутов. Ключ -a полезен при резервном копировании больших по объему каталогов с большим уровнем вложенности.

-5

Использование звездочки (*) позволит скопировать содержимое каталога. Достаточно указать имя папки (или полный путь к ней) и в конце поставить звездочку. Все файлы находящиеся в исходной папке будут скопированы в целевую папку. Для копирования таким же образом каталогов и их содержимого используйте ключ -R и звездочку в конце.

-6

Перемещение файлов и папок

Команда, позволяющая перемещать файлы и папки тоже выглядит просто - mv (move). При использовании команды нужно указать целевой файл/папку и путь для перемещения. Если в месте перемещения будут находиться файлы или папки с такими же названиями, то они будут перезаписаны.

-7

Опять же использование звездочки (*) в конце имени папки перемещает ее содержимое, оставляя родительскую папку на месте.

-8

Команда mv используется в том числе и для переименования файлов или папок. Для этого нужно после указания пути указать новое имя файла/папки.

-9

Используя материалы трех постов вы легко научитесь работе с файлами и папками через терминал Linux. В следующих постах поговорим об утилитах scp и rsync, которые позволяют управлять файлами и папками между удаленными компьютерами.

Чтобы не пропустить новые заметки подпишитесь на канал! Также на забудьте поставить лайк этому и другим постам.