Command-Line

使用 bash 函式在命令行上進行簡單的數學運算:1天我是我_和_由_1d一世v一世d和db和1 divided by2(也許使用 bc)

  • March 7, 2018

有時我需要將一個數字除以另一個數字。如果我可以為此定義一個 bash 函式,那就太好了。到目前為止,我被迫使用像

echo 'scale=25;65320/670' | bc

但如果我可以定義一個看起來像的 .bashrc 函式那就太好了

divide () {
 bc -d $1 / $2
}

我有一個方便的 bash 函式,稱為calc

calc () {
   bc -l <<< "$@"
}

範例用法:

$ calc 65320/670
97.49253731343283582089

$ calc 65320*670
43764400

您可以更改此設置以適合自己。例如:

divide() {
   bc -l <<< "$1/$2"
}

注意: <<<是一個輸入到標準輸入中的字元串bc。您不需要呼叫echo.

Bash 可以在某種程度上自己計算。但是,它對準確性沒有用,因為它是四捨五入的。

[user]$ echo $(( 10/5 ))
2

但你是完全正確的 - bash 函式將是一個簡單的快捷方式,你的範例基本上可以工作。

divide() {
 echo "scale=25;$1/$2" | bc
}

將其放入您的 .bashrc 中,然後您可以:

[user]$ divide 10 5
2.0000000000000000000000000

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