2017-06-02 15 views
0

ファイルタイプに応じて一連のファイルをループするbashスクリプトを作成しようとしていますが、ファイル名でディレクトリを作成してからjavascriptで実行します。作成したディレクトリに出力します。Unix Bashスクリプトは実行中ですが、出力はありません

#!/bin/bash 

FILES=/home/ndevon/BRAD/Original_Files/*60_R1.fastq.gz 
for f in $FILES 
do 
    echo mkdir $f 
    echo nohup /home/pszoevenyi/executables/FastQC/./fastqc [-t 2] [-o $f] [- 
f fastq] $f & 
done 

しかし、これを実行するとすべて正常に動作するように見えますが、出力はありません。私はps xを使ってアクティブなジョブをチェックして、キューに-bashコマンドタイプがあると伝えますが、ステータスはSsです。私はUNIXとbashにはまだまだ新しく、今日は実際に始まったが、なぜこれが動作しないのか分からない。

おかげ

+0

「mkdir/home/ndevon/BRAD/Original_Files/* 60_R1.fastq.gz'」が表示されていても、何らかの出力が得られるはずです。 、そしてあなたがこれをどうやって走っているのか。私が見ることのできるいくつかの問題:ファイル名などにmkdirを実行しようとしています。ファイル名にスペースが含まれていると問題が発生しますが、そうしないと仮定します。 – blackghost

+0

はい、出力が表示されます。しかし、別の問題があります。既存のファイルと同じ名前のディレクトリを作成しようとします。これは動作しません。 – linuxfan

+0

活発な仕事をしていますか?あなたは仕事や仕事で、バックグラウンドジョブを意味しますか? – alvits

答えて

0

はあなたが必要といけないの「エコー」あなたが実行した各コマンド。エコーなしで実行するだけで、出力が表示されます。

これを実行しようとしましたか?

+1

申し訳ありませんが、この回答はコメントでなければなりません。さらに、OPはループをテストするためにおそらくエコーを使用しました。私はあなたの答えを削除することをお勧めします。 – linuxfan

+0

システムがそれを許すならば、私はコメントを追加するのがいいだろう。しかし、それは新しい人が見ること以外に何もしないようです。 –

+1

私はあなたの問題を理解していますが、1)忍耐強く、コメントを投稿することができます。 2)私はこれを繰り返すが、これは十分な答えではない - それはほとんど間違っている。 – linuxfan

0

出力が全く表示されない場合は、ループがまったく実行されなかったことを意味します。おそらく、/home/ndevon/BRAD/Original_Files/*60_R1.fastq.gzファイルではないので、ループは単純にエコーやエラーメッセージなしでスキップされます。

+0

間違っています。ファイルがない場合、 'FILES'と' f'は両方ともリテラル値 '/ home/ndevon/BRAD/Original_Files/* 60_R1.fastq.gz'を持ちます。ループはたった1回実行されます。 – alvits

関連する問題