Jeg har brugt CentOS 8 til demonstrationsformål.
Slet tomme linjer ved hjælp af kommandoen grep
Grep er et af de mest kraftfulde og alsidige værktøjer, der kan hjælpe dig med at fjerne de uønskede tomme linjer i dine tekstfiler. Normalt bruges kommandoen til sondering af strenge eller mønstre af tegn i en tekstfil, men som du snart vil se, kan den også hjælpe dig med at slippe af med uønskede tomme linjer
Når det bruges sammen med -v option, grep-kommandoen hjælper med at fjerne tomme linjer. Nedenfor er en eksempeltekstfil, prøve.txt, med alternative ikke-tomme og tomme linjer.
For at fjerne eller slette alle de tomme linjer i eksemplet på tekstfilen skal du bruge kommandoen grep som vist.
$ grep -v '^ [[: space:]] * $' prøve.txt
Derudover kan du bruge følgende syntaks.
$ grep -v '^ $' prøve.txtDesuden kan du f.eks. Gemme eller omdirigere output på en anden fil ved hjælp af operatoren større end (>).
$ grep -v '^ $' prøve.txt> output.txt
Slet tomme linjer ved hjælp af kommandoen sed
Forkortet som Stream-editor er Linux sed-kommandoen et populært værktøj, der udfører en lang række funktioner, herunder udskiftning og erstatning af strenge i en fil.
Desuden kan du også bruge sed til at fjerne tomme linjer i en fil som vist nedenfor.
$ sed '/ ^ $ / d' prøve.txt
Slet tomme linjer ved hjælp af kommandoen awk
Endelig har vi kommandoen awk. Dette er et andet kommandolinjeværktøj til tet-manipulation, der også kan slippe af med tomme linjer. For at fjerne en tom fil ved hjælp af awk skal du påkalde kommandoen nedenfor.
$ awk 'if (NF> 0) print $ 0' prøve.txt
Konklusion
Vi har leveret 3 måder, der kan være nyttige til fjernelse af tomme linjer i tekstfiler. Eventuelle andre ideer til, hvordan du sletter disse uønskede tomme linjer? Du er velkommen til at kontakte os i kommentarfeltet.