Se stai copiando o spostando file o cartelle più grandi in Linux, potresti voler conoscere lo stato di avanzamento del lavoro. I comandi predefiniti di copia (cp) e sposta (mv) non sono dotati di una barra di avanzamento. Quindi durante la copia o lo spostamento di qualsiasi file, vedrai solo i comandi sospesi fino al completamento dell'operazione richiesta. Oggi vedremo il comando di copia avanzata in Linux che sostituirà i comandi predefiniti cp e mv per aggiungere una funzionalità della barra di avanzamento.
Dichiarazione di non responsabilità:il comando Advanced Copy sostituirà i comandi cp e mv esistenti, ma ha ancora tutte le funzionalità dei comandi predefiniti. Per essere più sicuro, dovresti fare un backup di questi comandi.
Passaggio 1: Scarica e compila il comando Copia avanzata. Per farlo, avrai anche bisogno di coreutils.
$ wget http://ftp.gnu.org/gnu/coreutils/coreutils-8.21.tar.xz $ tar xvJf coreutils-8.21.tar.xz $ cd coreutils-8.21/ $ wget http://zwicke.org/web/advcopy/advcpmv-0.5-8.21.patch $ patch -p1 -i advcpmv-0.5-8.21.patch $ ./configure $ make
Nota:Core-Utils è un pacchetto utile per aggiungere funzionalità extra ai file core esistenti su Linux. Ma dovrai stare attento, poiché conterranno binari che potrebbero sostituire i file core di Linux. Sostituisci solo ciò che intendi fare.
Se non sei sicuro di come decomprimere coreutils-8.21.tar.xz. Quindi leggi questa guida per decomprimerlo usando il comando tar.
Passaggio 2: Dopo che il make ha avuto successo, devi copiare e sostituire i comandi "cp" e "mv" nella directory "src".
$ ls -l src/cp $ ls -l src/mv
Passaggio 3: Sostituisci i comandi predefiniti "cp" e "mv" con quelli nuovi.
$ cp src/cp /bin/cp $ cp src/mv /bin/mv
Passaggio 4: Esegui il comando seguente per visualizzare la barra di avanzamento durante la copia o lo spostamento dei file.
$ cp -gR gcc32.tar /tmp/
Nota:l'opzione "R" è ricorsiva e -g mostrerà la barra di avanzamento.
$ mv -g gcc32.tar /tmp/
Puoi impostare un alias (in ~/.bashrc) per far apparire la barra di avanzamento per impostazione predefinita come di seguito,
alias cp='cp -gR' alias mv='mv -g'
Nota:per leggere immediatamente la modifica è necessario eseguire l'origine ~/.bashrc o avrà effetto dalla sessione successiva.
Come installare il comando di copia avanzata da binari statici?
$ wget http://zwicke.org/web/advcopy/advcpmv-0.5-8.21-static.tar.xz $ tar xvJf advcpmv-0.5-8.21-static.tar.xz
Una volta estratti, copia e sostituisci i comandi predefiniti 'cp' e 'mv',
$ cp advcpmv-0.5-8.21-static/cp /usr/local/bin/cp $ cp advcpmv-0.5-8.21-static/mv /usr/local/bin/mv
I comandi di copia avanzati sono davvero utili e torneranno utili mentre copi o sposti file di grandi dimensioni.