Czy istnieje sposób wyświetlenia paska postępu podczas kopiowania z serwera na lokalny (lub odwrotnie) przy użyciu scp
?
Czy istnieje sposób wyświetlenia paska postępu podczas kopiowania z serwera na lokalny (lub odwrotnie) przy użyciu scp
?
Odpowiedzi:
Nie sądzę, że da się to zrobić scp
. Ostatnim razem potrzebowałem czegoś takiego, tj. Pokazanego postępu, rsync
zamiast tego użyłem . Pokazuje postęp w sposób podobny do paska. Sprawdź, czy to działa dla Ciebie.
Musisz użyć --progress
opcji rsync
. Możesz użyć następującego polecenia:
rsync -r -v --progress -e ssh user@remote-system:/address/to/remote/file /home/user/
2741851 0% 700.39kB/s 0:17:21
i nie ma graficznego paska postępu (czego, jak sądzę, chce OP).
-e ssh user@remote-system:
na lokalną kopię i man rsync
objaśnij wiele, wiele opcji)
rsync -avz --progress -e 'ssh -p 1223' root@google.com:/foobar.txt ./my-local-copy.txt
rsync
póki trzeba tylko dodać -v
doscp
-v
Przełącznik działa prawidłowo.
Przykład:
5% 9232 KB 357,5 KB / s 07:48 ETA
-3
.
man scp
: „ -3
Kopie między dwoma hostami zdalnymi są przesyłane przez hosta lokalnego. Bez tej opcji dane są kopiowane bezpośrednio między dwoma hostami zdalnymi. Pamiętaj, że ta opcja wyłącza miernik postępu. ”
Nie wiem, jak to zrobić w wierszu polecenia. Jestem pewien, że jest to możliwe, ale istnieje graficzna metoda wykonania tego.
Nautilus (domyślna przeglądarka plików w Ubuntu) może montować serwery ssh / sftp. Potem działają jak lokalny system plików i możesz kopiować pliki tak, jak zwykle. I dostajesz zwykły pasek postępu, który zrobiłbyś z normalną kopią.
Poszukaj w File
menuConnect to server...
Począwszy od 2018 r. Postęp i ETA są domyślnie wyświetlane i mogą zostać wyłączone przez -q