In awk kann ich ein Array mit einer Schleife löschen, wodurch es ein leeres Array wird, was dem Löschen entspricht.
for (key in array) delete array[key];
Gibt es einen einfacheren Weg? Kann ich ein Array vollständig löschen, damit der Variablenname für einen Skalar wiederverwendet werden kann?
delete array
einen Syntaxfehler aufruft , obwohl die Manpage angibt, dass der Index optional ist.$ awk 'BEGIN { A[1] = 0; delete A; }' awk: Syntax error at line 1 of program << BEGIN { A[1] = 0; de ... >> context is BEGIN { A[1] = 0; delete >>> A; <<< awk: illegal statement at line 1 of program << BEGIN { A[1] = 0; de ... >>
Es war überraschender festzustellen, dassdelete array[subscript]
, obwohl dies nicht als Fehler angezeigt wurde, dies auch nicht funktionierte und viele Variantenarray[subscript] = ""
gleichermaßen unwirksam waren.