NOC online · 24/7Longview, TX · +1 323 412 0665
KinetikatechServers · Security · Websites
NO

Linux-kommandoer og skallferdigheter

grep: Søker i Linux som en profesjonell

grep overlever hver oppdatering av verktøykjeden fordi jobben aldri endres: finn linjene som betyr noe i tekst som vokser raskere enn noen rydder opp i den. Dens virkelige kraft er flaggvokabularet som gjør et søk til et svar: omgivende kontekst, filnavnlister, inverterte treff og utgangskoder som et skallskript kan forgrene seg på. Når en server oppfører seg dårlig, starter etterforskningen med grep, og oftere enn noen innrømmer, slutter den også der.

Nøkkelpunkter

  • Søk rekursivt med formål: grep -rni 'fail2ban' /var/log --include='*.log' hopper over binærfiler og komprimerte arkiver på egen hånd; en bare grep -r over /var/log lærer den leksjonen på den langsomme måten.
  • Kontekst gjør treff lesbare: -A 3 viser linjer etter, -B 3 før, -C 5 begge; -l viser bare filnavn, -c teller treff per fil, og -L inverterer listen til det som mangler.
  • Utgangskoder er en del av kontrakten: 0 betyr matchet, 1 betyr ingen samsvar, 2 betyr feil; et skript som kjører grep -q og ignorerer det skillet behandler suksess og stillhet identisk.
  • Kjedefillister null-safely: grep -rlZ 'ssl_protocols' /etc/nginx --include='*.conf' | xargs -0 -r ls -l; slipp Z- og -0-paringen, og det første filnavnet med et mellomrom bryter rørledningen.
  • Bruk -E som standard regex-nivå for lesbar veksling, og nå etter -P (lookarounds, \d-klasser) bare når du godtar at det er en GNU-utvidelse som BSD grep ikke vil bære.
  • -F behandler mønsteret som bokstavelig tekst: raskere og immun mot regex-metategn som sniker seg inn fra variabler limt rett ut av en billett.
  • --exclude-dir=.git og --exclude-dir=node_modules holder rekursive søk ute av kataloger som eksisterer bare for å bremse dem; stave navn eksplisitt i skript siden brace-utvidelse er en bash-bekvemmelighet, ikke en grep-funksjon.
  • Hold vanene atskilt: --color=auto for interaktiv komfort, ingen farger i skript (escape-sekvenser ødelegger logger), og -n (linjetall) på slik at neste person kan finne stedet du limte inn.

Feltnotat

Jeg kjørte en gang en bare grep -r over hele en klients tømmergård klokken 02.00 og fikk førti minutters stillhet for mine problemer; legge til --include='*.log' og -l avsluttet billetten på stedet. Inkluderings- og utgangskodevanene går nå inn før mønsteret gjør det.

Vanlige spørsmål

Hvorfor skriver grep noen ganger ut 'binære filtreff' i stedet for linjen min?

En NUL-byte nær treffet gjør at GNU grep behandler filen som binær; legg til -a for å tvinge tekstmodus eller -I til å hoppe over binærfiler helt, som er riktig standard på blandede loggkataloger.

Bør jeg bruke ripgrep i stedet?

ripgrep er raskere og hopper over binære og skjulte filer som standard, men grep finnes på hver boks du noensinne vil SSH inn i, inkludert redningsbilder. Lær grep først; nå for rg der den tilfeldigvis er installert.

Hvordan søker jeg i roterte, komprimerte logger?

zgrep søker gjennomsiktig i .gz-filer og zstdgrep dekker den nyere kompressorrotasjonen byttet til; gårsdagens nål bor vanligvis inne i en av disse, så verktøyene teller som grunnleggende hygiene.

Hvordan matcher jeg et ord, men ikke et lengre ord som inneholder det?

Bruk -w for helordsmatching og -x for hellinjetreff; når mønstre trenger deler av ord, gir karakterklasser som [Ss]erver presis kontroll uten å flate ut store og små bokstaver alle andre steder.

Slik hjelper Kinetikatech med linux-kommandoer og skallferdigheter

Vi har håndtert dette hundrevis av ganger: Kommandoene og skriptvanene som avgjør om en administrator driver en server eller bekjemper den: søk, transformer, overføring og overvåk tekst og prosesser med verktøyene som finnes i hver basisinstallasjon. Med Sikring av Linux-servere og Serveradministrasjon får du hele løkken: vi evaluerer, implementerer, overvåker kontinuerlig og griper inn i 30 minutter når det haster.

Snakk med en ingeniør

Serverproblemer? Nettsted hacket? Langsom innlasting?

Kritiske problemer løst på 30 minutter — døgnåpent, 7 dager i uken.

Bestill nødhjelp support@kinetikatech.com