Sådan bruges Grep -kommando og Tree Linux -eksempler

Et af de mest alsidige operativsystemer, der kan administreres via terminalen, er utvivlsomt Linux i nogen af ​​dets tilgængelige distributioner, og dette takket være integrationen af ​​mange kommandoer, der er tilgængelige i konsollen. Det er ligegyldigt, om vi bruger et terminalbaseret system (som serverversionerne) eller et GUI-baseret miljø (som desktopversionerne), i dem alle vil terminalen og dens kommandoer altid være en pålidelig kilde til administration og support.

Inden for vores daglige aktiviteter er oprettelse og redigering af mapper og filer, som kan være mange afhængigt af den rolle, der spilles. Dette på et eller andet tidspunkt er normalt, at på en eller anden måde negativt påvirker søgningen efter elementer ikke kun efter antallet af filer, men også af det sted, hvor de er hostet.

For at hjælpe med at styre denne type aktiviteter på en meget enklere måde har vi to vigtige kommandoer til både søgning og visning af objekter i Linux, og det er Grep- og Tree -kommandoerne. Solvetic vil i detaljer forklare deres anvendelse og hvordan de kan anvendes omfattende i den Linux -distribution, vi bruger.

1. Hvad er GREP -kommandoen

Hvad er Grep -kommandoenGrep er en kommando, der er udviklet for at udføre tekstsøgningsopgaver, Grep har ansvaret for at søge i filen, at vi angiver de linjer, hvor der opdages et match enten med de ord eller den streng, som vi tildeler under udførelsen af ​​dette. Navnet stammer fra UNIX -editoren g / re / p. Under udførelsen af ​​Grep vil det være muligt at angive et navn på en fil, eller det er muligt at forlade standardinputet, derfor er Grep ansvarlig for at generere de matchende linjer.

Grep variablerDer er tre (3) variabler, der administreres under Grep -processen, som er:

  • -G, --basic-regexp: dette er ansvarligt for at fortolke mønsteret som et grundlæggende regulært udtryk, det er standardværdien.
  • -E, --extended-regexp: Denne indstilling validerer mønsteret som et udvidet regulært udtryk.
  • -F, --fixed-strings: med denne mulighed fortolkes mønsteret som en liste over faste tegnstrenge, adskilt af linjeskift, hvor matchet findes i en hvilken som helst af dem.

Grep -kommandoen (Global Regular Expression Print) er en kommando, der giver os mulighed for at analysere systemet for at finde matchene, og når det er registreret, fortsæt med at udskrive resultaterne, så det er muligt at styre disse resultater centralt.

Grep syntaksSyntaksen til brug af kommandoen Grep er som følger:

 grep (Option) Mønster (fil) 

Grep kommandoparametreDer er en række parametre, som vi kan bruge med grep -kommandoen for at opnå de bedste resultater, disse er:

  • -E, --extended-regexp: Mønstre forstås som regulære udtryk
  • -F, --fixed-strings: Mønstre er strenge
  • -G, --basic-regexp: Mønstre er grundlæggende regulære udtryk
  • -P, --perl-regexep: Mønstre er Perl-udtryk
  • -e, regexp = MØNSTRE: Søg efter mønstre til kampe
  • -F. -fil (fil): Gør brug af mønstre som fil
  • -i, --ignore-case: Ignorer store bogstaver
  • -w, --word-regexp: Match alle de samme ord
  • -x, --line-regexp: Match alle linjer
  • -s, --no-messages: Fjern fejlmeddelelser
  • -v, --invert-match: Vælg de linjer, der ikke matcher søgekriterierne
  • -V, --version: Vis den anvendte grep -version
  • -m, --max-count = NUM: Stop søgning efter et bestemt antal linjer
  • -b, --byte-offset = Vis byte-forskydningen ved siden af ​​outputlinjerne
  • -n, --linienummer: Udskriv antallet af linjer
  • -H, --med-filnavn: vis filnavnet på outputlinjerne
  • -q, --quiet: Undgå alle resultater
  • -d, --directories = Handling: Angiver, hvordan biblioteker håndteres
  • -l, --files-without-match = Udskriv kun filnavne uden linjer
  • -c, --count: Udskriv markerede linjer pr. fil

