bash script 無法做 cp - Linux

Connor avatar
By Connor
at 2008-05-15T13:26

Table of Contents

Hi, 大家
今天真是見鬼了...

#!/bin/sh
JOB=$1
POTsrcdir=/opt/chem/MSI/MaterialsStudio/Data/Resources/Quantum/Castep/Potential
s/
m=`awk '/%BLOCK\ SPECIES_POT/ {print NR}' ${JOB}.cell`
n=`awk '/%ENDBLOCK\ SPECIES_POT/ {print NR}' ${JOB}.cell`

POTpos=$(($m+1))

for ((POTpos=$(($m+1)); POTpos<n; POTpos=POTpos+1 ))
do
sedPOT=${POTpos}p
POTname=`sed -n ${sedPOT} ${JOB}.cell | awk '{print $2}'`
POTsrc=${POTsrcdir}${POTname}
cp $POTsrc .
done

這段 code 主要是為了從某個檔案中找出特定檔名,再把它copy到現行目錄下,
可是執行後會出現

cp: cannot stat `/opt/chem/MSI/MaterialsStudio/Data/Resources/Quantum/Castep/Po
tentials/Ga_00.usp\r': No such file or directory
cp: cannot stat `/opt/chem/MSI/MaterialsStudio/Data/Resources/Quantum/Castep/Po
tentials/Ag_00.usp\r': No such file or directory
cp: cannot stat `/opt/chem/MSI/MaterialsStudio/Data/Resources/Quantum/Castep/Po
tentials/Te_00.usp\r': No such file or directory


檔案來源確實是存在的...

另外不曉得為什麼echo POTsrc 時看起來結果正確
可是 cp 時會在變數結尾多了一個 \r 的 escape character
另外我剛剛也沒查到 \r 在 bash script 裡代表了什麼...


懇請指點

謝謝


附上輸入檔的片段內容
%BLOCK SPECIES_POT
Ga Ga_00.usp
Ag Ag_00.usp
Te Te_00.usp
%ENDBLOCK SPECIES_POT

我就是要從這一個片段取出 Ga_00.usp 然後做複製的動作
script 中的 for loop 會自動把另外兩個 .usp 檔處理好...

--
Tags: Linux

All Comments

Caroline avatar
By Caroline
at 2008-05-20T10:47
awk '{print $2}' 改成 awk '{printf("%s",$2)}'
因為print就像echo會加\n

Ubuntu無線網路的怪問題

Annie avatar
By Annie
at 2008-05-15T12:15
之前一直測試失敗 結果後來想想 可能問題出現在延長線的身上 我是pc usb的線 現在抓到了 也可以上網 目前用無線網路上網 不過有件非常靈異的事 就是上網速度非常的慢 我是用10m/2m的 接fon 我有兩台電腦用無線 一台是XP很正常 沒事 這台的話就是下載速度非常的慢 但上傳確又相當正常 請問會是 ...

bash script 中變數跟字面常數相加的問題

Vanessa avatar
By Vanessa
at 2008-05-15T10:18
hi,大家 m=`grep -n %BLOCK\ SPECIES_POT ${JOB}.cell | sed and#39;s/:%BLOCK\ SPECIES_POT/ /gand#39;` n=`grep -n %ENDBLOCK\ SPECIES_POT ${JOB}.cell | sed and#3 ...

如何架設Mail server for linux

Oliver avatar
By Oliver
at 2008-05-15T08:36
※ 引述《jackypeter (jackypeter)》之銘言: : Dear every 高手: : 我以前是用window2003 andamp; exchange架mail server 其是用WINDOWS設定不太難 : 可是目前我的需求是要用LINUX來架SERVER : 可是linux的mail ...

fedora9新功能?

Lucy avatar
By Lucy
at 2008-05-15T07:44
安裝9之後 右上角(gnome介面)多了一個什麼網路連線的 不管怎麼使用都是錯誤... 現在似乎像是yum視窗介面的會卡在說啥網路連線沒有開啟 所以不給我安裝... 我知道描述的很模糊... 不過可能要有用的才知道... - ...

筆電+ubuntu7.10無線上網 抓不到網卡 뼠…

Tracy avatar
By Tracy
at 2008-05-14T23:48
小弟現在發現xp也有類似情況 然而就在我更新驅動程式後 就正常運作了!! 現在想問 我能不能夠強制在ubuntu下移除原本的無線晶片驅動程式 然後再將從lenovo網站下載的驅動程式給他灌下去 說不定就解決了 A__A 所以 請問指令如何打 = = 小弟已經耗很多時間 不想再找了 andgt; andl ...