Hur man Använder svansen Kommandot i Linux

0
321
Fatmawati Achmad Zaenuri/Shutterstock

Linux-kommandot tail visar data från slutet av en fil. Det kan även visa uppdateringar att läggas till i en fil i realtid. Vi visar dig hur man använder det.

Gjorde systemd Döda svans?

Svansen kommando visar data från slutet av en fil. Oftast, nya data läggs till i slutet av en fil så att kommandot tail är ett snabbt och enkelt sätt att se de senaste tillskotten till en fil. Det kan också övervaka en fil och visa varje ny text tillträde till file när de uppstår. Detta gör det till ett utmärkt verktyg för att övervaka loggfiler.

Många moderna Linux-distributioner har antagit systemd system och service manager. Detta är den första processen utförs, det har process-ID 1, och det är det som är överordnat alla andra processer. Denna roll används för att hanteras av den äldre init system.

Tillsammans med denna förändring kom ett nytt format för systemet loggfiler. Inte längre skapas i klartext, under systemd att de registreras i ett binärt format. För att läsa dessa filer, måste du använda journactl verktyg. Svansen kommandot fungerar med vanlig text format. Det gör inte läsa binära filer. Så betyder detta svansen kommando är en lösning på jakt efter ett problem? Är det fortfarande har något att erbjuda?

Det finns mer att svansen kommando än att visa uppdateringar i realtid. Och för den delen, det finns fortfarande massor av logg-filer som inte är system som skapats och fortfarande skapas som filer med oformaterad text. Till exempel loggfiler som skapas av program har inte bytt format.

Med svans

Skicka namnet på en fil till svans, och det kommer visa dig de senaste tio rader från filen. Exempel filer vi använder innehåller listor sorterade ord. Varje linje är numrerade, så det bör vara enkelt att följa exempel och se vilken effekt de olika alternativen har.

svans word-list.txt

För att se olika antal linjer, använd -n (antal linjer) alternativ:

tail-n 15 word-list.txt

Egentligen kan du göra sig av med “-n”, och bara använda ett bindestreck “-” och nummer. Se till att det inte finns några blanksteg mellan dem. Tekniskt sett är detta en föråldrad kommandot form, men det är fortfarande i man-sidan, och det fungerar fortfarande.

svans -12 word-list.txt

Med hjälp av svansen Med Flera Filer

Du kan ha svans arbeta med flera filer på en gång. Bara passera filnamn på kommandoraden:

tail-n 4 list-1.txt list-2.txt list-3.txt

En liten rubrik som visas för varje fil, så att du vet vilken fil de rader som hör till.

Visa Rader från Början av en Fil

Den + (räkna från början) modifierare som gör svans rader från början av filen, börjar på en viss linje nummer. Om din fil är mycket lång, och du väljer en linje nära till början av filen, kommer du att få en hel del av produktionen som skickas till terminal-fönstret. Om så är fallet, är det vettigt att röret utdata från svans till mindre.

svans +440 list-1.txt

Du kan bläddra genom texten på ett kontrollerat sätt.

Eftersom det råkar vara 20,445 rader i filen, detta kommando är det detsamma som att använda “-6” alternativ:

svans +20440 list-1.txt

Med hjälp av Byte Med svans

Du kan berätta för svansen att använda offset i byte i stället för linjer genom att använda-c (i bytes) som alternativ. Detta kan vara användbart om du har en fil med text som har formaterats i vanlig storlek poster. Notera att ett nyradstecken räknas som ett byte. Detta kommando kommer att visa de senaste 93 byte i filen:

tail-f 93 list-2.txt

Du kan kombinera -c (byte) alternativ med + (räkna från början av filen) modifierare, och ange en offset i byte räknat från början av den filen:

svans -c +351053 list-e.txt

Rörledningar I svansen

Tidigare, vi förs ut från svans till mindre . Vi kan också pipe utdata från kommandon i svansen.

