如何撤消上一个cd命令?

在对不同的目录执行cd之后,有没有办法跳回到上一个工作目录?

我的用例是我正在遍历Java项目的目录结构,我希望当前目录只有一个子目录。 所以,我输入cd并快速点击TabEnter 。 但是, Tab失败了,因为我错误地预期了一个子目录,实际上还有更多。 所以现在,我刚刚执行了cd ,现在在我的主目录中,而不是Java项目。 有没有办法“撤消”这个cd并跳回我所在的目录?

你可以使用cd -返回你以前的位置,无论它在哪里。

cd -非常适合返回一个级别,但如果您发现自己想要返回几个级别,请查看此脚本:

acd_func.sh

这很棒。 cd --查看你的历史记录,然后cd -3返回3个级别。

您还可以使用pushdpopd来利用目录堆栈:)

这里有一些信息

另外, cd ..可以带你回到工作目录的目录,然后必要时可以重复命令直到你到达你想去的地方。 事实上,每次被唤起它都会带你回到目录树, 如果你只是不断重复命令,它最终会在/ (根目录)完成。

相反cd -实际上使前一个工作目录成为当前工作目录(称为. ),并且可以使用pwd找到文件系统中的确切位置。

所以cd ..cd -在导航目录树时在不同情况下都很有用,尽管它们在上述方面确实不同 。 尝试使用这两个命令后,最有用的命令可能是cd ,它会返回到主文件夹。

返回的最佳方式是cd -但是如果你想一次跳过很多级别,你最好使用cd ..一个级别, cd ../.. ,两个, cd ../../.. for three and on …一个很好的方法来快速完成这个脚本:

 #!/bin/bash printf "Number of folders to move back: " read TIMES BACKCHARS=../ BACK=$(for i in `seq $TIMES`; do printf $BACKCHARS; done) cd $BACK