Jeg har ingen Grep -kommandoGrep -kommandoen er som standard i Linux -distributioner, men hvis du af en eller anden grund ikke har den, kan du installere den med følgende kommandoer:

 sudo apt-get install grep (Debian og Ubuntu) sudo yum install grep (Redhat, CentOS og Fedora)

Trin 1
Den generelle syntaks, som kan indeholde flere parametre, er som følger:

 grep [-AB] num] [-CEFGVbchiLlnqsvwxyUu] [[-e] mønster | -f fil] [--extended-regexp] [--fixed-strings] [--basic-regexp] [--regexp = PATTERN] [--file = FILE] [--ignore-case] [--word -regexp] [--line-regexp] [--line-regexp] [--no-messages] [--invert-match] [--version] [--help] [--byte-offset] [- -linienummer] [--med-filnavn] [--no-filnavn] [-stille] [-stille] [--filer-uden-match] [--filer-med-matcces] [-tælle ] [--before- context = NUM] [--after-context = NUM] [--context] [--binary] [--unix-byte-offsets] filer … 
Trin 2
Vi vil se nogle eksempler på brug af Grep, før vi kender dens parametre. Hvis vi vil søge i / etc / passwd -biblioteket efter alt relateret til en bestemt bruger, kan vi udføre følgende:
 grep "bruger" / etc / passwd 
Trin 3
Resultatet bliver følgende:

Trin 4
Det vil også være muligt at tvinge Grep -kommandoen til at ignorere store og små bogstaver, det vil sige at tillade matchende solvetic, Solvetic eller SOLVETIC sammen med alle kombinationer ved hjælp af parameteren -i:

 grep -i "solvetic" / etc / passwd 

Trin 5
Denne mulighed kan også udføres ved hjælp af cat -kommandoen sådan:

 kat / etc / passwd | grep -i "solvetisk" 

2. Eksempler på brug af kommandoen Grep


Brugen af ​​kommandoer i Linux -operativsystemer er en obligatorisk opgave for alle it -administratorer og brugere, da vi takket være dem kan udføre hundredvis af administrative, informations- og supportopgaver. Der er mange kommandoer, hver med sine egne kriterier og funktioner, men en af ​​dem speciel til at søge efter tekst i filer i mapper eller mapper er Grep -kommandoen.

Nu vil vi se, hvordan du bruger Grep -kommandoen i Linux.

Sådan bruges Grep genereltFor at forstå, hvordan Grep fungerer, vil vi søge i biblioteket / etc / passwd efter alle de resultater, der er knyttet til vores bruger:

 grep solvetic / etc / passwd 
Som et resultat vil vi se følgende:

Som et yderligere punkt, lad os huske, at det er muligt at fortælle grep at ignorere store og små bogstaver i resultaterne, for dette udfører vi følgende:

 grep -i "solvetic" / etc / passwd 

Grep er ideel til at søge efter bestemte udtryk i kendte filer, lad os f.eks. Køre følgende søgning:

 grep Solvetic Solvetic.txt 
Som et resultat vil vi se de linjer, hvor dette ord gentages:

Vi kan søge efter det samme udtryk i forskellige filer samtidigt, til dette vil vi bruge følgende linje:

 grep Solvetic Solvetic.txt Solvetic1.txt 

En kortere måde at gøre dette på er ved at køre følgende:

 grep solvetic *. * 

Sådan bruges grep til at omdirigere resultater til en fil på LinuxDette er nyttigt i tilfælde, hvor vi skal udføre administrationsopgaver på filerne senere, så det er muligt at omdirigere output fra grep -kommandoen til en bestemt fil, for eksempel vil vi gøre følgende:

 grep Solvetic Solvetic.txt> Solvetic2.txt 
