ホーム > 環境・ユーティリティ > true

true: 常に成功するコマンド

trueコマンドは何も実行せずに常に成功(終了コード 0)状態で終了します。主にシェルスクリプトで条件分岐やループの制御フローを操作したり、特定のコマンドの成功を強制したりする際に使用されます。

概要

trueはUnixおよびUnix系オペレーティングシステムで使用される基本的なユーティリティです。このコマンドは常に成功した終了状態(0)を返します。これはシェルスクリプトで論理条件を満たしたり、無限ループを作成したりする目的で活用されます。

主な用途

  • シェルスクリプトで常に真となる条件を提供する
  • 無限ループを作成する (例: while true)
  • コマンドチェーンで成功する開始点を提供する (例: true && command)
  • テストおよびデバッグ目的

主なオプション

trueコマンドは機能的なオプションを持たず、引数も処理しません。標準ユーティリティとして `--help` と `--version` オプションのみをサポートします。

情報

生成されたコマンド:

コマンドを組み合わせてみてください。

説明:

`true` コマンドを実行します。

これらのオプションを組み合わせて、AIと一緒に仮想的にコマンドを実行してみてください。

使用例

trueコマンドがシェルスクリプトやターミナルでどのように活用できるかを示す例です。

基本使用

true
echo $?

trueコマンドは常に終了コード 0 を返します。echo $? で終了コードを確認できます。

while ループでの使用

while true; do
  echo "このメッセージは繰り返し表示されます。"
  sleep 1
done

無限ループを作成する際に便利です。Ctrl+C で終了する必要があります。

条件分岐での使用

if true; then
  echo "このメッセージは常に表示されます。"
fi

常に真となる条件を作成する際に使用します。

論理演算子との併用

true && echo "trueは常に成功するため、このメッセージは表示されます。"

他のコマンドの実行を保証したり、特定の条件が常に真であることを示す際に使用します。

ヒントと注意点

trueコマンドはシンプルですが、スクリプト作成時に非常に便利に活用できます。

falseコマンドとの比較

trueは常に成功(終了コード 0)を返しますが、falseは常に失敗(終了コード 1)を返します。これら2つのコマンドは、シェルスクリプトの論理フロー制御において相互に補完的に使用されます。

  • true: 終了コード 0 (成功)
  • false: 終了コード 1 (失敗)

パフォーマンス

trueコマンドは非常に軽量で高速に実行されます。システムリソースをほとんど消費しないため、スクリプト内で頻繁に呼び出されてもパフォーマンスへの影響は軽微です。

組み込みコマンド vs 外部コマンド

ほとんどのシェル(bash, zshなど)では、trueはシェルの組み込みコマンド(built-in)として提供されており、より高速に実行されます。しかし、/bin/trueのような外部実行ファイルとしても存在します。


同じカテゴリのコマンド