Krótka odpowiedź
Za pomocą wiersza polecenia (terminal):
cp -r -n ~/Desktop/src/* ~/Desktop/destination/
Powyższe polecenie dodaje src
zawartość i podkatalogi do destination
bez zastępowania treści już znajdującej się w destination
.
Długa odpowiedź
Nawet jeśli treść się pokrywa, nadal możesz cp
to zrobić. Załóżmy, że masz dwa foldery na pulpicie: the src
i destination
foldery i chcesz połączyć src
się destination
:
Aby scalić, po prostu wykonaj:
cp -r ~/Desktop/src/* ~/Desktop/destination/
UWAGA Gdy użyjesz tego, treść w src
zastępuje zawartość w destination
folderze i dodaje dodatkowe rzeczy, których brakuje w destination
. To nie powinno mieć znaczenia, czy chcesz po prostu dodać brakujące pliki z src
pod destination
.
TAKŻE nie ma znaczenia, ile jest tam podkatalogów, po prostu przejdzie rekursywnie przez każdy folder i nadpisze zawartość i doda rzeczy, których brakuje w destination
folderze.
ALE
PITFALL Jeśli masz ogromne pliki (np. Pliki wideo), nie chcesz czekać, aż wszystko zostanie nadpisane, powoduje to duże obciążenie.
ROZWIĄZANIE PITFALL : Zamiast tego możesz użyć -n
flagi, aby pominąć nadpisywanie:
cp -r -n ~/Desktop/src/* ~/Desktop/destination/
Oto opis -n
flagi ze strony man:
man cp
-n Do not overwrite an existing file. (The -n option overrides any
previous -f or -i options.)
Dalsza lektura
- /programming/5088332/overhead-of-a-flag-in-cp-command