Migruję mój katalog domowy ze starego systemu do nowego, a utworzony przeze mnie archiwum zawiera wszystko, w tym ukryte pliki, takie jak .bashrc. Jednak gdy przenoszę zawartość rozpakowanego archiwum (które znajdują się w / tmp) do mojego nowego katalogu domowego, ukryte pliki nie kopiują się ( mv /tmp/home/rcook/* /home/rcook/
). Jak mogę zmusić mv do ich przeniesienia?
Właściwie myślę, że problemem nie jest mv, ale globbing bash. Jeśli to zrobię:
mkdir a
mkdir b
touch a/.foo
touch a/bar
mv a/* b/
ls -a a/ b/
Widzę to:
a/:
. .. .foo
b/:
. .. bar
a/.foo
nie poruszył się. Jak mogę uzyskać * symbol wieloznaczny, aby znaleźć ukryte pliki?
Tak, przypuszczam, że mógłbym zdekompresować plik archiwum bezpośrednio do mojego katalogu domowego, ale plik archiwum dekompresuje się do home/rcook/...
i chcę mieć pewność, że zastąpię nowy plik .bashrc
itp. Starymi, dostosowanymi wersjami i wiem, jak znaleźć i przenieść ukryte pliki jest cenną umiejętnością. Propozycje?
Niektóre odpowiedzi sugerują zrobienie czegoś takiego mv src/.* dest/
. Jednak wypróbowałem to w moich katalogach testowych i dostałem błędy. Począwszy od:
rcook$ ls -a a/ b/
a/:
. .. bar .foo
b/:
. ..
rcook$ mv a/.* b/
mv: cannot move 'a/.' to 'b/.': Device or resource busy
mv: cannot remove 'a/..': Is a directory
rcook$ ls -a a/ b/
a/:
. .. bar
b/:
. .. .foo
Co ja robię źle?