0
我有一個腳本,做一個數據庫查詢(計數),但結果不是一個整數,我試圖與讓利,但有能力改變這一點,運氣好的話KSH返回值不是整數
SQL="SELECT COUNT(*), INTRUDER FROM intruders WHERE UUR BETWEEN '${START}' and '${EINDE}' GROUP BY INTRUDER;"
實際MySQL命令
RESULT=$(mysql -u ${MYSQLUSER} -p${MYSQLPWD} -h ${SERVER} ${DATABASE} -BsNe "${SQL}")
計算
for RECORD in ${RESULT}
do
let TOTAL=$(echo ${RECORD} | awk '{print $1}')
if [[ ${TOTAL} -ge ${MAXTRY} ]]; then
## Do something ....
echo ${RECORD} | awk '{print $2}'
fi
done
錯誤的循環: ./scrip t.sh [42]:let:TOTAL = 3 4:算術語法錯誤
Wha t是獲取該shell腳本值之前的RECORD的內容? – fpmurphy1 2014-10-10 13:04:27
這裏有不同的問題,你應該選擇另一種方法(在下面)。在填充RESULT變量時,您應該將正確的站點放在雙引號中以獲取所有行。這不會解決所有問題,for循環將空格和換行符視爲字段分隔符。 – 2014-10-10 21:34:21