プログラミング学習サイト

プログラミングの学習を開始される方を対象としたプログラミング入門サイトです。

cdコマンドのオプション一覧

参考 : https://ss64.com/bash/cd.html

cdコマンドとは

ディレクトリの変更 つまり、現在のワーキングディレクトリを変更します

cdコマンドのオプション

cdコマンドのオプションはほぼありません。

cd -P /path/to/symlink
cd -L /path/to/symlink

cdコマンド実行例

  • 引数なしで使用する場合は、ホームディレクトリに移動します。
cd
cd -
cd ..

cdコマンドは実際どう動いているのか?

  1. まずはOLDPWDに今いる作業ディレクトリのパス(環境変数PWD)を保存します。

  2. シェルの内部で chdir システムコールを使用してプロセスのカレントディレクトリを変更します。

  3. その後、環境変数PWDに現在の作業ディレクトリの絶対パスが保持されます。

  4. 次にcdコマンドを実行するときに、一個前いたディレクトリに移動する場合はcd - コマンドを実行するとOLDPWDを参照しています。

ちなみに、cdコマンドで「さらにより以前の作業ディレクトリ」に戻る機能は標準のシェルにはありません。

環境変数CDPATH

シェル変数CDPATHは便利な機能を提供します。この変数はパスに似ていますが、CDがサブディレクトリを検索するパスのリストを設定します。CDPATHは、現在のセッションで使用するためにコマンドラインに設定することができます。または、永久に使用するために.bash_profileでは、パスのリストはコロン分離(:)でなければなりません。

$ cdpath = "。:〜:〜/library"

dirがスラッシュ(/)で始まる場合、CDPATHは使用されません。

CDPATHの非空白のディレクトリ名が使用されている場合、または - 最初の引数であり、ディレクトリの変更が成功した場合、新しいワーキングディレクトリの絶対パス名は標準出力に書き込まれます。

ディレクトリが正常に変更され、それ以外の場合はゼロではない場合、返品ステータスはゼロです。

これは、Bashプロンプトタイプからローカル構文を表示するためのBash Shell Builtinです。

https://ss64.com/bash/cd.html