2012-03-08 119 views
0

場景:bash腳本xls2csv

Linux系統中的文件夾。我想遍歷文件夾中的每個.xls文件。

此文件夾通常由各種文件夾,各種文件類型(.sh,.pl,.csv,...)組成。

我想要做的就是遍歷根中的所有文件,並僅在.xls文件中執行程序。

xls2csv是程序我需要運行

例如:

我有300個在目錄的/ home/ftp_account/USER1高達user300 W/C包含了每一個文件夾中的.xls文件,我想轉換所有.xls文件然後將轉換後的文件移動到/ home/ftp_account/USER1 /轉換

請注意:轉換後的文件爲USER1會去到/ home/ftp_users/USER1 /轉換

文件,對於user2會轉到/ home_ftp_users/user2/convert ed 文件爲user3將去/ home_ftp_users/user3 /轉換 等....

請幫助!

謝謝你們:)

回答

3
#!/bin/bash 
for dir in /home/ftp_users/user{1..300}; do 
    for file in $dir/*.xls; do 
    fn=$(basename ${file}) 
    fn=${fn%.*} 
    mkdir -p $dir/converted 
    xls2csv $file > $dir/converted/${fn}.csv 
    done 
done