GNU/Linux >> Tutoriels Linux >  >> Linux

Que fait "exec {fd}/watchdog" dans Bash ?

C'est littéral, {fd} n'est pas un espace réservé. J'ai un script qui fait cela, et ne source dans rien, ni ne référence {fd} nulle part ailleurs. Ce bash est-il valide ?

exec {fd}</dev/watchdog

Réponse acceptée :

Plutôt que d'avoir à choisir un descripteur de fichier et espérer qu'il est disponible :

exec 4< /dev/watchdog  # Was 4 in use? Who knows?

cette notation demande au shell de choisir un descripteur de fichier qui n'est pas actuellement utilisé, d'ouvrir le fichier en lecture sur ce descripteur et d'attribuer le numéro à la variable donnée (fd ).

$ exec {fd}< /dev/watchdog
$ echo $fd
10

Linux
  1. Que signifie "-" (double tiret) ?

  2. Que fait Exec 3 ?

  3. Que fait poll() avec un timeout de 0 ?

  4. Que signifie 'cd -' ?

  5. Que fait 'bash -c' ?

Que fait réellement Libgl_always_indirect=1 ?

Qu'est-ce que . Commande ~/.bashrc Faire ? ?

Que retourne malloc(0) ?

Que signifie set -e dans un script bash ?

Que fait kill -- -0 ?

Qu'est-ce que echo $ ? fais?