2011-10-08 24 views
0

我遇到了一個相當簡單的問題,但我一直無法解決它。我決定尋求一些幫助。我不是很好的腳本,我希望能在這個網站上找到一個撒瑪利亞人。 我有文件的格式如下:複製文件,然後根據以前的位置重新命名爲一個新文件夾(批次)

/test1/da/0/1/nnn.dat 
/test1/da/0/2/nnn.dat 
/test1/da/0/3/nnn.dat 
… 
/test1/da/y/n/nnn.dat 
/test1/da/y+1/n+1/nnn.dat 
/test1/da/y+1/n+2/nnn.dat 
… 
/test1/da/y+n/n+n/nnn.dat 

我要到位於每個子文件夾中的所有文件nnn.dat複製到/newfolder/nnn.dat以這樣的方式,每個nnn.dat被改名根據其例如位置:

/newfolder/0_1_nnn.dat 
/newfolder/0_2_nnn.dat 
/newfolder/0_3_nnn.dat 
… 
/newfolder/y_n_nnn.dat 

另外,我想和一個特定的字符集來替換nnn.dat文件的特定行號。

請幫助!

回答

0
for f in /test/da/*/*/*.dat; do 
    yn="${f##/test/da/}" 
    b="${yn##*/}" 
    yn="${y%/*}" 
    y="${yn%%/*}" 
    n="${yn##*/} 
    cp "$f" "/newfolder/${y}_${n}_${b}" 
done 
相關問題