Linux - Visar en fil utan kommentarlinjerna

Det kan behövas för att visa en fil utan att visa de många kommenteringslinjer som är kopplade till den (speciellt för konfigurationsfilerna på ditt operativsystem) och även med tanke på att de tomma raderna tas bort.

grep

  • Använda "egrep" (eller "grep-E"):
    •  egrep -v '^ (# | $)' /etc/samba/smb.conf 
    •  grep -E -v '^ (# | $)' /etc/samba/smb.conf 
  • Linjer som börjar med en hash (#) eller symbolen för slutsymbolen ($) ska inte visas.
  • I det här fallet är avgränsaren kommentaren inte placerad i början av raden men bakom (mellanslag eller flik), men du kan ändra ditt uttryck enligt följande:
    •  grep -E -v '^ (# |; | $ | [] * #)' /etc/samba/smb.conf 

Sed

  • Användning av sed
    •  sed -e '/ ^ [] * # / d' -e '/ ^ $ / d' /etc/samba/smb.conf 
  • Här avlägsnas det först, linjer som börjar med ett mellanslag eller ett pundtecken, och tar sedan bort alla tomma linjer.
  • Du kan förbättra uttrycket som:
    •  sed -e '/ ^ [] * # / d' -e '/ ^ [] *; / d' -e '/ ^ $ / d' /etc/samba/smb.conf 

Perl

  • Använda perl.
  • Användning av perl kommer att innebära, med tanke på genomförandet av regex baserat på den motor som används av verktygen.
  • Med hjälp av NFA (Nondeterministic Finite Automation) -motorn, men långsammare än DFA (Deterministic Finite Automation) -motorn, kan du förfina och hantera regexen för att få ett visst resultat:
    •  perl -ne 'skriv ut såvida inte / ^ \ s * [; \ $ #] | ^ $ /' file_config 
Tidigare Artikel Nästa Artikel

Bästa Tipsen