Som et resultat vil vi se, at den nødvendige tekstfil er blevet oprettet:

FORSTØRRE

Sådan bruges grep til at søge i bibliotekerTakket være parameteren -r vil vi være i stand til at søge efter en værdi i de tilgængelige underkataloger, vi vil udføre følgende:

 grep -r Solvetic / home / solvetic 
Dette vil søge i hele hjemmekataloget efter det udtryk, der fremhæver de registrerede resultater:

Sådan bruges grep til at vise linjenummerTil revision eller avancerede supportopgaver er det ideelt at vise nummeret på linjen, hvor søgemønsteret findes, til dette kan vi bruge parameteren -n som følger. Der finder vi nummeret på linjen, hvor hver værdi findes.

 grep -n Solvetic Solvetic.txt 

Sådan bruges grep til at fremhæve resultaterDa vi ved, at teksten kan blive forvirrende mange gange, er en løsning at fremhæve de søgekriterier, der fokuserer vores syn direkte på den linje, til dette vil vi bruge farveparameteren som denne:

 grep -farve Solvetic Solvetic.txt 

Sådan bruges grep til at vise linjer, der starter eller slutter med det angivne mønsterDet er muligt, at vi kun vil se resultaterne af de linjer, der starter eller slutter med et søgekriterium, for dette, hvis vi vil søge efter de linjer, der starter, vil vi bruge følgende linje:

 grep Solvetic Solvetic.txt 

For at vise de linjer, der slutter, vil vi nu bruge følgende:

 grep Solvetic $ Solvetic.txt 

Sådan bruges grep til at udskrive alle linjer uden at se, hvilke der matcherHvis vi vil se alle linjerne undtagen dem, hvor værdien søges, skal vi bruge parameteren -v som denne:

 grep -v Solvetic Solvetic.txt 

Sådan bruges grep med andre kommandoerGrep, ligesom mange Linux -kommandoer, kan bruges samtidigt med andre kommandoer til klarere resultater, for eksempel hvis vi vil implementere HTTP -processer, vil vi bruge grep sammen med ps som følger:

 ps -ef | grep http 

Sådan bruges grep til at tælle, hvor meget et ord gentages i en filHvis vi vil vide, hvor mange gange et mønster gentages i en bestemt fil, bruger vi parameteren -c:

 grep -c Solvetic Solvetic.txt 

Sådan bruges grep til at lave et omvendt opslagSelvom det lyder mærkeligt, er dette ikke andet end at vise de ord, som vi ikke specificerer i resultatet, opnår vi dette med parameteren -v:

 grep -v Solvetic Solvetic2.txt

Sådan bruges grep til at se hardware detaljerVi har set før, at vi kan kombinere grep med andre kommandoer for at vise et resultat, ja, hvis vi ønsker at få specifikke hardware detaljer, kan vi bruge cat med grep som denne:

 kat / proc / cpuinfo | grep -i 'Model' 

Vi har globalt lært den anvendelse, som grep -kommandoen giver os til at få adgang til meget mere specifikke resultater af søgekriterier i Linux.

3. Sådan bruges Grep Linux -kommando rekursivt

Trin 1
Grep giver os mulighed for at udføre en rekursiv søgning, det vil sige, at denne søgning læser alle filerne i hvert bibliotek for en bestemt streng, for eksempel computerens IP -adresse, vi kan udføre en af ​​følgende muligheder:

 grep -r "192.168.0.25" / etc / eller grep -R "192.168.0.25" / etc /

BemærkDer kan vi indtaste den aktuelle IP -adresse på det udstyr, der er i brug.

Trin 2
Vi kan også udføre det samme med IP 192.168.1.5, som systemet bruger til standardudgange:

