cat> $ FILE_NAME << EOF - Erklärung der inneren Funktionsweise

711
Ely

Ich weiß was dieser macht, ich habe "Muster" gelernt und funktioniert einfach.

Ich weiß auch:

  • das >ist eine Weiterleitung zu einer Datei
  • das << ist auch eine Weiterleitung zur Datei, siehe unten
  • EOF ist nur ein Platzhalter, wenn die Datei geschlossen wird

Kann jemand die innere Funktionsweise dieser Anweisungen erklären ? Warum funktioniert das?

Korrektur: Die Verwendung von << wird in der Manpage von bash beschrieben als:

<<[-]word here-document delimiter 

Es ist also die aktuelle Quelle, aus der gelesen wird, was ich für stdin halte. Könnte jemand dies in kleinere Stücke zerlegen, die ich verstehen kann?

Ich denke Trennzeichen entspricht EOFin meinem Beispiel, richtig?

Und hier-Dokument ist wahrscheinlich der Text, den ich in stdin eingebe, richtig?

Ich kann nicht sehen, was Wort ist.

0
"<<" ist _nicht_ eine Weiterleitung von einer Datei. `< John1024 vor 8 Jahren 1
Es gibt viele, * viele * Hinweise zur Verwendung der Shell im Internet (und einige davon sind klar und genau). Beginnen Sie damit, * den nächsten Absatz * von `bash (1)` nach dem von Ihnen zitierten Block zu lesen. Siehe auch [Was sind die Steuerungs- und Umleitungsoperatoren der Shell?] (http://unix.stackexchange.com/q/159513/23408) (hier bei Stack Exchange). Bitte recherchieren Sie selbst und lassen Sie uns wissen, wenn etwas bestimmtes schwer zu verstehen ist. Scott vor 8 Jahren 1
Ihr Link ist perfekt. Die Verwendung von zwei verschiedenen Bezeichnern "Wort" und "Trennzeichen" war verwirrend, sie sind eigentlich gleich. Vielen Dank. Ely vor 8 Jahren 0

0 Antworten auf die Frage