Das ist wörtlich, {fd}
kein Platzhalter. Ich habe ein Skript, das dies ausführt und weder in irgendetwas Quellen noch irgendwo anders auf {fd} verweist. Ist das eine gültige Bash?
exec {fd}</dev/watchdog
bash
io-redirection
exec
Gregg Leventhal
quelle
quelle
REDIRECTIONS
. Es springt nicht wirklich auf dich los, da sie kein explizites Beispiel geben./dev/watchdog
gibt es jedoch auch unter Mac OS X nicht. Es ist ein Linux-spezifisches Gerät.Die Form:
Die Shell hat die Datei
filename
zum Lesen geöffnet und die Dateideskriptornummer in der Variable gespeichertvar
. Zwischen{var}
den Operatoren und den Umleitungsoperatoren ist kein Leerzeichen zulässig , und die Dateideskriptornummer ist größer oder gleich10
.Diese Funktion war ursprünglich von
ksh
(ab Version ksh93r im Jahr 2006) und wurdebash
viel später im Jahrbash-4.1-alpha
2010 kopiert.zsh
Die Änderung erfolgte auch früher alsbash
abzsh 4.3.4
2007.quelle
Dies wird im Abschnitt Bash-Handbuch zu Umleitungen erläutert .
quelle