![Windows命令行可以支持Linux“cd -”吗?](https://linux22.com/image/1224582/Windows%E5%91%BD%E4%BB%A4%E8%A1%8C%E5%8F%AF%E4%BB%A5%E6%94%AF%E6%8C%81Linux%E2%80%9Ccd%20-%E2%80%9D%E5%90%97%EF%BC%9F.png)
在Linux中我们可以使用cd -
进入上一个目录,例如:
/home/user: cd /a
/a: cd -
/home/user:
表示-
最新的上一个目录。
答案1
您可以使用pushd
和popd
:
c:\> pushd c:\windows
c:\Windows> popd
c:\>
答案2
答案3
也许你会对此感兴趣:https://gist.github.com/programus/2d2738b2a746140186f7738b678bdcec
当然,pushd/popd 是一对很棒的命令,但是一旦弹出前一个命令,它就无法切换回来。
所以我自己制作了一个批处理,它可以维护一个目录历史记录以便跳转回来,因为我必须经常在许多目录之间跳转。
以下是帮助:
cdx - display all saved path with leading id and name followed if any
cdx <path> - save current path and jump to <path>
cdx :<n|name> - jump to the Nth or named path in the saved list
cdx : - jump to previous path
cdx <n>:<name> - name the Nth path as <name>
cdx rm [:]<n|name> - remove the Nth or named path from the list
cdx clear - clear the list
cdx /help - print out this help
cdx /? - same as above
和例子
D:\>cdx "C:\Program Files"
C:\Program Files>cdx
[1] D:\
C:\Program Files>cdx d:\tmp
d:\tmp>cdx
[1] D:\
[2] C:\Program Files
d:\tmp>cdx t:\UsrTmp
t:\UsrTmp>cdx .
t:\UsrTmp>cdx
[1] D:\
[2] C:\Program Files
[3] d:\tmp
[4] t:\UsrTmp
t:\UsrTmp>cdx :2
C:\Program Files>cdx
[1] D:\
[2] C:\Program Files
[3] d:\tmp
[4] t:\UsrTmp
C:\Program Files>cdx rm 1
C:\Program Files>cdx
[1] C:\Program Files
[2] d:\tmp
[3] t:\UsrTmp
C:\Program Files>cdx name 3:tmp
C:\Program Files>cdx
[1] C:\Program Files
[2] d:\tmp
[3] t:\UsrTmp <--<<< (tmp)
C:\Program Files>cdx :tmp
t:\UsrTmp>cdx :
C:\Program Files>
答案4
对于那些使用康德(顺便说一句,它真的是 cmd 的酷替代品。)
我使用类似 bash 的界面的别名,如下所示:
C:\Users\myname> cd test-dir
C:\Users\myname\test-dir> cd-
C:\Users\myname>
您可以在%CMDER_ROOT%\config\user-aliases.cmd
cd=pushd . & cd $*
cd-=popd