2017-06-07 68 views
0

您好,我正在嘗試編寫一個Bash腳本,它將循環訪問一個目錄,並通過命令行程序在該目錄中運行這些文件。Bash錯誤不能識別星號

不幸的是,當我運行它,我不斷收到

/home/user/Documents/Original_Files/*.fastq.gz:沒有這樣的文件或目錄

這裏是我的代碼

Origin=/home/user/Documents/Original_Files/*.fastq.gz 

for a in "$Origin" 
do 
BASE=basename "$a" 
nohup java -jar $ 
done 
+0

不要把$標記在$ Origin for循環中。 – ArturFH

+0

謝謝你的工作! – bohawk

回答

2

如果要在變量中保留多個值,請使用數組。

Origin=(/home/user/Documents/Original_Files/*.fastq.gz) 
for a in "${Origin[@]}" ; do 
    BASE=$(basename "$a") 
    nohup java -jar "$BASE"...