Advanced Copy - Visar framsteg vid kopiering av filer i Linux


Advanced-Copy är ett kraftfullt kommandoradsprogram som är väldigt likt, men en lite modifierad version av det ursprungliga cp-kommandot och mv-verktygen.

Den här modifierade versionen av cp-kommandot lägger till en förloppsindikator tillsammans med den totala tiden det tar att slutföra när stora filer kopieras från en plats till en annan.

Denna extra funktion är mycket användbar, speciellt vid kopiering av stora filer, och detta ger användaren en uppfattning om statusen för kopieringsprocessen och hur lång tid det tar att slutföra.

Installera Advanced-Copy Command i Linux

Det enda sättet att installera verktyget Advanced-Copy i Linux-system är genom att bygga från källor med hjälp av följande enkla curl-kommando, som laddar ner, korrigerar, kompilerar coreutils och genererar filerna: ./advcpmv/advcp och ./advcpmv/advmv.

# curl https://raw.githubusercontent.com/jarun/advcpmv/master/install.sh --create-dirs -o ./advcpmv/install.sh && (cd advcpmv && sh install.sh)

Du kan få följande fel under installationsprocessen.

checking whether mknod can create fifo without root privileges... configure: error: in `/root/advcpmv/coreutils-9.1':
configure: error: you should not run configure as root (set FORCE_UNSAFE_CONFIGURE=1 in environment to bypass this check)
See `config.log' for more details

Kör följande kommando på terminalen för att åtgärda det felet och kör curl-kommandot igen.

# export FORCE_UNSAFE_CONFIGURE=1
# curl https://raw.githubusercontent.com/jarun/advcpmv/master/install.sh --create-dirs -o ./advcpmv/install.sh && (cd advcpmv && sh install.sh)

När installationen är klar skapas två nya kommandon under ./advcpmv/advcp och ./advcpmv/advmv. Du måste ersätta dina ursprungliga cp- och mv-kommandon med dessa två nya kommandon för att få fram förloppsindikatorn medan du kopierar filer.

# mv ./advcpmv/advcp /usr/local/bin/cp
# mv ./advcpmv/advmv /usr/local/bin/mv

Obs: Om du inte vill kopiera dessa kommandon under vanliga systemsökvägar kan du fortfarande köra dem från källkatalogen som ./advcpmv/advcp och ./advcpmv/advmv eller skapa nya kommandon som visas.

# mv ./advcpmv/advcp /usr/local/bin/cpg
# mv ./advcpmv/advmv /usr/local/bin/mvg

Visa förloppsindikator medan du kopierar filer och kataloger

Om du vill att förloppsindikatorn ska visas hela tiden när du kopierar filer och kataloger, måste du lägga till följande rader i din ~/.bashrc-fil.

# echo alias cp '/usr/local/bin/advcp -g' >> ~/.bashrc
# echo alias mv '/usr/local/bin/advmv -g' >> ~/.bashrc

Du måste logga ut och logga in igen för att få detta att fungera korrekt.

Hur man använder Advanced-Copy Command i Linux

Kommandot är detsamma, den enda ändringen är att lägga till alternativet \-g eller \–progress-bar med kommandot cp. Alternativet -R är för att kopiera kataloger rekursivt.

Här är exempel på skärmdumpar av en kopieringsprocess med det avancerade kopieringskommandot.

# cp -gR ubuntu-20.04.3-desktop-amd64.iso /home/tecmint/
OR
# cp -R --progress-bar ubuntu-20.04.3-desktop-amd64.iso /home/tecmint/

Här är ett exempel på kommandot 'mv' med en skärmdump.

# mv --progress-bar Songs/ /data/
OR
# mv -g Songs/ /data/

Kom ihåg att ursprungliga kommandon inte skrivs över om du någonsin behöver använda dem eller om du inte är nöjd med den nya förloppsindikatorn och vill återgå till de ursprungliga cp- och mv-kommandona. Du kan ringa dem via /usr/bin/cp eller /usr/bin/mv.

Jag imponerade verkligen med den här nya förloppsindikatorn, åtminstone skulle jag veta lite information om kopieringsoperationstid och exakt vad som händer.

Du kanske också gillar:

  • Hur man kopierar filer och kataloger i Linux [14 cp kommandoexempel]
  • Hur man övervakar framstegen för (Kopiera/Säkerhetskopiera/komprimera) data med pv-kommandot

Sammantaget kan jag säga att det är ett riktigt bra verktyg att ha i fickan, speciellt när du spenderar mycket tid på att kopiera och flytta filer genom kommandoraden.