Как скопировать скрытые файлы в Linux
В Linux скрытыми считаются файлы и каталоги, имя которых начинается с точки. Таких объектов много в домашнем каталоге и в папках с сайтами: конфигурации, служебные файлы, кеши. Иногда нужно перенести их вместе с остальными данными — и тут есть нюансы.
Один файл с точкой в имени копируется как обычно. Проблемы начинаются, когда хочется «забрать всё» шаблоном *: он по умолчанию не видит имена, начинающиеся с точкой. Это сделано специально, чтобы не задеть служебные записи . и .. и не устроить нежелательную рекурсию при копировании.
Рассмотрим основные способы копирования
Вариант №1 — ссылка на «всё содержимое» через /.
Эта команда скопирует в целевую папку и обычные, и скрытые элементы исходного каталога.
cp -r app/. backup
Ключ -r нужен для рекурсивного копирования директорий, а суффикс /. даёт понять, что речь именно о содержимом app.
Вариант №2 — копирование каталога «как есть» без вложенного уровня
В результате следующей команды backup станет копией app, а не backup/app.
cp -rT app backup
Флаг -T указывает трактовать backup как целевой объект, а не как каталог-назначение для «вложенного» копирования; -r — для работы с папками.
Вариант №3 — если нужны только скрытые файлы
В этом случае можно явно обратиться к шаблону «точечных» имён:
cp app/.* backup
Важно: не добавляйте сюда -r. Шаблон .* включает . и ..; с рекурсией команда попытается уйти на уровень выше по дереву каталогов, что легко обернется дополнительными сложностями.
Эти приёмы закрывают все типичные сценарии: копирование одного файла с точкой, перенос всего содержимого каталога со скрытыми элементами и выборочная отправка только «точечных» файлов. Пользуйтесь тем вариантом, который больше подходит под ваши задачи.
Похожее
Все статьи
Iptables: базовый файрвол на Ubuntu без риска потерять доступ
Iptables — стандартный инструмент управления файрволом в Linux, который фильтрует трафик по правилам в цепочках INPUT, OUTPUT и FORWARD. Главная опасность при настройке на удалённом VPS — заблокировать собственный SSH-доступ неправильным порядком правил. Эта статья построена так, чтобы этого не…
Nginx как reverse proxy: настройка и конфигурация
Reverse proxy на Nginx — это когда Nginx принимает внешние запросы на порту 80 или 443 и перенаправляет их на приложение которое работает на внутреннем порту (3000, 8000, 8080). Снаружи видно только Nginx, само приложение сети не касается. Три строки…