我想運行一個需要幾個參數的命令行腳本。具體做法是:如何將多個輸入流用於輸入參數?
perl的prinseq-lite.pl -fastq file1.fq.gz -fastq2 file2.fq.gz
\ -out_good goodfile.out -out_bad badfile.out -log prin.log
\ -ns_max_n 5 ... ... more_params
的問題是,該文件是壓縮的,且必須先解壓縮並存儲它們進行處理,因爲解壓縮後的文件大小是非常大的,這個命令將在大量文件上運行。
所以我需要做的是解壓縮輸入。以前,用戶l0b0建議多個輸入流可能是一個解決方案。我已經嘗試了以下內容,但是由於該程序聲稱輸入文件是空的,所以似乎在這裏傳遞了一個空輸入流。
perl的prinseq-lite.pl -fastq <(ZCAT f1.gz)-fastq2 <(ZCAT f2.gz)...
perl的prinseq-lite.pl -fastq 1 < <(ZCAT f1.gz)-fastq2 2 < <(ZCAT f2.gz)...
所以我需要做的,總之,是多個參數,該程序提供解壓的輸入。
有人可以告訴我這樣做的正確方法,和/或我做錯了我目前的嘗試?預先感謝您的意見。
令人懷疑他們是*空*。然而,他們將會是*不可搜尋*;如果你的'prinseq-lite.pl'需要能夠在文件內部尋找或者多次讀取它,那*會是一個問題。 –
......這就是說,我們實際上需要更多關於您的特定Perl腳本的內容來很好地回答這個問題。 –
(同樣,如果你的程序試圖讀取輸入文件的長度,以提供狀態信息,*那將*失敗過,我能看到的東西寫草率處理,同樣爲空)。 –