'Cd -' là viết tắt của gì?


95

Trong một kịch bản bash shell hôm nay, tôi nhận thấy lệnh bên dưới ở cuối tập lệnh. Tôi biết là gì cdnhưng tôi không biết ý nghĩa của dấu gạch ngang sau nó.

cd -

Điều đó có nghĩa là gì? Google đã cắt ngắn một cách ngây thơ -vì vậy tôi không thể tìm thấy câu trả lời của nó.


@nm Không man cdtrên máy của tôi, FYI.
Dan Fego

Đã thử điều đó. Nó sẽ trở lại các đĩa CD-rom, đĩa nhỏ gọn, vv
AppleGrew

2
Bạn cũng có thể muốn xem các lệnh pushdpopd. Tôi không thể sống thiếu chúng.
Brett Hale

2
@nm - cdkhông phải là một mã nhị phân bên ngoài, nó là một lệnh được tích hợp sẵn trong shell. gợi ý man bash.
jordanm

Tôi có man cdtrên hệ thống của mình (Gentoo), nó nói: This manual page is part of the POSIX Programmer's Manualvv vv Nếu bạn bị thiếu, bạn luôn có thể google man cd.
n. 'đại từ' m.

Câu trả lời:


127

Nếu một dấu gạch ngang được chỉ định làm đối số, thì nó sẽ được thay thế bằng giá trị của OLDPWD.

Các OLDPWDđược thiết lập bởi cdlệnh và nó là thư mục làm việc trước đó.


2
Cảm ơn. Điều này ngắn gọn và theo quan điểm của lập trình viên, hoàn chỉnh.
AppleGrew

điều gì xảy ra nếu chúng tôi cung cấp -dưới dạng tệp.
viveksinghggits

@viveksinghggits Bạn có thể sử dụng cd ./-hoặc để xóa nó, bạn có thể thoát khỏi nó vớirm -fr -- -
Sandro Munda

20

cd - trở lại thư mục bạn đã ở trước đó.

Ví dụ:

marcelo @ marcelo: ~ $ cd / opt
marcelo @ marcelo: / opt $ cd / usr / bin
marcelo @ marcelo: / usr / bin $ cd -
/opt
marcelo @ marcelo: / opt $ 

Tôi đã tham gia / opt, đổi thành / usr / bin và sau đó quay lại / opt với cd -


10

cd - đưa bạn trở lại thư mục cuối cùng.

$ cd ~/Desktop
$ pwd
/Users/daknok/Desktop
$ cd /
$ pwd
/
$ cd -
$ pwd
/Users/daknok/Desktop

6

cd - trở lại thư mục trước đó mà bạn đã ở.

Nói rằng tôi tham gia /usr/và tôi nhậpcd /var/local/someplace/else

Sau đó, tôi sử dụng, cd -tôi sẽ trở lại/usr


6

Từ sách hướng dẫn

Đối số của - tương đương với $ OLDPWD. Nếu tên thư mục không trống từ CDPATH được sử dụng hoặc nếu - là đối số đầu tiên và thay đổi thư mục thành công, thì tên đường dẫn tuyệt đối của thư mục làm việc mới sẽ được ghi vào đầu ra chuẩn. Giá trị trả về là true nếu thư mục đã được thay đổi thành công; sai khác

Do đó, -tương đương với $OLDPWD, giữ thư mục cuối cùng mà trình bao ở trong và được đặt bởi cdlời gọi trước đó .



2

cd - đưa bạn trở lại thư mục cuối cùng. ví dụ

cd ~/Documents
cd ~
cd /

Bây giờ bạn đang ở trong '/', và nếu bạn chạy 'cd -', bạn sẽ ở trong '~'. BTW, chạy 'cd -' một lần nữa, bạn sẽ quay lại '/' chứ không phải '~ / Documents'


-1

“Thư mục hiện tại“ Là lệnh đầu cuối cd bash nghĩa là gì. Nó có nghĩa là "giữ cho tôi trong danh bạ này"


cd có nghĩa là "Thay đổi thư mục"!
Reyhaneh Trb
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.