<<
angegeben wird,
gefolgt von einer frei wählbaren Endemarkierung. Aus dem Skript (oder
von der Tastatur bei einem interaktiven Kommando, da macht es nur
keinen Sinn) wird dann Text gelesen und an das Kommando
weitergereicht, bis die Endemarkierung am Anfang einer Zeile
auftritt:
fgrep Hallo << ichhabefertig Hallo, Max Holdrio Hallo, mein Name ist $USER ichhabefertigHier wird alles nach dem fgrep-Kommando bis (ausschließlich) der ichhabefertig-Zeile als Standardeingabe an das fgrep gereicht.
In dieser Form wird innerhalb des here-Dokuments wie üblich eine
Expansion von Variablen, Kommandos und arithmetischen Ausdrücken
durchgeführt. Der Endetext hinter Operator <<
wird dagegen
generell nicht ausgewertet.
Allerdings kann er ganz oder teilweise in Gänsefüßchen oder Apostrophe
eingeschlossen werden (quoted); dann findet innerhalb des
here-Dokuments auch keine Ersetzung mehr statt (beispielsweise
für $USER
).
Eine weitere Variante ist die Verwendung des
Operators <<-
anstatt <<
. Dadurch werden im gesamten here-Dokument in jeder
Zeile führende Leerzeichen und Tabulatoren entfernt. Dadurch lassen
sich Skripte schöner schreiben, ohne die Einrückungen zu
unterbrechen.
AnyWare@Wachtler.de