コマンドライン計算機をbashに追加するにはどうすればよいですか?いくつか見つけましたが、すべて 小数点としてピリオド を使用していますが、小数点としてコンマ)を使用するようにしたいです世界のほとんどがそうであるように、写真を参照してください:
(ソースウィキペディア)
私が見つけたもの(すべて小数点としてピリオド付き)は次のとおりです。これらの行は~/.bashrc
ファイルに入れる必要があります。
Bcを使用すると、途方もなく大きな数を計算できるという利点があります。
calc () {
bc -l <<< "$@"
}
Awkを使用すると、三角関数やその他の関数のニーモニック名があり、分数の指数を使用できます。また、入力が難しい一部のキーボードでは、**
の代わりに2つの文字^
で指数を指定できます。
calc () {
awk "BEGIN { print $* ; }"
}
私は解決策を見つけました。
calc () {
awk '
function asin(x) { return atan2(x, sqrt(1-x*x)) }
function acos(x) { return atan2(sqrt(1-x*x), x) }
function atan(x) { return atan2(x,1) }
function tan(x) { return sin(x)/cos(x) }
BEGIN { pi=atan(1)*4; print '"$(echo "$@" | tr , .)}" | tr . ,
}
これです
それを実装する信頼できる方法はありません。問題は、複数の引数が関数に渡されるときに、引数を区切るためにコンマが使用されることです。
このような関数を使用しない場合、最も簡単な方法は次のようになると思います。
calc () {
echo "scale=6;" "$@" | tr , . | bc -l | tr . ,
}
それは与える:
$ calc 1 + 1
2
$ calc 1 / 3
,333333
$ calc "s(0,5)^2" # sin(0.5)^2
,229848
$ calc "4*a(1)" # PI
3,141592
もちろん、ここでは6桁の小数精度を上げることができます。