Shell

計算變數,並將其輸出到另一個變數

  • March 14, 2019

我知道的唯一計算器是bc. 我想添加1到一個變數,並輸出到另一個變數。

nextnum從文件中的字元串計數中得到了變數:

nextnum=`grep -o stringtocount file.tpl.php | wc -w`

可以說nextnum價值是1。當加上1,它會變成2。為了計算,我執行:

rownum=`$nextnum+1 | bc`

但出現錯誤:

1+1: command not found

我只是在計算部分失敗了。我已經嘗試更改反引號但仍然無法正常工作。我不知道如何計算變數並將其輸出到另一個變數。

中的子字元串 本身必須是有效的命令:

rownum=`echo $nextnum+1 | bc`

但最好使用$( )而不是

rownum=$(echo $nextnum+1 | bc)

但是不需要bc,shell 可以進行整數運算:

rownum=$((nextnum+1))

甚至更簡單的bashand ksh

((rownum=nextnum+1))

您還可以在 bash 中使用內置算術:

rownum=$((nextnum+1))

這會稍微快一點。

引用自:https://unix.stackexchange.com/questions/50215