Bagaimana saya bisa mendapatkan perilaku menggunakan popd
tanpa benar-benar membuka direktori terakhir dari stack? Dengan kata lain, saya ingin menavigasi kembali ke direktori terakhir yang saya set dengan pushd
, tetapi saya ingin tetap di bagian atas tumpukan sehingga selanjutnya popd
akan membawa saya ke direktori yang sama (yang masih akan berada di atas tumpukan) lagi.
command-line
bash
directory
navigation
Freedom_Ben
sumber
sumber
cd -
bekerja, tetapi hanya jika Anda tidak dicd
tempat lain sampai Anda siappopd
. Saya biasanya melompat-lompat ke beberapa tempat sebelum saya siap untuk kembaliJawaban:
Bagaimana tentang:
cd "$(dirs -l -p | sed -n '2{p;q}')"
sumber
peekd
(jenis C ++ STL-ish dan mudah bagi saya untuk mengingat), jadi saya bisa mengetikpeekd
untuk mendapatkan perilaku.alias peekd='cd "$(dirs -l -p | sed -n '\''2{p;q}'\'')"'
cd "$(dirs +1)"
<my directory>
mulai dengan tilde? Komentar saya di atas tidak ada-l
opsi untuk daftar direktori lengkap daripada menggunakan~
singkatan. Seharusnyacd "(dirs -l +1)"
pushd tanpa argumen menukar dua entri teratas pada stack, memungkinkan Anda untuk secara efektif bolak-balik di antara mereka.
Mulai dari d1, jalankan pushd d2 menambahkan d1 dan d2 ke stack dan membuat Anda dalam d2. Jalankan pushd lagi tanpa argumen, dan Anda kembali ke d1 dengan d1 dan d2 terbalik di tumpukan.
sumber
Jika saya mengerti dengan benar, Anda bisa
pushd .
saja setelahpopd
itupop
direktori ed akan ditempatkan lagi di bagian atas tumpukan.sumber