Rozwijam coś na laptopie i scp'uję pliki na komputer o wysokiej wydajności (serwer bez monitora). Z lenistwa robię to teraz (na laptopie):
scp -r ~/project/* server:~/project/
Jednak niektóre pliki w katalogu projektu to niektóre pliki dziennika i pliki wyjściowe, których nie muszę wysyłać, co może czasem być koncertem. To, co chciałbym, to ładne czyste polecenie, które zasadniczo robi to samo (przesyła wszystkie pliki w projekcie i jego podkatalogach), ale wysyła tylko pliki poniżej określonego progu wielkości pliku, takiego jak 100 MB. Mam tylko niewielkie doświadczenie z bashiem, a wcale nie z regexpem, więc tak naprawdę nie mam pojęcia, jak to zrobić bez jakiejś skomplikowanej metody, takiej jak importowanie sysa do Pythona i korzystanie z wielu ifs i porównań.
źródło
rsync
jest podobnascp
, ale bardziej wydajna, ponieważ przenosi zmiany tylko w przypadku modyfikacji pliku.rsync -rv --max-size SOURCE DESTINATION
. Nie czytałem poprawnie, a ten coud ma bardzo złe konsekwencje.