質問:
時には、コマンドライン環境で簡単な算術演算を実行する必要があります。 EGは次の出力を提供します。
Disk /dev/sdb: 256GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name Flags
1 1049kB 106MB 105MB fat32 hidden, diag
2 106MB 64.1GB 64.0GB ext4
3 64.1GB 192GB 128GB ext4
5 236GB 256GB 20.0GB linux-swap(v1)
簡単な計算方法はありますか?コマンドラインからパーティション 3 と 5 の間の未割り当てスペースのサイズはどのくらいですか?
私が試したこと:
紀元前
bc
bc 1.06.95
Copyright 1991-1994, 1997, 1998, 2000, 2004, 2006 Free Software Foundation, Inc.
This is free software with ABSOLUTELY NO WARRANTY.
For details type `warranty'.
236-192
44
quit
どこ勇敢な236-192
上記は簡単なbc 1+1
エコーのために入力する必要があるすべてです。File 1+1 is unavailable.
表現
expr 236 - 192
どこに入るの?スペースbeforeとafter演算子もexpr 1+1
同様にエコーです1+1
。
ベストアンサー1
以下を使用すると、関連する詳細を減らすことができますbc
。
$ bc <<<"236-192"
44
$ bc <<<"1+1"
2
(シェルがこれをサポートすると仮定)。
関数として使用するには:
$ c() { printf "%s\n" "$@" | bc -l; }
$ c 1+1 22/7
2
3.14285714285714285714
(-l
標準数学ライブラリを有効にし、基本倍率を20に増やします。)
c
定義を常に使用できるようにするには、お気に入りのシェル起動ファイルに定義を保存します。