GNU/Linux >> Linux の 問題 >  >> Linux

シンプルなコマンドライン計算機?

問題:

時々、コマンドライン環境で簡単な演算を行う必要があります。例えば。次の出力が与えられます:

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
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

expr 236 - 192

スペースを入力する必要がある場所 expr 1+1としての演算子の前後 1+1をエコーするだけです 。

承認された回答:

bcの使用に伴う冗長性の量を大幅に減らすことができます :

$ bc <<<"236-192"
44
$ bc <<<"1+1"
2

(シェルがそれをサポートしていると仮定します。)

関数としてそれを使用したい場合:

$ c() { printf "%sn" "$*" | bc }
$ c 1+1
2

cを保存します いつでも利用できるようにしたい場合は、お気に入りのシェル起動ファイルで定義します。


Linux
  1. .htaccessを介した簡単なWebサイトのリダイレクト

  2. 簡単なPHPメールテスト

  3. シンプルなハードドライブのデータ回復

  1. Linuxターミナルでラジオを聞く

  2. Linuxのコマンドライン履歴

  3. Qalculate! –オープンソースの多目的計算機

  1. コマンドライン楕円曲線操作

  2. Linuxのコマンドラインテキストエディタ

  3. auditd 構成の簡単な例