Übung: Verwenden von Bash und grep, um CLI-Ausgabe zu filtern
Bis jetzt haben Sie Bash-Befehle einzeln ausgeführt. Das Tool Bash ist leistungsfähig, wenn es mit anderen Tools kombiniert wird. Als praktische Übung dazu soll Bash verwendet werden, um Ausgabe von der Azure CLI zu filtern.
Nehmen Sie an, Sie möchten eine aktuelle Liste der Größen der virtuellen Computer (VM) anzeigen, die in der Azure-Region USA, Westen verfügbar sind. Sie können dazu den folgenden Befehl verwenden:
az vm list-sizes --location westus --output table
Es sollte eine lange Liste von VM-Typen als Ausgabe angezeigt werden. Um diese Liste auf die VM-Größen einzugrenzen, an denen Sie interessiert sind, können Sie
grep
, das universelle Linux-Programm zum Vergleichen von Mustern, verwenden. Um die „DS“-Größen zu finden, die in der Data Science (Datenwissenschaft) beliebt sind, verwenden Sie den folgenden Befehl:az vm list-sizes --location westus --output table | grep DS
In diesem Befehl wird die Ausgabe des Befehls
az
an den Befehlgrep
weitergeleitet, der die Zeilen herausfiltert, die nicht die Zeichenfolge „DS“ enthalten.Das ist immer noch eine große Anzahl von VMs. Sie wissen, dass DS V2-VMs eine neuere Serie sind. Der
grep
-Befehl wird nun so angepasst, dass in ihm ein komplexerer regulärer Ausdruck verwendet wird:az vm list-sizes --location westus --output table | grep DS.*_v2
Hiermit werden Zeilen herausgefiltert, die nicht mit dem regulären Ausdruck
DS.*_v2
übereinstimmen. Möglicherweise erkennen Sie einige der Zeichen in diesem Ausdruck aus der Erörterung von „Platzhalterzeichen“ in einer früheren Einheit. In regulären Ausdrücken werden in sehr großem Umfang Platzhalterzeichen verwendet.Reguläre Ausdrücke sind ein Thema für ein anderes Modul, und sie sind insbesondere für Bash-Skripts sehr nützlich.
Ein Verwenden von Bash mit anderen CLI-Befehlen vereinfacht das Arbeiten mit diesen. Und weil die Arbeit eines Systemadministrators nie endet, ist jedes Tool willkommen, mit dem sich die Arbeitsbelastung verringern lässt.