在今天的 bash shell 脚本中,我注意到脚本末尾有以下命令。我知道什么是 cd,但我没有意识到它之后的破折号的意义。
cd
cd -
这是什么意思? 谷歌天真地截断了 -,所以我无法找到它的答案。
-
cd -返回到之前的目录。
例如:
marcelo@marcelo:~$ cd /opt marcelo@marcelo:/opt$ cd /usr/bin marcelo@marcelo:/usr/bin$ cd - /opt marcelo@marcelo:/opt$
我在/opt 中,更改为/usr/bin,然后返回到/opt 与 cd -
如果指定一个破折号作为参数,它将被值 OLDPWD替换。
OLDPWD
OLDPWD是由 cd命令设置的,它是以前的工作目录。
cd -返回到您之前所在的目录。
假设我在 /usr/中输入 cd /var/local/someplace/else
/usr/
cd /var/local/someplace/else
然后我使用 cd -,我将返回到 /usr
/usr
cd -将您带回到最后一个目录。
$ cd ~/Desktop $ pwd /Users/daknok/Desktop $ cd / $ pwd / $ cd - $ pwd /Users/daknok/Desktop
来自这里发现的人: http://ss64.com/bash/cd.html
Quickly get back $ cd -
手册上说的
- 的参数等效于 $OLDPWD name from CDPATH is used, or if - is the first argument, and the 目录更改成功后,新的 工作目录被写入标准输出 如果目录成功更改,则 value 为 true; 否则
Therefore the - is equivalent to the $OLDPWD, which holds the last directory which the shell was in, and is set by the previous cd invocation.
$OLDPWD
带你回到最后一个目录。 例如:。
cd ~/Documents cd ~ cd /
Now you are in '/', and if you run 'cd -' you will be in '~'. BTW, run 'cd -' once again, you will return to '/' but not '~/Documents'
“工作目录”就是 bash cd 终端命令的意思。它的意思是“让我在这个目录”