Trin 3
Vi kan bemærke, at med begge IP -adresser vises en separat linje forud for navnet på den fil, hvor den blev registreret, hvis vi vil eliminere inkluderingen af ​​denne værdi, vil det være muligt at undertrykke den ved at bruge indstillingen -h sådan her:

 grep -h -R "192.168.1.5" / etc / eller grep -hR "192.168.1.5" / etc /

BemærkDenne kommando skal køres som root eller ved at forberede sudo til kommandoen.

4. Sådan bruges Grep Linux -kommando til at køre ordsøgninger

Trin 1
Grep er nyttig til at søge udtryk i en bestemt fil, og derfor vil resultatet på en fremhævet måde vise hver linje, hvor søgeudtrykket findes, samt ordene (ikke fremhævet), der ledsager søgeudtrykket, syntaksen, der skal bruges, er følgende. I dette tilfælde er der fundet 3 kampe i filen Solvetic1.

 grep -w "word" -fil

Trin 2
I tilfælde af at vi vil søge efter to udtryk i en fil, skal vi udføre følgende syntaks ved hjælp af egrep -kommandoen. Som vi kan se, vil de søgte ord blive fremhævet i resultatet.

 egrep -w 'term1 | term2' fil 

5. Sådan bruges Grep Linux -kommando til at tælle ord

Trin 1
En anden af ​​Greps praktiske muligheder er muligheden for at vide, hvor mange gange et ord gentages i en bestemt fil, dette opnås takket være -c -parameteren som denne:

 grep -c 'word' fil 

Trin 2
Alternativt kan vi bruge parameteren -n til at gå forud for hver outputlinje med nummeret på den linje, hvor den er angivet i den valgte fil:

 grep -n 'word' fil 

6. Sådan tvinges omvendt søgning Grep Linux -kommando


Med omvendt søgning mener vi, at kommandoen Grep kun viser resultater fra de linjer, der ikke indeholder det definerede ord, dette opnås med -v -parameteren som denne:
 grep -v "term" fil 

7. Sådan bruges UNIX / Linux Pipes sammen med kommandoen Grep

Trin 1
Grep -kommandoen i Linux kan kombineres med UNIX -shell -rør, f.eks. Hvis vi vil angive navnet på harddiskenhederne, udfører vi følgende linje:

 dmesg | egrep '(s | h) d [a-z]' 

Trin 2
Der vil resultaterne blive vist med alle de respektive oplysninger. For at vise CPU -modellen udfører vi:

 kat / proc / cpuinfo | grep -i 'Model' 

Trin 3
For det samme resultat kan vi også udføre følgende:

 grep -i 'Model' / proc / cpuinfo 
Trin 4
En af de mest specielle anvendelser af kommandoen Grep eller egrep er muligheden for at filtrere output fra traditionelle kommandoer som yum, dpkg, apt eller apt-get. For eksempel kan vi køre følgende linje for at finde Linux -billeder med dpkg:
 dpkg --liste | grep linux-image 

Trin 5
Det vil være muligt at køre søgningen med apt:

 passende søgning maria | egrep 'server | klient' 

8. Sådan vises kun de filnavne, der matcher Grep


Til dette formål kan vi gøre brug af -l for at angive navnet på den fil, hvori dets indhold vil blive fremhævet som dette:
 grep -l 'term' * .c 
