Я переношу свой домашний каталог из старой системы в новую, и созданный мной архив содержит все, включая скрытые файлы, такие как .bashrc. Однако, когда я перемещаю содержимое распакованного архива (который находится в /tmp) в мой новый домашний каталог, скрытые файлы не копируются (mv /tmp/home/rcook/* /home/rcook/
). Как я могу заставить mv переместить их?
На самом деле, я думаю, что проблема не в mv, а в глобализации bash. Если я сделаю это:
mkdir amkdir btouch a/.footouch a/barmv a/* b/ls -a a/ b/
Я вижу это:
a/:. .. .foob/:. .. bar
a/.foo
не двигался. Итак, как я могу получить подстановочный знак * для поиска скрытых файлов?
Да, я полагаю, я мог бы распаковать архив непосредственно в свой домашний каталог, но архив распаковывается в home/rcook/...
, и я хочу быть уверен, что перезапишу новый .bashrc
и т.д. со старыми, настроенными версиями и знанием того, как находить и перемещать скрытые файлы, это полезный навык. Предложения?
Некоторые ответы предлагают сделать что-то вроде mv src/.* dest/
. Однако я попробовал это в своих тестовых каталогах и получил ошибки. Начиная с:
rcook$ ls -a a/ b/a/:. .. bar .foob/:. ..rcook$ mv a/.* b/mv: cannot move 'a/.' to 'b/.': Device or resource busymv: cannot remove 'a/..': Is a directoryrcook$ ls -a a/ b/a/:. .. barb/:. .. .foo
Что я делаю не так?