Hur att Övervaka Utvecklingen av Linux-Kommandon (Med pv och framsteg)

0
388
Fatmawati Achmad Zaenuri/Shutterstock.kom

I stället för att famla i blindo, använda Linux pv och framsteg kommandon för att spåra ett kommando framsteg. Dessa verktyg kommer att ge dig barer framsteg för kommandon som normalt inte har någon. Du kommer att se en beräknad tid tills slutförande också.

Om du är på en lång flygning på ett flygplan utan video skärmar i stolsrygg, det är inte lätt att veta hur långt genom din resa du är. Du vet när du tog fart. Du vet hur lång tid resan kommer att ta. Men hur vet du om du är på rätt spår, på tid, eller försenade? Om du inte vill titta på den under flygning film kan du oftast byta din video skärm för att visa en karta med positionen av ditt flygplan på det. Du kommer också att få lite statistik, såsom en förväntad ankomsttid (ETA), vilket är bra.

Starta ett kommando från terminal-fönstret kan ibland kännas som en lång flygresa utan en tv-skärm. Du har inget att ge någon indikation om allt är bra eller om processen har hängt, inte heller hur nära att fullborda det är. En blinkande markör är inte mycket informativ.

Pv och framsteg kommandon ger dig lite statistik och en liten visuell feedback. Du kan se hur nära den processen är klar. Det innebär att du får ett ETA för din processer som körs. Jämfört med att stirra på en markör, som vinner fällt.

Installera pv

Du måste installera pv.

För att installera pv på Ubuntu använder detta kommando:

sudo apt-get install pv

För att installera pv på Fedora använder detta kommando:

sudo dnf installera pv

För att installera pv på Manjaro använda detta kommando:

sudo pacman -Syu pv

Med hjälp av pv

pv står för rör-viewer. Rörledningar måste vara inblandade i kommandot någonstans. Här är ett exempel där vi rörsystem en ISO-avbildning genom zip för att göra en komprimerad zip-fil av ISO.

För att bromsa kommandon ner tillräckligt för att en skärmdump kan vidtas några av filerna i de exempel som används för denna artikel har lagrats på en gammal, långsam, externa USB-kallas SILVERXHD.

pv /media/dave/SILVERXHD/gparted-live-1.0.0-1-amd64.iso | zip > > gparted.zip

Den information pv ger oss kan ses i den nedre raden i displayen.

Från vänster till höger, den information som visas är:

  • De uppgifter som överförs så långt.
  • Den tid som förflutit fö långt.
  • Data transfer rate (throughput).
  • En förloppsindikator och ett procentuell färdig figur.
  • Den uppskattade tid kvar innan den är färdig (ETA).

Att kopiera en Fil med pv

För att kopiera en fil med utgång från pv, använd detta kommando:

pv /media/dave/SILVERXHD/gparted-live-1.0.0-1-amd64.iso > gparted.iso

Vi får en lägesrapport som den fil som kopieras.

Kopiera Flera Filer med pv

För att kopiera flera filer och mappar med pv behöver vi använda ett litet trick. Vi använder tjära för att flytta filer till oss.

tar-c-hjälp-filer/ | pv | tar-x -C-Dokument/

Tar-c-hjälp-filer/ del av kommandot instruerar tjära för att skapa (-c) ett arkiv av filer hjälp-filer. Detta leds genom pv så att vi får en visning av den utvecklingen. Det är sedan förs tillbaka till tjära för den sista delen av kommandot. Arkivet är extraherade (-x) och katalog ändras (-C) Handlingar som före extraktion.

Så, filer och mappar som finns i hjälp-filerna kopieras till mappen Dokument, med en förloppsindikator visas.

Produktionen är något annorlunda den här gången.

Vi vill inte få en ETA. Förloppsindikatorn visar nu ett rörligt indikator. Det visar att processen är aktiv, men det växer inte från vänster till höger som en traditionell förloppsindikator. pv är begränsat till att visa den information som man kan utvinna från den process som är stillsam.

Med pv och tjära för att Skapa ett Arkiv

Kopiera filer med pv och tar inte lämna oss med en arkivfil. En slags “virtuell” arkivet skapas av tjära, som matas rakt tillbaka in tjära för att extrahera filerna. Om vårt mål är att kopiera filer, det är uppnått. Men vad händer om vi vill skapa en arkivfil?

Vi kan fortfarande använda tjära för att skapa en arkivfil och få en lägesrapport från pv. De alternativ som används med tjära är -c (skapa arkiv), -z (komprimeras med gzip) och f (filnamn i arkivet).

Observera att vi använder – som filnamn, som orsakar tjära för att använda stdout, och att skriva sin utdata till terminalen fönster. Vi ser inte att produktionen eftersom det skickas igenom pv.

Det faktiska namnet på arkivet kommer att få det filnamn som vi rör produktionen från pv till. I detta fall är det “hjälp-filer.tgz”.

tjära -czf – ./hjälp-filer/ | pv – > hjälp-filer.tgz

Vi får samma framsteg indikatorer som innan, och arkivera filen är skapad för oss.

RELATERAT: Hur för att Komprimera och Extrahera Filer med Hjälp tar Kommandot i Linux

Pv-Displayen Alternativ

Det finns ett antal alternativ som du kan använda med pv att ändra på detaljer i sin rapport.

