Команда cp: копирование файла и дерева каталогов
Скопируйте файл, сохранив источник, и разберите рекурсивную копию. Узнайте, когда cp может заменить назначение и почему копия требует проверки.
Назначение команды
cp создаёт отдельный результат копирования. Для обычного файла это позволяет независимо изменять копию, сохраняя источник. Сам факт завершения команды полезно дополнить проверкой нужного содержимого и назначения: неверно выбранный путь может дать технически успешный, но бесполезный результат.
Синтаксис и учебный пример
Базовая форма — cp [ОПЦИИ] ИСТОЧНИК НАЗНАЧЕНИЕ. Если назначение — существующий каталог, исходное имя обычно добавляется к нему. Для копирования дерева требуется рекурсивный режим; сохранение всех метаданных — отдельная задача.
cp notes/brief.txt notes/brief-copy.txt
cat notes/brief-copy.txtПроверка: Копия содержит ту же памятку; исходный brief.txt сохраняется.
Опции и варианты записи
Таблица описывает реальную команду. Поддержка в виртуальной среде перечислена отдельно в конце материала.
| Запись | Смысл |
|---|---|
| -R | Рекурсивная копия каталога. |
| -i | Запрос перед заменой существующего назначения в интерактивной работе. |
| -a | Archive mode GNU cp: рекурсивность и сохранение свойств по правилам реализации. |
| -- | Отделить опции от файловых имён. |
Вывод, ошибки и статус
Обычный успешный cp не печатает список действий и возвращает 0. Ошибки чтения и записи идут в stderr; после неудачи может остаться частичная копия. На большом наборе один итоговый код не заменяет проверки требуемых объектов.
На что обратить внимание
cp может перезаписать существующий файл назначения. Перед реальным действием проверьте оба пути и сохраните прежний результат, если он нужен. Копирование ссылок, sparse-файлов, ACL и атрибутов зависит от опций и возможностей назначения.
Реальная система и учебная модель
Тренажёр поддерживает один источник, одно назначение и -r/-R. Виртуальная копия переносит доступные метаданные модели; слияние существующих деревьев, symlink, -a и диалог -i не реализованы. После случайной замены на реальной системе возврат требует сохранённой копии, а не обратного cp из уже повреждённого файла.
Технические источники
Использованы для проверки поведения. Объяснения и учебные сценарии созданы для проекта.
- GNU Coreutils — документация утилит
Проверка текста: 2026-09-06. Нативное исполнение на всей матрице дистрибутивов ещё не подтверждено.
Основные понятия общие для Linux. Состав утилит, версии и системные настройки зависят от окружения.
От материала к практике
Выберите следующую тему в каталоге Linux или проверьте знакомые команды в учебном терминале.