MenüNetzwerklösungen, Webprogrammierung, Intranetlösungen, Datenbanken, Anwendungsprogrammierung und Systemsicherheit aus einer Hand in Bad Tölz
Die wichtigsten Kommandos und Funktionen nach Kategorien geordnet mit ausgefeilter Stichwortsuche.
Werbebanner Google Responsive Design

 Unix / Linux Shellscript-Kurzreferenz - Awk

Suchbegriff: 
nach obenawk

Der "awk" ist derart leistungsfähig, daß man ihn schon als eine kleine Programmiersprache bezeichnen kann. Intern kann man ihn in drei Segmente unterteilen: BEGIN{}, {} und END{}. Nur das mittlere bearbeitet die Datei oder den Datenstrom Zeile für Zeile.
Der Funktionsumfang des "awk" füllt leicht ein ganzes Kapitel.
Sehr nützlich zum Extrahieren von Datenfeldern in strukturierten Listen:

# Nimm das letzte Feld ($NF) aus der durch das
# Trennzeichen "/" definierten Liste (-F/). Gebe aus dem
# vollständigen Pfad nur den Dateinamen netdate aus
echo "/usr/sbin/netdate" | awk -F/ '{print $NF}'

# Man kann damit auch Mail-Aliases automatisch erzeugen
# Ignoriere alle UID's kleiner als 500
awk -F: '\
{
    if($5~" "&&$3>499)
    {
        gsub(" ",".",$5);
        print $5": "$1
    }
}' /etc/passwd > /etc/aliases
newaliases


Variablen (Auswahl):

Var   Descr                       Default
-----------------------------------------
FS            Feldseparator       " "
NF    Anzahl Felder
NR    Nr des aktuellen Datensatz
OFMT  Ausgabeformat
OFS   Ausgabe Feldseparator       " "
ORS   Ausgabe Datensatzseparator  \n
RS            Datensatzseparator


Funktionen (Auswahl):

Ret    Function                       Descr
---------------------------------------------------------------
       break, exit                     Schleifenabbruch
       continue, next                  Neuer Schleifendurchlauf
int    gsub("search","replace",var)    Suchen / Ersetzen
int    length(String)                  Stringlaenge
int    match(haystack,needle)          Suchen
int    split(String,Array,string sep)  Splitten
string strftime(Format, Unix-TS)       Zeitausgabe (date)
string substr(String,pos,count)        Teilstring
int    systime()                       Unix-Timestamp (TS)
string tolower                         Kleinbuchstaben
string toupper                         Grossbuchstaben


Letzte Änderung: 2019-02-17

Pflichthinweis nach EU-Verordnung 2016/679 des Europäischen Parlaments und des Rates vom 27. April 2016: Diese Website verwendet Cookies für eine bestmögliche Funktionalität und setzt bei Bedarf auch solche von Drittanbietern. Durch die Nutzung dieser Website erklären Sie sich mit der Nutzung von Cookies einverstanden.

OKCookies ablehnenMehr Infos...

Cookies sind kleine Textschnipsel, die zwischen Browser und Webserver ausgetauscht werden. Sie dienen dazu, die Funktionalität dieser Website zu verbessern. Beispielsweise wir dadurch dieser Hinweis nicht immer wieder eingeblendet, wenn Sie auf dieser Website unterwegs sind und Sie der Verwendung von Cookies bereits zugestimmt haben. Die Verwendung von Cookies kann in Ihrem Browser abgeschaltet werden. Dies geht jedoch auf Kosten des Komforts bei der Benutzung dieser Website. Hinweise zum Abschalten der Verwendung von Cookies finden Sie in der Hilfedatei Ihres Browsers.