Jak skopiować plik w systemie Linux tylko wtedy, gdy kopiowany plik jest nowszy niż wersja docelowa?
Jeśli plik w miejscu docelowym jest nowszy, chcę, aby kopia pliku nie była kontynuowana.
Użycie opcji aktualizacji (-u) z cp powinno to zrobić za Ciebie.
http://beginnerlinuxtutorial.com/help-tutorial/basic-linux-commands/cp-linux-copy-command/
-u
opcji. Zamiast tego możesz użyćrsync --update
.Użyj rsync
źródło
-r
oznacza operację rekurencyjną w podkatalogach i-u
utrzymywanie nowszych plików w miejscu docelowym (= aktualizacja).--progress
pokazuje informacje o postępie podczas pracy.Nie mówisz, jakiej powłoki używasz, więc założę
ksh
:źródło
yes|cp -ruv /from/* /to/.
tak - odpowiedz tak na wszystkie pytania.
r - Rekurencyjny
u - aktualizacja
v - Postęp
działa jak xargs .
Nie wiem jak wyjaśnić naukowo.
Jak zmusić CP do zastąpienia bez potwierdzenia
źródło