想象一下,我使用的狀態文件來存儲一個數字,我讀到這樣的數字:atoi()函數在bash中嗎?
COUNT=$(< /tmp/state_file)
但由於該文件可能被打亂,$ COUNT可能不包含一個「數字」,但任何字符。
除了使用正則表達式,即if [[ $COUNT ~ ^[0-9]+$ ]]; then blabla; fi
,是否有一個「atoi」函數將其轉換爲數字(如果無效,則爲0)?
編輯
最後我決定用這樣的:
let a=$(($a+0))
或者
declare -i a; a="abcd123"; echo $a # got 0
由於J20的提示。
'echo「1a2」| bc'產生'(standard_in)1:解析錯誤' – jurgemaister
謝謝..編輯答案。 – loxxy