Bash скрипт файловый дескриптор echo
echo: write error: Bad file descriptor
На протяжении всего моего кода (через несколько сценариев bash) я сталкиваюсь с этой ошибкой. Это происходит, когда я пытаюсь написать или добавить к (одному) файлу.
LOGRUN_SOM_MUT_ANA=/Volumes/.../logRUN_SOMATIC_MUT_ANA
Я использую абсолютный путь для этой переменной и один и тот же файл для каждого вызываемого скрипта. В файле есть куча таких же строк. Я использую импорт ".- по каждому сценарию, чтобы получить его.
echo "debug level set for $DEBUG_LEVEL" >> ${LOGRUN_SOM_MUT_ANA}
Стоит отметить:
- Обычно это происходит после того, как я пишу ему в первый раз.
- я читал о файлы "закрываются" сами и выдают эту ошибку
- я использую приведенную выше строку в одном скрипте, а затем вызываю другой скрипт.
Я был бы рад прояснить что-нибудь.
2 ответа:
Для других, столкнувшихся с такой же глупой ошибкой под cygwin в скрипте, который работает под настоящим Linux: не знаю почему, но это может произойти:
1) после синтаксической ошибки в скрипте
2) потому что cygwin bash хочет, чтобы вы заменили
./myScript.sh
на. ./myScript.sh
(где dot-директива включения стиля bash, она жеsource
)