it-swarm-vi.com

Phím tắt bash để thay đổi thư mục trước là gì?

Đáng buồn thay, tôi chỉ biết về điều này năm ngoái bằng cách tình cờ tìm thấy nó trên internet. Tôi sử dụng nó không thường xuyên đến nỗi tôi luôn quên nó là gì khi tôi cần nó một lần nữa.

Làm thế nào để bạn thay đổi thư mục trước của bạn?

80
hobodave

Phím tắt là -

Thử cd -

Nếu bạn muốn sử dụng điều này trong Lời nhắc của mình, bạn phải tham khảo nó với ~-.

Xem ví dụ:

[[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

Bạn cũng có thể muốn xem pushdpopd, tạo ra một chồng thư mục để nhớ bạn đang ở đâu.

Để sử dụng, pushd <directory> thay đổi <directory> và lưu thư mục trước. Để thay đổi trở lại thư mục đã lưu này, hãy sử dụng popd.

22
Rich Homolka

Theo câu trả lời của @echox, bạn thực sự có thể sử dụng cd - Làm trang man cho bash giải thích:

Khi a được sử dụng làm toán hạng, điều này sẽ tương đương với lệnh:

                cd "$OLDPWD" && pwd

thay đổi thư mục làm việc trước đó và sau đó viết tên của nó.

Lưu ý thư mục đã thay đổi là đầu ra của pwd trong cd -. Bạn có thể không muốn đầu ra đó trong một tập lệnh. Đó là nơi mà sự thay thế trở nên hữu ích - chỉ cần làm

cd "$OLDPWD"

và bạn đã hoàn tất!

3
starfry