Как описано здесь , перенаправления используются open()
для записи в файл. В оболочке есть внутренний (?) Файловый дескриптор, который затем используется при необходимости.
Внутренний дескриптор создается на протяжении всего сценария или времени жизни оболочки? Разрушено ли оно через некоторое время, ряд операций и т.д?
Я имею в виду, в частности, файловые дескрипторы для файлов, которые сама оболочка открывает для операций своих встроенных программ. Создан ли дескриптор и открыт ли файл для каждой операции? Как долго они хранятся? Пример:
#!/bin/bash
>>x echo something
...do many other things not related to the file x
>>x echo something more
Сохраняется ли первый экземпляр дескриптора до второй операции?
Как насчет оболочки, которую я использую в терминале? Иногда я держу одну сессию открытой в течение нескольких дней, может быть, даже недель. Сохраняет ли он дескрипторы для всех файлов, над которыми я работал со встроенными оболочками?