作者slchen1013 (aa)
看板Linux
標題[問題] bash script 中變數跟字面常數相加的問題
時間Thu May 15 10:18:18 2008
hi,大家
m=`grep -n %BLOCK\ SPECIES_POT ${JOB}.cell | sed 's/:%BLOCK\ SPECIES_POT/ /g'`
n=`grep -n %ENDBLOCK\ SPECIES_POT ${JOB}.cell | sed 's/:%ENDBLOCK\ SPECIES_POT/
/g'`
POTpos=$(($m+1))
echo $m
echo $n
echo $POTpos
如上, 我用 grep 從某個檔案的找出特定 pattern 所在的行數,
然後存在 m 跟 n
接下來我要把 m + 1, 所以我就用了 POTpos=$(($m+1))
可是 echo 出來的值卻是空的
鳥哥的網頁上有一種方式是要把 m= 那行加上 declare -i m= , n= 那行也是一樣..
不過我加了之後會出現
")syntax error: operand expected (error token is "
")syntax error: operand expected (error token is "
不曉得各位前輩有什麼提示?
謝謝...
----
ps: bash 的版本是 3.0
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 163.13.111.50
1F:→ MOONRAKER:你應該要拿掉後面那個 $ 吧 錢太多是沒有用的 05/15 10:30
2F:→ slchen1013:謝謝您, 但是改成 POTpos=$((m+10)) 還是沒用 05/15 10:55
3F:推 dozer:後面那個錢也不需要吧 05/15 14:17