PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Here-Script



MadB
18-03-2002, 21:48
Hallo Leute!

Für ein Praktikum soll ich mich mit der Funktion eines Here-Scriptes vetraut machen.
In den Linux-Manuals und im Netz habe ich dazu nur dürftige Informationen erhalten.
Könnte mir also eventuell jemand ein paar Worte dazu schreiben und eventuell ein paar Beispiele geben?
Was genau macht ein solches Script? Welches Einsatzgebiet? ...

Besten Dank im voraus.

Grüße

Torsten

fork
18-03-2002, 22:18
Man spricht von Here-Dokumenten(Here-Documents) wenn man ad-hoc eine Datei verwenden will ohne wirklich eine auf der Festplatte anzulegen.



Bsp.:
cat <<ENDE_DES_HERE_DOKUMENTES
bla
bla
hallo
wie
auch
immer
ENDE_DES_HERE_DOKUMENTES

Merkmale:
- ein Befehl
- der Eingabeumlenkungsoperator "<<"
- ein beliebiges Wort
- einige Zeilen Daten
- wieder das beliebige Wort(direkt am Zeilen anfang)
Auswirkungen:
Die Datei wird dem Befehl cat mitgegeben und der gibt die dann aus(aufregend).

Here Scripte, funktionieren wenn Du dich nicht verschrieben hast und ~Dokumente meinst ähnlich: Ein Befehl der eine Eingabedatei erwarten kann bekommt ein HERE-Document zugewiesen und führt es in diesem Fall halt aus. Nuetzlich z. B. wenn man Programme unter anderen Benutzeridentitäten ausführen will:




Bsp.:
su - anderernutzer<<ENDE_SU_BEFEHL
echo "Ich heisse jetzt $USER und schreibe jetzt eine mail an root"
echo "hallo root" | mail -S "automatische mail von $USER" root
ENDE_SU_BEFEHL


Gruß
Tobias

MadB
19-03-2002, 06:11
Moinsen!

Besten Dank für die schnelle Antwort. Das konnte mir sehr weiter helfen.
Abschliessend noch eine kleine Frage.
Wo werden Here-Scripte typischerweise untergbracht?
Wird auch ein Script wie jedes andere geschrieben und dann ausgeführt? Oder eventuell nur in der Shell niedergeschrieben?

Grüße

Torsten

fork
19-03-2002, 11:28
Here Scripte stehen im übergeordneten Script/Befehl mit drin wie im obigen Beispiel zu sehen.

Ein Here-Script ist also einfach nur ein Teil eines normalen Scriptes und wird mit diesem zusammen abgespeichert.

MadB
19-03-2002, 16:29
Moinsen!

Alles klaro.
Nun habe ich etwas Durchsicht.
Besten Dank für die Hilfe.

Grüße

Torsten