Dan*_*Dan 23 command-line cd-command
我cd -今天错误地输入了终端,我收到一条错误消息:
bash: cd: OLDPWD not set
Run Code Online (Sandbox Code Playgroud)
不幸的是,man cd不存在。
No manual entry for cd
Run Code Online (Sandbox Code Playgroud)
它实际上有什么作用?
Avi*_*Raj 25
cd - 在旧的和新的当前工作目录之间切换。
avinash@avinash:~$ cd -
bash: cd: OLDPWD not set
avinash@avinash:~$ cd ~/Desktop
avinash@avinash:~/Desktop$ pwd
/home/avinash/Desktop
avinash@avinash:~/Desktop$ cd -
/home/avinash
avinash@avinash:~$
Run Code Online (Sandbox Code Playgroud)
也可以看看,
avinash@avinash:~$ echo $OLDPWD
avinash@avinash:~$ cd ~/Desktop
avinash@avinash:~/Desktop$ echo $OLDPWD
/home/avinash
avinash@avinash:~/Desktop$ cd d
avinash@avinash:~/Desktop/d$ echo $OLDPWD
/home/avinash/Desktop
avinash@avinash:~/Desktop/d$
Run Code Online (Sandbox Code Playgroud)
该$OLDPWD变量存储前一个当前工作目录的路径。
Oli*_*Oli 10
Avinash Raj 的回答是完全正确的,但至于手动输入,您可以获取 POSIX 手册页,然后man cd就可以使用了:
sudo apt-get install manpages-posix
man cd
Run Code Online (Sandbox Code Playgroud)
告诉你这一切的是操作数部分:
- When a hyphen is used as the operand, this shall be equivalent to the command:
cd "$OLDPWD" && pwd
which changes to the previous working directory and then writes its name.
Run Code Online (Sandbox Code Playgroud)