Grep kommandoparametreDernæst vil vi se de forskellige variabler, som Grep tilbyder os til administrationen i Linux:

  • -num: Med denne mulighed vil de matchende linjer ligge ved siden af ​​de forrige og efterfølgende linjenumre.
  • -A num, --after-context = NUM: Viser antallet af kontekstlinjer, efter at de matcher de angivne.
  • -B num, --before-context = NUM: Brug af denne indstilling viser kontekstlinjerne før dem, der matcher søgningen.
  • -V, --version: Vis det anvendte grep -versionsnummer.
  • -b, --byte-offset: Denne parameter viser forskydningen i bytes fra begyndelsen af ​​inputfilen før hver linje i dens output.
  • -c, --count: Tæl antallet af linjer, der matcher det angivne udtryk.
  • -h, --no-filnavn: Undertryk udskrivning af filnavne i output.
  • i, --ignore-case: Det tager ikke højde for, om bogstaverne er store eller små bogstaver.
  • -L, --filer-uden-match: Denne indstilling viser navnet på hver inputfil, hvor der ikke findes nogen match.
  • -l, --filer-med-matches: Vis navnet på hver inputfil, der kan generere et resultat.
  • -n, --line-number: Kortlægger hver outputlinje med det respektive linjenummer i søgefilen.
  • -q, --quiet: Aktiver lydløs tilstand, der undertrykker normal output, og søgningen slutter ved den første kamp.
  • -s, --silent: Undgå fejlmeddelelser.
  • -v, --invert-match: Denne indstilling vender søgeretningen, det vil sige, at den viser de resultater, der ikke matcher søgeudtrykket.
  • w, --word-regexp: Denne parameter vælger kun linjer, der indeholder matches, der udgør hele ord.
  • -x, --line-regexp: Denne indstilling vælger kun kampe, der består af hele linjen.

9. Sådan bruges og installeres Tree -kommando i Linux


Nu vil vi tale lidt om kommandoen Tree, som navnet angiver, den er blevet udviklet til at vise systemkatalogerne i form af et træ og dermed lette deres administration.

Trækommandoen fungerer med en rekursiv bibliotekskommando, der kun resulterer i et træformat, der er designet med en række farver, hvis miljøvariablen LS_COLORS er indstillet, og output er tty, hvis der ikke er tildelt nogen argumenter, viser denne kommando filerne i det aktuelle bibliotek.

