Linux units コマンド

Linux 命令大全Linux コマンド大全


units は Linux システム上で強力な単位変換ツールであり、長さ、重さ、温度、速度、時間などさまざまな物理量間の変換を処理できます。このコマンドラインツールは、エンジニア、科学者、複雑な単位換算が必要な技術者に特に適しています。

units コマンドの特徴:

  • 3000 種類以上の単位の変換に対応
  • 複合単位の計算が可能(例:ワット時をジュールに変換)
  • ユーザーが独自の単位を定義可能
  • 対話モードとコマンドラインの2つの使用モードを提供

units コマンドのインストール

ほとんどの Linux ディストリビューションではデフォルトで units がインストールされていないため、手動でインストールする必要があります:

例

# Debian/Ubuntu システム
sudo apt-get install units

# CentOS/RHEL システム
sudo yum install units

# Fedora システム
sudo dnf install units

# Arch Linux システム
sudo pacman -S units

インストール後、次のコマンドでインストールが成功したか確認できます:

units --version

基本的な使い方

units コマンドには、対話モードと非対話モードの2つの主な使用方法があります。

対話モード

直接入力unitsコマンドで対話モードに入ります:

例

$ units
2861 units, 109 prefixes, 109 nonlinear units

You have:

プロンプトの後に変換したい単位を入力します。例:

You have: 1 mile
You want: km
        * 1.609344
        / 0.62137119

出力結果の中で:

  • *後ろの数字は乗算係数を表します(1マイル = 1.609344キロメートル)
  • /後ろの数字は逆数係数を表します(1キロメートル = 0.62137119マイル)

非対話モード

コマンドラインで直接変換を完了できます:

units "1 mile" "km"

出力結果は対話モードと同じです。


一般的な単位変換の例

長さの単位変換

例

# インチをセンチメートルに変換
$ units "12 inch" "cm"
        * 30.48
        / 0.032808399

# フィートをメートルに変換
$ units "6 feet" "meters"
        * 1.8288
        / 0.54680665

温度の単位変換

例

# 華氏を摂氏に変換
$ units "98.6 degF" "degC"
        * 37
        / 0.027027027

# ケルビンを摂氏に変換
$ units "300 K" "degC"
        * 26.85
        / 0.037243908

速度の単位変換

例

# マイル/時をキロメートル/時に変換
$ units "60 mph" "kph"
        * 96.56064
        / 0.010356187

# ノットをメートル/秒に変換
$ units "15 knots" "m/s"
        * 7.7166667
        / 0.12958963

データ容量の単位変換

例

# ギガバイトをメガバイトに変換
$ units "1 gibibyte" "megabyte"
        * 1073.7418
        / 0.00093132257

# 注意:units はデフォルトで2進接頭辞(1024を基数)を使用します
# 10進接頭辞(1000を基数)を使用する場合は、'megabyte' ではなく 'megabytes' を使用します

高度な機能

複合単位の変換

units は複雑な複合単位を処理できます:

例

# キロワット時をジュールに変換
$ units "1 kWh" "joules"
        * 3600000
        / 2.7777778e-07

# 重量ポンド毎平方インチをパスカルに変換
$ units "1 psi" "pascal"
        * 6894.7573
        / 0.00014503774

カスタム単位

できます~/.unitsファイル内で独自の単位を定義します。例えば、「サッカーフィールド」という単位を追加する場合:

footballfield 100 m

これで使用できます:

例

$ units "1 footballfield" "km"
        * 0.1
        / 10

通貨変換(オンライン接続が必要)

units は通貨変換に対応していますが、最新の為替レートを取得するにはオンライン接続が必要です:

$ units "100 USD" "EUR"

注意:通貨変換機能は一部のシステムでは利用できない場合や、追加設定が必要な場合があります。


実用的なヒント

  1. 利用可能な単位リストを表示:対話モードで入力すると? 或 helpヘルプ情報を表示できます

  2. あいまい検索:単位名の一部を入力して Tab キーを押すと自動補完されます

  3. コマンド履歴:対話モードでは上下矢印キーでコマンド履歴を表示できます

  4. 出力の精密制御:使用する-vパラメータでより詳細な情報を表示します

units -v "1 lightyear" "km"
  1. 単位の互換性の確認:使用する-cパラメータは変換せずに単位の互換性のみをチェックします
units -c "joules" "watt hours"

よくある質問と回答

一部の単位変換結果が不正確なのはなぜですか?

units は事前定義された単位データベースを使用します。一部の変換(特に通貨)には精度の制限があったり、近似値が使用される場合があります。正確な科学計算には、専門の参考資料を参照することをお勧めします。

単位データベースを更新するには?

単位データベースは通常、/usr/share/units/definitions.unitsにあります。このファイルを手動で編集するか、システムの更新を待つことができます。

一括変換は可能ですか?

shell スクリプトと units コマンドを組み合わせて一括変換を実現できます:

例

#!/bin/bash
for value in 1 2 5 10; do
    result=$(units "$value feet" "meters" | awk 'NR==1 {print $2}')
    echo "$value feet = $result meters"
done

まとめ

units コマンドは Linux システム上で強力かつ柔軟な単位変換ツールであり、さまざまな科学的・工学的・日常的な計算シーンに適しています。この記事の説明を通じて、以下を習得できたはずです:

  1. units コマンドの基本的なインストール方法と使用方法
  2. 一般的な物理量の単位変換テクニック
  3. 複合単位変換やカスタム単位などの高度な機能
  4. 実際の応用における実用的なヒントと問題解決方法

units コマンドのさらなる機能を詳しく知るには、マニュアルページを参照してください:

man units

さあ、units コマンドを使って次の単位変換問題を解決してみましょう!


Linux 命令大全Linux コマンド大全

その他の拡張