首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我需要了解bash编程中两个命令之间的区别,以及是什么原因导致它们之间的差异

我需要了解bash编程中两个命令之间的区别,以及是什么原因导致它们之间的差异
EN

Stack Overflow用户
提问于 2015-09-09 13:28:30
回答 3查看 77关注 0票数 1

命令cd ../dir2cd ..; cd dir2等效。但是,如果下一次发出命令cd -,则结果会有所不同。

为什么?

EN

回答 3

Stack Overflow用户

发布于 2015-09-09 13:37:19

cd -会将当前目录更改为其历史记录中的最后一个目录。在执行第一个命令cd ../dir2之后,cd -将读取的最后一个目录是您最初所在的同级目录。同时,cd ..; cd dir2执行两个单独的命令,因此两次写入历史,并使最后一个目录成为父目录而不是兄弟目录。

看看这个:What does 'cd -' stand for?

票数 5
EN

Stack Overflow用户

发布于 2015-09-09 13:30:41

cd实用程序只记住最后一个目录。在第二个示例中,它记住了执行cd dir2时它所在的位置;在第一个示例中,它记住了执行cd ../dir2时它所在的位置。所以cd -必然会给出不同的结果。

票数 2
EN

Stack Overflow用户

发布于 2015-09-09 13:46:29

根据bash manual的说法

  1. OLDPWD是由cd命令设置的前一个工作目录。(请参见bash variables)
  2. cd -等同于cd $OLDPWD。(请参阅shell builtins)
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32471540

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档