【发布时间】:2016-02-10 15:35:37
【问题描述】:
我在两个不同的文件夹和两个不同的终端中执行这个命令:
for i in *_RG.bam; do k=`echo $i | sed "s/.bam/_Reordered.bam/"` java -jar /home/Programas/picard-tools-1.107/ReorderSam.jar R=/local/Referencias/Homo_sapiens/UCSC/hg19/Sequence/Bowtie2Index/genome.fa I= $i O= "$k" ; done
在一个终端上它工作正常,但在另一个终端上代码根本不工作。它给出了下一个错误。
Runtime.totalMemory()=1517289472
To get help, see http://picard.sourceforge.net/index.shtml#GettingHelp
Exception in thread "main" net.sf.samtools.util.RuntimeIOException: File not found:
at net.sf.samtools.util.BinaryCodec.<init>(BinaryCodec.java:102)
at net.sf.samtools.util.BlockCompressedOutputStream.<init>(BlockCompressedOutputStream.java:127)
at net.sf.samtools.BAMFileWriter.<init>(BAMFileWriter.java:50)
at net.sf.samtools.SAMFileWriterFactory.makeBAMWriter(SAMFileWriterFactory.java:154)
at net.sf.samtools.SAMFileWriterFactory.makeBAMWriter(SAMFileWriterFactory.java:136)
at net.sf.samtools.SAMFileWriterFactory.makeSAMOrBAMWriter(SAMFileWriterFactory.java:246)
at net.sf.picard.sam.ReorderSam.doWork(ReorderSam.java:118)
at net.sf.picard.cmdline.CommandLineProgram.instanceMain(CommandLineProgram.java:179)
at net.sf.picard.cmdline.CommandLineProgram.instanceMainWithExit(CommandLineProgram.java:120)
at net.sf.picard.sam.ReorderSam.main(ReorderSam.java:77)
Caused by: java.io.FileNotFoundException: (No such file or directory)
at java.io.FileOutputStream.open(Native Method)
at java.io.FileOutputStream.<init>(FileOutputStream.java:221)
at java.io.FileOutputStream.<init>(FileOutputStream.java:171)
at net.sf.samtools.util.BinaryCodec.<init>(BinaryCodec.java:95)
... 9 more
当我在新终端中将程序称为java -jar /home/ktroule/Programas/picard-tools-1.107/ReorderSam.jar -h 时,它会按预期打印帮助。
在此之后,我停止使用 ctrl+c 正常工作的终端并更换终端以证明问题是否与文件或终端有关。同样的事情发生了,只有一个终端工作(和以前工作的一样)。
我关闭了不工作的终端并打开了一个新的终端,但只有在原来的终端上代码才有效。
我还比较了可以使用的终端和不使用 usinf diff 输出 printenv 的终端,对于 WINDOWID 行,两者都是相同的。
对这个问题有任何猜测吗?
我没有在需要时关闭运行代码的终端,我害怕无法运行代码。
【问题讨论】: