我是shell腳本的新手,所以這可能是一個愚蠢的問題。雖然我沒有在網上找到答案。我正在採取同事腳本並對其進行更改以使其適用於我的數據。現在我正在運行一個只使用三個數據文件的測試。代碼在腳本中經過一個for循環,並且它應該爲每個不同的文件運行一次(三次)。for循環中堆疊的文件名
listtumor=`cat /Users/TReiersen/Work-Folder/OV/DataProcessing/TestRun/MatchedTumorTest.txt`
for i in $listtumor
do
lst=`ls /Users/TReiersen/Work-Folder/OV/DataProcessing/TestRun/freshstart/${i}*.txt | awk -F'/' '{print $9}'`
MatchedTumorTest.txt只是包含了我使用的測試沒有「.TXT」至於我可以告訴三種不同的文件名,這個代碼應該只是通過腳本運行三次,每個文件。相反,我得到這個錯誤:
ls: /Users/TReiersen/Work-Folder/OV/DataProcessing/TestRun/freshstart/TCGA-04-1514-01A-01D-0500-02_S01_CGH_105_Dec08\rTCGA-04-1530-01A-02D-0500-02_S01_CGH_105_Dec08\rTCGA-04-1542-01A-01D-0500-02_S01_CGH_105_Dec08*.txt: No such file or directory
出於某種原因,所有的文件名都堆放在彼此的頂部,而不是循環將每個單獨的一個。任何想法爲什麼發生這種情況?
謝謝, T.J.
這也適用!我被要求不要使用while循環,所以我用它來代替。謝謝! – 2011-06-10 03:49:22