Bash脚本文件描述符回声

时间:2012-12-12 20:53:54

标签: bash shell sh file-descriptor

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}

值得注意的是:

  • 通常在我第一次写信之后发生。
  • 我读到文件“关闭”自己并产生此错误
  • 我在一个脚本中使用上面的行,然后调用另一个脚本。

我很乐意澄清任何事情。

launch script

errors

The second script, called from the first

2 个答案:

答案 0 :(得分:1)

对于其他人在cygwin下遇到同样的愚蠢错误,在一个真正的Linux下工作的脚本:不知道为什么,但它可能发生:

1)脚本中出现语法错误

2)因为cygwin bash希望你用./myScript.sh替换. ./myScript.sh(其中dot是bash-style include指令,又名source

答案 1 :(得分:0)

我想通了,我正在使用的拇指驱动器是加密的。它输出到/ tmp /所以它是一个权限的东西。那就是问题!