2017-03-02 39 views
0
#!/bin/bash 

for FILE in *1000000.wgt; do 
    BASE=${FILE%1000000.wgt} 
    [[ -e $BASE.trs && -e $BASE.1000000.wgt ]] && cp "$FILE" "$BASE.trs" "$BASE.wav" /some/dir 
done 
+0

請解釋你的問題。 – proudandhonour

+0

你的意思是'cat * 1000000.prm> ../ asd/full.rpm'? – akg

+0

我想複製所有以100000.prm結尾的文件。即「* 100000.prm」替換爲'100000'替換爲'完整'的相同位置。有沒有辦法通過命令行來完成它? –

回答

0

此腳本根據您的提交進行操作。

例如:'xyz_100000.prm'將被複制到名稱'xyz_full.prm'在相同的位置。

#!/bin/sh 

IFS=$'\n' 

for FILE in *1000000.prm; do 
    new_name=$(echo "$FILE" | sed "s/1000000.prm$/full.prm/") 
    cp "$FILE" "$new_name" 
done 

示範:

➜ ls 
a1000000.prm b1000000.prm copy.sh 
➜ ./copy.sh 
➜ ls 
afull.prm bfull.prm copy.sh 
0

我建議這樣的:

for i in *1000000.prm; do mv $i ${i%1000000.prm}full.prm; done 

閱讀Parameter expansion部分從bash手冊頁。

相關問題