popd
スポンサーリンク
何するコマンド?
書き方
popd [オプション]
オプション
| オプション | 説明 |
|---|---|
| +【数字】 | スタックの先頭から【数字】番目のディレクトリを取り出す(先頭は0) |
| -【数字】 | スタックの末尾から【数字】番目のディレクトリを取り出す(末尾は0) |
| -p | ディレクトリを取り出した後、スタックの中身を表示する |
| -l | スタック内のディレクトリを絶対パスで表示する |
| -v | スタックの中身を1行1ディレクトリ、かつ番号付きで表示する |
補足事項
popd +1
のようにスタック内の番号を指定することで任意のディレクトリを取り出せます。
引数なしで
popd
を実行すると先頭のディレクトリを取り出します。
例えばスタックの中身が
/dir1 /dir2 /dir3
だった場合、
popd
を実行するとスタックの中身が
/dir2 /dir3
となり「/dir1」へ移動します。
再度
popd
を実行するとスタックの中身が
/dir3
となり「/dir2」へ移動します。
ちなみにディレクトリを記憶させる場合は「pushd」コマンドを使います。
「pushd」と「popd」でワンセットです。
「pushd」コマンドで記憶させたディレクトリを「popd」コマンドで取り出す場合、取り出す順番は記憶させた順番と逆順になります。
ご注意ください。
例えば
pushd /dir1
pushd /dir2
pushd /dir3
実行後のスタックの中身は
/dir3 /dir2 /dir1
に なります。
この状態で
popd
popd
popd
を実行すると
・「/dir3」に移動(スタックの中身「/dir2 /dir1」)
・「/dir2」に移動(スタックの中身「/dir1」)
・「/dir1」に移動(スタックの中身「何もなし」)
のような動きになります。
最初に突っ込まれたものは奥に押し込まれているイメージですね。
手前から順に取り除いていきます。
あと余談ですが「popd」は(多分)「pop directory(ポップ・ディレクトリ)」の略です。
