Próbuję skopiować zawartość folderu do innego folderu w innym katalogu za pomocą terminala.
Czy ktoś mógłby mi podać przykład składni wiersza poleceń wymaganej do osiągnięcia tego?
command-line
cp
pandisvezia
źródło
źródło
cp -a ~/Downloads/textext/. ~/.config/inkscape/extensions/
-p
flagę, aby zachować uprawnienia do plików i znaczniki czasu.cp -ap /var/www/original.com/images/. /var/www/new.com/images/
-a
już sugeruje--preserve=all
, że jest szerszy niż-p = --preserve=mode,ownership,timestamps
.scp
służy do kopiowania przez sieć (poprzezssh
) i szyfruje tylko kanał komunikacyjny, a nie pliki w docelowym systemie plików.Alternatywą jest rsync
Zalety rsync to:
Po początkowej synchronizacji skopiuje tylko te pliki, które uległy zmianie.
Możesz go używać przez sieć, co jest wygodne dla plików w $ HOME, zwłaszcza plików konfiguracyjnych.
źródło
rsync -r source/ destination
powinno wystarczyć, nie?rync source/ dest
ludzie będą musieli dostosować polecenie rsync, aby działało tak, jak chcą.Powiedzmy, że masz folder o nazwie Folder1 w twojej
~
wewnątrz folder1 jest 1 plik o nazwie plik1 i 2 foldery o nazwie sub1 i sub2 każdy z innych plików i folderów wewnątrz nich.Aby skopiować całą zawartość
~/folder1
do~/new_folder1
użyłbyśnew_folder1
zawierałby wtedy wszystkie pliki i foldery zfolder1
.cp
to polecenie kopiowania za pomocą terminala,-r
powoduje, że rekurencyjnie (tak więc bieżący katalog + dalsze katalogi w bieżącym)~/folder1
to folder źródłowy,~/new_folder1
to folder docelowy dla plików / folderów wewnątrz źródła.źródło
~/new_folder1/folder1
zamiast kopiować zawartość.cp -r ~/folder1/* ~/new_folder1
[root@ home]# mkdir food [root@ home]# cd food/ [root@ food]# mkdir .fruit [root@ food]# mkdir veggies [root@ food]# touch veggies/carrots [root@ food]# touch .fruit/apple [root@ food]# ls * carrots [root@ food]#
Sprawdź ten http://www.cyberciti.biz/faq/copy-folder-linux-command-line/, aby uzyskać więcej informacji na temat kopiowania folderu. Mam nadzieję że to pomoże.
cp
to komenda Linux do kopiowania plików i katalogów. Składnia jest następująca:W tym przykładzie skopiuj
/home/vivek/letters
folder i wszystkie jego pliki do/usb/backup
katalogu:Gdzie,
-a
: Zachowaj określone atrybuty, takie jak katalog tryb pliku, własność, znaczniki czasu, jeśli to możliwe, dodatkowe atrybuty: kontekst, łącza, xattr, wszystkie.-v
: Wyjaśnij, co się dzieje.-r
: Kopiuj katalogi rekurencyjnie. PrzykładSkopiuj folder o nazwie / tmp / conf do / tmp / backup:
źródło
Prosty przykład.
Skopiuj katalog dir_1 i jego zawartość (_files_) do katalogu dir_2 :
Skopiuj tylko zawartość (_plików_) katalogu_1 do katalogu katalog_2 :
_files_
jest symbolem zastępczym dla rzeczywistych plików znajdujących się w katalogu.źródło
Jeśli są dwa foldery: (z uprawnieniem do zapisu)
Jeśli znajdujesz się w folderze PORTAL, w którym chcesz skopiować całą zawartość innego folderu, powiedz DANE na tym samym poziomie, to zrobisz
vimal@vimal-D3H:/var/www/html/PORTAL$ cp -a ../DATA/. .
Musisz zauważyć 2 kropki. Ostatnia kropka mówi skopiuj tutaj w obecnym folderze
i
jeden następujący / DATA /. mówi, że wszystkie ZAWARTOŚCI w folderze DANYCH do skopiowania, a nie sam folder DANYCH.
Jeśli usuniesz to końcowe „”. z / DATA /
wtedy cały folder DANYCH zostanie skopiowany do PORTALU (z którego kopiujesz).
źródło