Comme décrit ici , les redirections permettent open()
d'écrire dans un fichier. Il y a un descripteur de fichier interne (?) Créé dans le shell, puis utilisé en cas de besoin.
Le descripteur interne est-il créé pour toute la durée du script ou la durée de vie du shell? Est-il détruit après un certain temps, un certain nombre d'opérations, etc.?
Je veux dire en particulier les descripteurs de fichiers pour les fichiers que le shell lui-même ouvre pour ses opérations internes. Le descripteur est-il créé et le fichier ouvert pour chaque opération? Combien de temps sont-ils conservés? Exemple:
#!/bin/bash
>>x echo something
...do many other things not related to the file x
>>x echo something more
La première instance de descripteur est-elle conservée jusqu'à la deuxième opération?
Qu'en est-il du shell que j'utilise dans un terminal? Je garde parfois une session ouverte pendant des jours, voire des semaines. Conserve-t-il toujours les descripteurs de tous les fichiers sur lesquels j'ai opéré avec des shell intégrés?
la source