bash
nicht ausführen die Ausgabe eines Graviszeichen Befehl, ersetzt es nur. (Die Funktion wird schließlich als Befehlsersetzung bezeichnet .)
Wenn die Substitution nicht in doppelten Anführungszeichen ist, einzelne Wörter aufgespalten wird, um die Ausgabe des Befehls getan, aber Zitate und andere Sonderzeichen werden ignoriert; export PS1="[STRING] $PS1"
wird einfach aufgeteilt $IFS
in:
export
PS1="[STRING
$PS1"
Wenn Sie den Inhalt einer Datei ausführen möchten, geben Sie diese ein:
. ./datei.txt
oder nicht POSIX:
Quelle ./datei.txt
Wenn Sie möchten, dass das gesamte Standardparsing auf eine Substitution angewendet wird, z. B. eine Variable, können Sie eval "$commands"
oder eval "$(foo)"
oder verwendeneval "`foo`"
. Aber seien Sie vorsichtig damit.