2016-07-07 206 views
1

我有一個包含gzipped數據文件的目錄。我想使用腳本est_abundance.py運行每個文件。但首先我需要解壓縮它們。所以我有這樣的bash:在bash腳本中循環

for file in /home/doy.user/scratch1/Secoutput/; do 
    cd "$file" 
    gunzip *kren.gz 
    python analysis1.py -i /Secoutput/*kren -k gkd_output -o /bracken_output/$(basename *kren).txt 
    wait 
done 

的問題是,在bash腳本不斷解壓所有的數據文件,它不會繼續到下一個命令解壓一個文件之後。 你能幫我解決這個問題嗎?我只想爲每個文件完成每個命令。

回答

0

使用,請注意,你應該使用$file變量,您可以通過使用剝離的${file%.gz}部分.gz解壓後得到的文件的名稱:

for file in /home/doy.user/scratch1/Secoutput/*; do 
    gunzip $file 
    python analysis1.py -i ${file%.gz} -k gkd_output -o /bracken_output/$(basename ${file%.gz}).txt 
    wait 
done