Trin 1
Dens generelle syntaks er som følger:

 træ [-acdfghilnpqrstuvxACDFQNSUX] [-L niveau [-R]] [-H baseHREF] [-T titel] [-o filnavn] [--nolinks] [-P mønster] [-I mønster] [--inoder] [ --enhed] [--noreport] [--dirsfirst] [--version] [--help] [--filelimit #] [--si] [--prune] [--du] [--timefmt format ] [--matchdirs] [-] [bibliotek …] 
Trin 2
Det første trin er at installere Tree -kommandoen ved at køre følgende kommando:
 sudo apt installere træ 

Trin 3
Når det er installeret, udfører vi kommandoen "træ" direkte for at vise det aktuelle bibliotek i træformat:

10. Sådan arbejder du med filer ved hjælp af kommandoen Tree i Linux

Se skjulte filer med TreeSom standard viser Tree -kommandoen ikke skjulte filer af sikkerhedsmæssige årsager, hvis vi vil se dem i resultatet, vil det være muligt at tilføje -a -parameteren til dette formål:

 træ -a 

FORSTØRRE

Vis kun mapper med TreeHvis du ønsker, at Tree kun skal generere telefonbogsposterne, vil det være muligt at gøre det ved hjælp af -d parameteren som denne:

 træ -d 

FORSTØRRE

Se hele stien til filerne med TreeKommandoen Tree giver os mulighed for at udskrive præfikset for hele stien for filerne i biblioteket ved hjælp af -f parameteren:

 træ -f 

FORSTØRRE

Styr dimensionens resultat med TreeI nogle tilfælde er det muligt, at det genererede resultat er ekstremt langt, træ giver os mulighed for at kontrollere dybden af ​​biblioteketræet for dets output, for dette skal vi bruge parameteren -L, som kræver en numerisk værdi, der angiver den tilladte biblioteksdybde:

 træ -d -L 2 

FORSTØRRE

Brug selektive navne med TreeMed parameteren -l vil det være muligt at ekskludere bestemte ord fra de resultater, der genereres af Tree, for eksempel kan vi udføre følgende linje for at generere resultater, men uden udtrykket Android:

 træ -d -I * Android 

FORSTØRRE

11. Parametre, der skal bruges med Tree -kommandoen i Linux

Parametre, der skal bruges med TreeDernæst forklarer Solvetic de tilgængelige parametre til brug med Tree:

  • -a: Udskriv alle filer, husk at træ som standard ikke udskriver skjulte filer.
  • -d: Vis kun bibliotekerne.
  • -l: Fortsæt symbolske links, hvis de peger på mapper, der foregiver at være mapper.
  • -f: Udskriv præfikset for objekternes fulde sti.
  • -x: Forbliver kun på det aktuelle filsystem.
  • -L -niveau: giver dig mulighed for at definere den maksimale visningsdybde for biblioteketræet i resultatet.
  • -R: Det virker rekursivt at krydse træet i bibliotekerne på hvert niveau, og i hvert enkelt af dem vil det blive udført. træet igen ved at tilføje `-o 00Tree.html '.
  • -P -mønster: Vis kun filer, der matcher wildcard -mønsteret.
  • -I -mønster: Vis ikke de filer, der matcher jokertegnets mønster.
  • -matchdirs. Denne indstilling angiver et matchende mønster, som gør det muligt for mønsteret kun at gælde for biblioteksnavne.
  • --prune: Denne parameter fjerner tomme mapper fra output.
  • --noreport: Spring over udskrivning af filen og biblioteksrapporten i slutningen af ​​listen over det udførte træ.

Træ generelle mulighederDisse er de generelle tilgængelige træindstillinger, men vi har også eksklusive parametre for filerne, disse er:

  • -q: Udskriv tegn, der ikke kan udskrives i filnavne.
  • -N: Udskriver tegn, der ikke kan udskrives.
  • -Q: Dens funktion er at tildele navnene på filerne i dobbelte anførselstegn.
  • -p: Udskriv filtypen og tilladelserne for hver fil i biblioteket.
  • -u: Udskriv brugernavnet eller UID'en for filen.
  • -s: Udskriv størrelsen på hver fil i bytes samt dens navn.
  • -g Udskriv gruppens navn eller GID for filen.
  • -h: Dens funktion er at udskrive størrelsen på hver fil på en læsbar måde.
  • --du: Handler om hvert bibliotek, der genererer en rapport om dens størrelse, herunder størrelsen på alle dets filer og undermapper.
  • --si: Bruger beføjelser på 1000 (SI-enheder) til at vise filstørrelsen.
  • -D: Udskriver datoen for den sidste ændring af filerne.
  • -F: Din opgave er at tilføje en `/ 'for mapper, a` =' for socket -filer, en '*' for eksekverbare filer, en '>' for døre (Solaris) og en '|' til FIFO'er.
  • --inoder: Udskriv filens eller bibliotekets inode-nummer.
  • --enhed: Udskriv det enhedsnummer, som filen eller biblioteket tilhører i output.
  • -v: Sorter output efter version.
  • -U: Bestiller ikke resultaterne.
  • -r: Sorter output i omvendt rækkefølge.
  • -t: Sorter resultaterne baseret på den sidste ændrede tid i stedet for alfabetisk.
  • -S: Aktiverer CP437 stregdiagrammer
  • -n: Deaktiverer farvelægning af resultatet.
  • -C: Aktiverer farvelægningen.
  • -X: Aktiverer XML -output.
  • -J: Aktiver JSON -output.
  • -H baseHREF: Aktiverer HTML -output, herunder HTTP -referencer.
  • --hjælp: Adgang til Tree-hjælp.
  • --version: Viser den brugte version af kommandoen Tree.

Med brugen af ​​disse to kommandoer var det muligt på en meget mere omfattende måde at administrere hver opgave, der skulle udføres på filerne i Linux, supplere søge- eller administrationsopgaverne på dem og få adgang til omfattende resultater efter behov.

Du vil bidrage til udviklingen af ​​hjemmesiden, at dele siden med dine venner

wave wave wave wave wave