Linux - Viser en fil uten kommentarlinjer

Det kan være nødvendig å vise en fil uten å vise de mange kommentarlinjene som er knyttet til den (spesielt for konfigurasjonsfilene til operativsystemet) og også vurderer å fjerne de tomme linjene.

grep

  • Gjør bruk av "egrep" (eller "grep-E"):
    •  egrep -v '^ (# | $)' /etc/samba/smb.conf 
    •  grep -E -v '^ (# | $)' /etc/samba/smb.conf 
  • Linjer som begynner med en hash (#) eller slutten symbol dollar ($) skal ikke vises.
  • I dette tilfellet er avgrensningskommentaren ikke plassert i starten av linjen, men bak (mellomrom eller faneblad), men du kan endre uttrykket som følger:
    •  grep -E -v '^ (# |; | $ | [] * #)' /etc/samba/smb.conf 

Sed

  • Gjør bruk av sed
    •  sed -e '/ ^ [] * # / d' -e '/ ^ $ / d' /etc/samba/smb.conf 
  • Her fjerner man for det første linjer som begynner med et mellomrom eller et pundskilt, og fjerner deretter alle tomme linjer.
  • Du kan forbedre uttrykket som:
    •  sed -e '/ ^ [] * # / d' -e '/ ^ [] *; / d' -e '/ ^ $ / d' /etc/samba/smb.conf 

Perl

  • Gjør bruk av perl.
  • Å benytte perl vil innebære å vurdere implementeringen av regex basert på motoren som brukes av verktøyene.
  • Ved hjelp av NFA (Nondeterministic Finite Automation) -motoren, men langsommere enn DFA (Deterministic Finite Automation) -motoren, kan du finjustere og administrere regexen for å få et bestemt resultat:
    •  perl -ne 'skriv ut med mindre / ^ \ s * [; \ $ #] | ^ $ /' file_config 
Forrige Artikkel Neste Artikkel

Beste Tips