För att identifiera de fem filer eller mappar med de äldsta ändring gånger, använd -t sortera efter modifieringstid) alternativ med ls , och rör produktionen i svansen.

ls -tl | svans -5

Huvudet kommando visar en lista med rader av text från början av en fil. Kan vi kombinera detta med svansen för att extrahera en del av filen. Här ska vi använda huvudet kommando för att extrahera de första 200 rader från en fil. Detta är att ledas in i svansen, vilket är extrahera de senaste tio linjer. Detta ger oss rader 191 genom att linje 200. Det är de senaste tio rader för första 200 rader:

head-n 200 list-1.txt | svans -10

Detta kommando listar de fem mest minne-hungrig processer.

ps aux | sortera -nk +4 | -5 svans

Låt oss bryta ner det.

Ps kommando som visar information om processer som körs. De alternativ som används är:

  • ett: att Lista alla processer, inte bara för den aktuella användaren.
  • u: Visa en användarorienterad utgång.
  • x: Lista alla processer, inklusive de som inte kör inne i en TTY.

Den sortens kommando möjliga utdata från ps . De alternativ som vi använder med form är:

  • n: Sortera numeriskt.
  • k +4: Sortera på fjärde kolumnen.

Svansen -5 kommando visar de fem senaste processer från produktionen sorteras. Dessa är de fem mest minne-hungrig processer.

Med hjälp av svansen för att Spåra Filer i realtid

Spårning nya texter som anländer i en fil, vanligtvis en logg-fil—är lätt med svansen. Passera filnamn på kommandoraden och använda växeln-f (follow) alternativ.

tail-f geek-1.logga in

Som varje ny post i logg läggs till i loggfilen, svans uppdateringar dess display i terminalfönstret.

Du kan förbättra produktionen så att den endast omfattar linjer som är av särskild betydelse eller intresse. Här, vi använder grep för att endast visa rader som innehåller ordet “genomsnitt”:

tail-f geek-1.logga in | grep genomsnitt

Att följa förändringarna att två eller fler filer, passera filnamn på kommandoraden:

tail-f -n 5 geek-1.logga geek-2.logga in

Varje inlägg taggas med en header som visar vilken fil som texten kom ifrån.

Displayen uppdateras varje gång ett nytt inlägg kommer i ett följts fil. För att ange uppdatera tid, använd-s (sömn period) alternativ. Här berättar svansen för att vänta ett antal sekunder, fem i detta exempel mellan fil kontroller.

tail-f -s 5-geek-1.logga in

Visserligen kan du inte berätta genom att titta på en skärmdump, men uppdateringarna till fil sker en gång varannan sekund. Den nya filen poster som visas i terminal fönstret en gång var femte sekund.

När du efter den text som tillägg till mer än en fil, kan du undertrycka de rubriker som anger vilken logg-fil texten kommer från. Använd-q (tyst) alternativ för att göra detta:

tail-f -q geek-1.logga geek-2.logga in

Produktionen från filer visas i en sömlös blandning av text. Det finns ingen indikation på vilken logg-fil varje inlägg kom från.

svansen Fortfarande Har ett Värde

Även om tillträde till systemet loggfiler är nu som tillhandahålls av journalctl, svans fortfarande har mycket att erbjuda. Detta är särskilt sant när det används tillsammans med andra kommandon genom rör in i eller ut ur svans.

systemd kanske har förändrat landskapet, men det är fortfarande en plats för traditionella verktyg som överensstämmer med Unix-filosofin om att göra en sak och gör det bra.

LÄS NÄSTA

  • “Wi-Fi-6 Är Här: Bör Du Uppgradera till Wi-Fi 6 år 2020?
  • “Hur man Ställer Upp en Mac för Dina Barn
  • “Behöver Du Anti-Ransomware Program för Din DATOR?
  • “Hur Stream 62: e Årliga Grammy Awards utan Kabel
  • “Vad Gör “GLHF” Betyder, och Hur Använder Man Det?