Om du använder något av dessa alternativ, alla andra alternativ är avstängd. Så om du vill ha tre av visningsalternativ i bruk, då behöver du ange de tre alternativen.

Med hjälp av pv utan några alternativ är samma som att använda -pterb alternativ.

  • -p: visar den procentuella komplett. Detta är den förloppsindikator och de många procent som har slutförts figur.
  • -t: visa förfluten tid.
  • -e: visa ETA.
  • -r: visar den hastighet för dataöverföring.
  • -b: visa byte count (data överförs så långt).
  • -n: visar den procentandel som ett heltal. Detta skriver ut den procentuella klar som en integer figur, med varje ny uppdatering på en ny rad.

Låt oss upprepa det senaste kommandot och passera -p (procent som har slutförts) alternativ till pv.

tjära -czf – ./hjälp-filer/ | pv – p – > hjälp-filer.tgz

Detta stänger av alla de andra alternativen för visning. pv ger många procent som har slutförts enda inslag.

Eftersom pv inte får en procentuell färdig bild från tjära, progress bar ersätts med en rörlig indikator. Det finns ingen procentsats figur.

Med hjälp av pv Med wc

Vi kan använda pv skicka en text-fil (eller filer) i wc. wc kommer räkna sedan vagnretur, tecken, ord och pv kommer att ge oss en lägesrapport.

Här är vi rörsystem alla “.sidan” filer hjälp-filer-katalog till wc.

När wc är klar kan vi se vår räkning av vagnretur (linjer), tecken och ord från alla “.sidan” filer hjälp-filer.

Installera framsteg Kommandot

De framsteg som har kommandot ger samma typ av användbar information som pv, men det fungerar också med en specifik uppsättning av Linux-kommandon.

För att installera framsteg i Ubuntu, att använda detta kommando:

sudo apt-get install framsteg

För att installera framsteg i Fedora använder detta kommando:

sudo dnf installera framsteg

För att installera framsteg i Manjaro, använd detta kommando:

sudo pacman -Syu framsteg

Kommandon framsteg Arbetar Med

Skriva framsteg i ett terminalfönster och tryck på Enter för att ge dig en lista över de kommandon som framsteg arbetar med.

framsteg

Med Framsteg Med Rör

Det finns två tekniker som vi kan använda för att övervaka kommandon med framsteg. Den första är att använda rör.

Tar kommandot i listan över stödda kommandon som kan övervaka framsteg, så låt oss använda tjära.

De alternativ vi kommer att använda är den standard -c (skapa arkiv), -z (komprimeras med gzip) och f (filnamn) alternativ. Vi kommer att skapa ett komprimerat arkiv av allt i hjälp-filer, och arkivet kommer att ha namnet “hjälp.tgz”.

Vi är rören som i utvecklingen och använda m (monitor) alternativ så att utvecklingen håller rapportering om processen tills den har slutförts.

tjära -czf hjälp.tgz ./hjälp-filer/ | progress -m

Terminal-fönstret visar hur tar kommandot eftersom det skapar arkivet.

Som varje fil är bearbetade, det är noterat, med följande information:

  • Process-ID.
  • Processen namn.
  • Procent som har slutförts.
  • Uppgifter som behandlas och den totala storleken på filen.
  • Data rate (throughput).
  • Återstående tid (ETA).

Du kanske blir förvånad över att se en andra uppsättning data visas. Denna första uppsättning data är för tjära. Den andra är för gzip. tjära samtal gzip för att utföra komprimering. Eftersom gzip är med i listan över stödda kommandon, lägesrapporter om det.

Med Framsteg Kontinuerligt Övervaka Läge

Du kan använda framsteg i realtid kontinuerligt övervaka läge med hjälp av den -M (monitor) alternativ.

Skriv följande kommando i ett terminalfönster:

framsteg -M

framsteg kommer rapporten att det inte finns några kommandon igång för att det ska övervaka. Men du är inte återvänt till kommandoraden. framsteg väntar tills ett kommando som det kan monitorn börjar. Det kommer då automatiskt att börja rapportera om det.

I en annan terminal-fönstret skriv ett kommando som finns i listan över kommandon som kan övervaka framsteg.

Vi kommer att använda cat. Kommandon som är över alltför snabbt registreras inte med framsteg, så vi kommer att lista innehållet i en mycket lång text fil.

katt ord.sida

I terminal-fönstret med framsteg i det, kommer du att se statistik för den katt kommando som exekveras och arbetar mot tillägg.

När katten slutar notering filen framsteg återgår till vänteläge.

Varje gång ett av de kommandon som man kan rapportera om utför en stor uppgift, framsteg kommer automatiskt att övervaka och rapportera om det.

Det är ganska snyggt.

100% Klar

Ta bort gissningsleken undrar hur länge kör kommandot gör, och ta en paus från överväger markören med pv och framsteg .

 

LÄS NÄSTA

  • “Hur att Göra Din TV-Skärm Art (eller Familjen Foton)
  • “Hur att Sparka Folk Utanför Din Wi-Fi-Nätverk
  • “Vad Är Omvänd SSH-Tunnel? (och Hur man Använder Det)
  • “Var att Placera Din Router för Bästa Wi-Fi-Hastigheter
  • “Kan Pacemaker (och Andra Medicinska Enheter) Verkligen Bli Hackad?