it-swarm-id.com

Apa pintasan bash untuk mengubah ke direktori sebelumnya?

Sayangnya, saya baru tahu tentang ini tahun lalu dengan menemukan secara acak di internet. Saya jarang menggunakannya sehingga saya selalu lupa apa itu ketika saya membutuhkannya lagi.

Bagaimana Anda mengubah ke direktori Anda sebelumnya?

80
hobodave

Pintasannya adalah -

Coba cd -

Jika Anda ingin menggunakannya di Prompt, Anda harus merujuknya dengan ~-.

Lihat contohnya:

[[email protected] ~]$ cd /tmp
[[email protected] tmp]$ ls
cron.iddS32  serverauth.CfIgeXuvka
[[email protected] tmp]$ cd -
/home/echox
[[email protected] ~]$ ls ~-
cron.iddS32  serverauth.CfIgeXuvka
110
echox

Anda mungkin juga ingin melihat pushd dan popd, yang membuat tumpukan direktori untuk mengingat di mana Anda berada.

Menggunakan, pushd <directory> berubah menjadi <directory> dan menyimpan direktori sebelumnya. Untuk mengubah kembali ke direktori yang disimpan ini, gunakan popd.

22
Rich Homolka

Sesuai jawaban oleh @echox, Anda memang bisa menggunakan cd - sebagai halaman manual untuk bash menjelaskan:

Ketika a digunakan sebagai operan, ini harus setara dengan perintah:

                cd "$OLDPWD" && pwd

yang berubah ke direktori kerja sebelumnya dan kemudian menulis namanya.

Perhatikan bahwa direktori yang diubah ke adalah keluaran oleh pwd yang melekat dalam cd -. Anda mungkin tidak ingin output itu dalam skrip. Di situlah alternatif menjadi berguna - lakukan saja

cd "$OLDPWD"

dan kamu selesai!

3
starfry