Kommentarer
Svar
Vanligvis brukes grep
til søk operasjoner, sed
brukes til søk og erstatt operasjoner og awk
er spesielt godt egnet for tabelldata og har en lavere læringskurve enn noen alternativer. Det er også overlappende funksjoner mellom disse verktøyene, se: Når skal du bruke grep, less, awk, sed
grep
- Dokumentasjon:
man grep
,info grep
, GNU grep online manual - En introduksjon til grep og egrep
- grep tutorial
- ripgrep – alternativ implementering, rekursiv som standard, respekterer
.gitignore
, Rust / PCRE2 regex, SIMD, etc - Ebook on GNU grep and ripgrep
sed
- Dokumentasjon:
man sed
,info sed
, GNU sed online manual - Sed – En introduksjon og veiledning
- Sed av eksempel 1 del , Del 2 , Del 3
- sed tutorial
- Ebook on GNU sed one-liners
awk
- Documentation:
man awk
,info awk
,info gawk
, GNU awk online manual - AWK: A Tutorial and Introduction
- Awk by Eksempel på del 1 , Del 2 , Del 3
- En AWK-primer ( alt link )
- Ebook on GNU awk one-liners
Videre lesing
Svar
O» Reilly sed og awk boka er flott for er sed en d awk.
Svar
Jeg skrev en bok om sed
– Definitive Guide to sed —den inkluderer en veiledning. Det dekker fullt ut sed
, samt relaterte kommandoer som grep
, tr
, head
og tail
. Dekker også vanlige uttrykk mye bedre enn jeg har sett andre steder.
Jeg er enig med andre i at solid forståelse av regulære uttrykk er veldig viktig. Jeg er også enig i at sed
brukes best til enklere oppgaver, mer komplekse skript blir raskt uklare.
Jeg er uenig i at awk
er foreldet, bare motsatt. Det er som mange unix ting (f.eks. vi
), det er en læringskurve, men det er verdt det.
Jeg er uenig i forslaget om å bruke awk
i stedet for grep
. Det gir ingen mening i min erfaring. grep
er så flott og enkelt.
Svar
Regular Expressions Cookbook utgitt av O «Rielly ville være nok til å få deg hvor som helst på hvilket som helst språk som bruker dem.
Svar
Forfatterne av boka er Kernigan og Pike tittelen er noe sånt som «The Unix P rogramming Environment «.
Boken som jeg faktisk lærte av het» An Introduction to Berkely Unix «.
Svar
Hvis du skal lære en av disse 3 (grep, sed og awk), kan du bare lære awk / gawk. . awk kan gjøre grep og sed «s funksjoner, dvs. bruke regex til å søke / erstatte tekst, pluss mye mer fordi det også er et programmeringsspråk.Hvis du lærer innsiden av gawk / awk, trenger du ikke bruke grep / sed / wc / cut osv. Bare ett verktøy gjør det.
Svar
Etter min mening er awk mer eller mindre foreldet (andre vil imidlertid sterkt argumentere for denne oppfatningen), de fleste jeg kjenner i dag bruker i stedet noe skriptspråk som perl eller i dag ofte python for avansert tekst manipulering. sed er flott for enklere tekstmanipuleringsoppgaver, jeg bruker det hele tiden. Jeg lærte det hovedsakelig ved å se på sed en-liners som de på http://sed.sourceforge.net/sed1line.txt . Angående grep: Vel, du vil i utgangspunktet få en solid forståelse av vanlige uttrykk (også nødvendig for sed). Jeg brukte her bare texinfo-håndbøkene.
Kommentarer
- awk er fortsatt veldig nyttig for å manipulere data fra andre kommandoer. For enkel kommandolinjebruk ville jeg ikke ' t vurdere det foreldet ennå.
- Det bør også være tilgjengelig på mange syste ms på grunn av POSIX.
- Mest ' avansert AWK ' gjøres sannsynligvis bedre med perl eller python eller hva som helst, men de enkle tingene er hyggelig å gjøre med bare awk.
- Awk er fortsatt nyttig å vite for å forstå forskjellige svar du kan finne på nettet når du prøver å løse et problem. Du vil ofte finne eksempler på nettet som bruker awk-utsagn som
awk '{print $3}'
. - På jobb og hjemme bruker jeg awk oftere enn sed. Ingenting kan slå kjipt ved faste tabeldata, som
dpkg -l
-utdata. Jeg vil ikke ' ikke gjøre noe eksternt komplisert i det, men jeg ' d er kort et verktøy uten awk. Jeg kan ' t si det samme for mer generelle programmeringsspråk, så mye som jeg liker noen av dem.
man
-siden som føles som 90% fotnoter.