Antwort
Es entfernt Leerzeilen. Die Bedingung ist $0
(die gesamte Zeile) stimmt nicht mit !~
der Regexp /^$/
überein (der Anfang der Zeile unmittelbar gefolgt von dem Ende der Zeile).
Ähnlich grep -v '^$'
Er druckt nicht leere Eingabezeilen. Hinweis: "Leer" bedeutet in diesem Fall nicht "leer".
Machen Sie es lesbar erste ...
echo '$0!~/^$/{print $0}' | a2p ==> $, = ' '; $\ = "\n"; while (<>) { chomp; if ($_ !~ /^$/) { print $_; } }
Und das interpretieren. Drucken Sie in diesem Fall keine leeren Zeilen.
sagteawk '!/^$/'
oder
sed '/^$/d'
Ihr Beispiel könnte so einfach neu geschrieben werden. Nicht die mit einem oder mehreren Leerzeichen, sondern die langen Zeichen mit null Zeichen. Wir werden nie wissen, ob dies das beabsichtigte Verhalten war.
Ich möchte bemerken, dass der Code mindestens redundant ist, wenn nicht sogar dreifach redundant, je nachdem, wofür es verwendet wird.
Was sie tut, ist, dass sie die Eingangsleitung mit dem Ausgang druckt wenn die Eingangsleitung ist nicht die leere Zeile.
Da das Standardverhalten von awk ist, dass die Eingabezeile gedruckt wird, wenn eine Bedingung ohne folgenden Programmblock erfüllt ist, würde dies genügen:
awk '$0!~/^$/' or even shorter awk '$0!=""'
Wenn Sie sicher sein können, dass keine Linie würde auf null zerlegt werden, selbst ein
könnte den Trick tun.
oder: awk '$ 0! = "' ' – galaxywatcher
wie Ben Jackson und die anderen, entfernt sie vollständig leere Zeilen:
- 1. falsche Erklärung Erklärung in scala IntelliJ
- 2. Unklare Formulierung über Erklärung in template-Erklärung
- 3. awk Anfänger versucht zu verstehen awk "Denkprozess"
- 4. % (mod) Erklärung
- 5. Besuchermuster Erklärung
- 6. Makro Erklärung
- 7. Widersprüchliche Erklärung
- 8. MPI_Comm_split Erklärung
- 9. awk Systemaufruf
- 10. AWK-Syntaxproblem
- 11. JavaScript Verhalten Erklärung in Bezug auf eine var Erklärung
- 12. "Erklärung oder Erklärung erwartet" Fehler in Angular2 (oder TypeScript)
- 13. 'falsche Erklärung Erklärung' bei der Verwendung von Slick in IntelliJ
- 14. Beschleunigen Sie meine awk Befehl? Antwort muss awk sein :)
- 15. Probleme mit Swift Erklärung
- 16. Quickselect Algorithmus - Vereinfachte Erklärung
- 17. Call-Site-Erklärung?
- 18. Custom Generics Erklärung
- 19. PHP Statement Erklärung
- 20. Erklärung von dFdx
- 21. WCF Ereignis Erklärung
- 22. Java Array Erklärung Brackets
- 23. Weitere Erklärung über IntentService
- 24. rasche erwartete Erklärung Fehler
- 25. Distinct Subsequenzen DP Erklärung
- 26. C Funktion Erklärung
- 27. Erklärung von: register_shutdown_function
- 28. htaccess - Regel Erklärung
- 29. Sieb von Atkin Erklärung
- 30. Erklärung Ruby-Array Syntax
-1. Ich mag Perl, aber "lesbar" ist im Auge des Betrachters. Ist '$ _' besser als' $ 0'? Ich denke, diese Antwort ist nicht sehr hilfreich. –