Próbuję skopiować zawartość folderu do innego folderu w innym katalogu za pomocą terminala.
Czy ktoś mógłby dostarczyć mi przykład składni wiersza poleceń wymaganej do osiągnięcia tego celu?
Możesz skopiować zawartość folderu /source
do innego istniejącego folderu /dest
za pomocą komendy
cp -a /source/. /dest/
Opcja -a
jest ulepszoną opcją rekursywną, która zachowuje wszystkie atrybuty plików, a także zachowuje symlinki.
Znak .
na końcu ścieżki źródłowej jest specyficzną składnią cp
, która pozwala na kopiowanie wszystkich plików i folderów, włączając w to te ukryte.
Alternatywą jest rsync
rsync -r source/ destination
Zaletami rsync są:
Po wstępnej synchronizacji, kopiowane są tylko te pliki, które uległy zmianie.
Możesz go używać przez sieć, wygodne dla plików w $HOME, zwłaszcza plików konfiguracyjnych.
Załóżmy, że masz folder o nazwie folder1 w swoim ~
, wewnątrz folder1 jest 1 plik o nazwie file1 i 2 foldery o nazwach sub1 i sub2 każdy z innymi plikami i folderami wewnątrz nich.
Aby skopiować całą zawartość ~/folder1
do ~/new_folder1
użyłbyś
cp -r ~/folder1/. ~/new_folder1
new_folder1
zawierałby wtedy wszystkie pliki i foldery z folder1
.
cp
jest komendą do kopiowania przy użyciu terminala, -r
robi to rekurencyjnie (więc, bieżący katalog + dalsze katalogi wewnątrz bieżącego) ~/folder1
jest folderem pochodzenia, ~/new_folder1
jest folderem docelowym dla plików/folderów wewnątrz pochodzenia.