簡體   English   中英

為什么我的Bash腳本停止?

[英]Why do my Bash scripts stop?

貝婁是我通過Java創建和執行的Bash腳本。 它利用幾種不同的腳本來生成RNA-Seq數據的統計數據。 我的問題是,執行腳本時,腳本將在進程停止之前到達腳本的第二階段(程序不會出錯,所需的程序只會停止處理)。 我嘗試過從命令行分別運行創建的腳本,並且該腳本沒有錯誤地完成。 一個建議將不勝感激。

 String Trans_ref = 
"#!/bin/bash \n" +
"mkdir -p "+Output+"/"+Sample+"_RSEM \n" +
"cd "+Output+"/"+Sample+"_RSEM \n" +
"PATH=$PATH:"+RSEMprep+" \n" +
"export PATH=$PATH \n" + 
""+RSEMprep+"/rsem-prepare-reference --no-polyA --bowtie "+Output+"/Trans_CDHIT.fast Trans_CDHIT.RSEM \n" +    
""+RSEMprep+"/rsem-calculate-expression --paired-end -p "+CPU+" "+Output+"/SRR617145_1.fastq "+Output+"/SRR617145_2.fastq Trans_CDHIT.RSEM Trans_CDHIT.genes.results  \n"+
""+Trinprep+"/util/misc/count_features_given_MIN_FPKM_threshold.pl "+Output+"/"+Sample+"_RSEM/RSEM.genes.results > "+Output+"/"+Sample+"_RSEM/cumul_counts.txt \n"+
""+Trinprep+"/util/filter_fasta_by_rsem_values.pl --rsem_output= "+Output+"/"+Sample+"_RSEM/RSEM.isoforms.results --fasta="+Output+"/Trans_CDHIT.fasta -t 100 --output="+Output+"/"+Sample+"_RSEM/Trans_RSEMfilters.fasta \n" +
""+Trinprep+"/util/bowtie_PE_separate_then_join.pl --seqType fq --left "+Output+"/"+Sample+"_1.fasta --right "+Output+"/"+Sample+"_2.fasta --target "+Output+"/Trans_CDHIT.fasta --aligner bowtie --SS_lib_type FR -- -p 4 --all --best --strata -m 300 \n";  


    System.out.println(Trans_ref);

    FileUtils.writeStringToFile(new File(Output+"/TranRSEM"), Trans_ref);
    StringBuffer Trim = new StringBuffer();

    String cmd = (Output+"/TranRSEM");


Process p;

try{
    p = Runtime.getRuntime().exec(new String[]{"/bin/sh","-c", cmd});

    p.waitFor();

    BufferedReader reader1 = 
                    new BufferedReader(new InputStreamReader(p.getInputStream()));

        System.out.println("Merg Finished");

    } catch (Exception e) {
    e.printStackTrace();


    }

對所有人

非常感謝您的評論

我設法解決了這個問題。 我發現這是Java內存限制。 我通過在IDE(netbeans)的項目屬性中使用Xmx20000m命令解決了此問題。

這似乎解決了我的問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM