如何使用 explorer.exe (Cygwin) 在 Ranger 中打开文件夹

问题描述

在windows中,当您使用ranger使用cygwin)时,如何使用explorer.exe 打开文件夹? 我的意思是当你在一个文件夹上按 r 时,它会要求你打开一个命令,但是如果你写 explorer.exe "$1" 它不会打开它,怎么能我们做到了吗?

解决方法

由于windows和Linux中的路径不同,无法用explorer.exe打开ranger中选择的文件夹。

/cygwin/c/backup 不等于 c:\backup,并且不能与 explorer.exe 一起使用。

所以我们必须改变路径,到窗口喜欢的路径。

打开您的 rifle.py 文件,如果您不知道它在哪里以及如何创建它,请参阅此 Link

现在在该文件的末尾,您可以添加以下行:

directory,else = explorer.exe "$(echo "$1" | cat | sed -r 's~/cygdrive/(.)/(.*)~ \1\:/\2 ~g' | cat | sed 's~/~\\~g' | sed -r 's~^ (.*)~\1~g')"

这是一堆 sed 命令,可以将 Linux(Cygwin) 路径模型转换为类似路径的 Windows。并使用 explorer.exe 打开该路径(您可以使用任何其他您喜欢的程序更改 explorer.exe)。