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.