Esiste un modo per visualizzare una barra di avanzamento durante la copia dal server al locale (o viceversa) utilizzando scp
?
Esiste un modo per visualizzare una barra di avanzamento durante la copia dal server al locale (o viceversa) utilizzando scp
?
Risposte:
Non penso che questo possa essere fatto scp
. L'ultima volta che ho avuto bisogno di qualcosa del genere, ad esempio i progressi mostrati, ho usato rsync
invece. Mostra i progressi in modo simile a una barra. Guarda se va bene per te.
Dovrai usare l' --progress
opzione di rsync
. Puoi usare il seguente comando:
rsync -r -v --progress -e ssh user@remote-system:/address/to/remote/file /home/user/
2741851 0% 700.39kB/s 0:17:21
e nessuna barra di avanzamento grafica (ciò che penso che l'OP voglia).
-e ssh user@remote-system:
per una copia locale e man rsync
spiegare le molte, molte opzioni)
rsync -avz --progress -e 'ssh -p 1223' root@google.com:/foobar.txt ./my-local-copy.txt
rsync
mentre devi solo aggiungere -v
ascp
L' -v
interruttore funziona bene.
Esempio:
5% 9232 KB 357,5 KB / s 07:48 ETA
-3
.
man scp
: " -3
Le copie tra due host remoti vengono trasferite attraverso l'host locale. Senza questa opzione i dati vengono copiati direttamente tra i due host remoti. Nota che questa opzione disabilita l'indicatore di avanzamento. "
Non so come farlo in una riga di comando. Sono sicuro che è possibile, ma esiste un metodo grafico per farlo.
Nautilus (il browser di file predefinito in Ubuntu) può montare server ssh / sftp. Dopo ciò si comportano come un filesystem locale e puoi copiare i file come faresti normalmente. E ottieni la solita barra di avanzamento che avresti con una copia normale.
Cerca nel File
menuConnect to server...
A partire dal 2018, i progressi e l'ETA sono mostrati per impostazione predefinita e potrebbero essere disabilitati da -q