PushdとPopdコマンドの使い方は?

PushdとPopdコマンドの使い方は?

両方の実際の用途は何ですかpushd?そして上記の2つのコマンドを使用すると、popdどのような利点がありますか?cdcd -

編集するcd -:これら2つのコマンドの実際の使用例やディレクトリとともにスタックを維持する理由(タブの完成、短縮エイリアスcd ..などがある場合)を探しています。

ベストアンサー1

pushdpopddirs操作できるシェル組み込み関数です。ディレクトリスタック。ディレクトリを変更するために使用できますが、元のディレクトリに戻ります。

例えば

次のディレクトリから始めます。

$ pwd
/home/saml/somedir
$ ls
dir1  dir2  dir3

dir1にプッシュ

$ pushd dir1
~/somedir/dir1 ~/somedir
$ dirs
~/somedir/dir1 ~/somedir

dirsこのコマンドは、スタックに2つのディレクトリがあることを確認します。dir1そして元のディレクトリであるsomedirメモ:私たちの「現在の」ディレクトリはです~/somedir/dir1

../dir3にプッシュされる(dir1今はその中にあるので)

$ pushd ../dir3
~/somedir/dir3 ~/somedir/dir1 ~/somedir
$ dirs
~/somedir/dir3 ~/somedir/dir1 ~/somedir
$ pwd
/home/saml/somedir/dir3

dirsディスプレイスタックには3つのディレクトリがあります。dir3、、、dir1そしてsomedir。方向に注意してください。各新しいディレクトリが左側に追加されます。ディレクトリポップアップを開始すると、左側にも表示されます。

手動でディレクトリを次に変更します。../dir2

$ cd ../dir2
$ pwd
/home/saml/somedir/dir2
$ dirs
~/somedir/dir2 ~/somedir/dir1 ~/somedir

それでは目次ポップアップを始めましょう。

$ popd
~/somedir/dir1 ~/somedir
$ pwd
/home/saml/somedir/dir1

突然戻ってきましたdir1

再び人気があります...

$ popd
~/somedir    
$ pwd
/home/saml/somedir

私たちは私たちが始めた場所に戻りましたsomedir

やや混乱するかもしれませんが、スタックのヘッドは現在存在するディレクトリです。somedirしたがって、再び戻ると、dirs次のようになります。

$ dirs
~/somedir

私たちのスタックは実際には空です。

$ popd
bash: popd: directory stack empty

おすすめ記事