cp
и mv
Работая с Linux, одна из базовых и необходимых задач — это копирование и перемещение файлов.
Для этого используются две основные команды: cp
(copy) и mv
(move).
В этой статье мы подробно разберем, как использовать их в различных сценариях, какие параметры помогут сделать это удобнее, и как устранить возможные ошибки.
cp
: как копировать файлы и директории в LinuxКоманда cp
используется для копирования файлов и папок из одного места в другое.
cp [опции] источник назначение
cp file.txt file_backup.txt
cp file.txt /home/user/documents/
cp file1.txt file2.txt /home/user/documents/
cp -r myfolder /home/user/backup/
cp
Опция | Описание |
---|---|
-r | Копировать папки и их содержимое |
-v | Подробный вывод процесса копирования |
-u | Копировать только если файл-источник новее |
-i | Спрашивать подтверждение перед перезаписью |
-n | Никогда не перезаписывать существующие файлы |
--preserve=all | Сохранять права, временные метки и владельцев |
mv
: как переместить или переименовать файл в LinuxКоманда mv
используется для перемещения файлов или папок, а также для переименования.
mv [опции] источник назначение
mv oldname.txt newname.txt
mv file.txt /home/user/documents/
mv file.txt /home/user/documents/renamed_file.txt
mv myfolder /home/user/backup/
mv
Опция | Описание |
---|---|
-v | Подробный вывод |
-i | Подтверждение при перезаписи |
-n | Не перезаписывать файлы |
-u | Перемещать только более новые файлы |
Permission denied
sudo cp file.txt /root/
No such file or directory
ls -l file.txt
Is a directory
cp -r myfolder /backup/
В терминале нажимайте Tab
при вводе пути — это ускоряет ввод и предотвращает ошибки.
cp -i file.txt /backup/
rsync
для больших объемов
rsync -avh myfolder /backup/
cp
и mv
Операция | cp | mv |
---|---|---|
Копирует | ✅ | ❌ |
Перемещает | ❌ | ✅ |
Переименовывает | ❌ | ✅ |
Оставляет оригинал | ✅ | ❌ |
Рекурсивная работа с директориями | ✅ | ✅ |
Команды cp
и mv
— это основа повседневной работы в Linux.
Освоив их, вы сможете эффективно управлять файлами, создавать резервные копии, организовывать структуру каталогов и автоматизировать рутинные задачи.
Не забывайте использовать полезные флаги (-r
, -v
, -i
) и внимательно проверяйте пути, чтобы избежать потерь данных. А для более сложных сценариев обратите внимание на rsync
.