【问题标题】:CMDer / ConEmu - Explorer current directory locationCMDer / ConEmu - Explorer 当前目录位置
【发布时间】:2015-09-17 02:58:27
【问题描述】:

我将right click 与 CMDer 集成以弹出控制台,但它默认为我的用户目录,而不是我在其中执行 right click 的目录。如果按 Win+R 并运行 cmd,或按住shiftright click 从上下文菜单中打开命令提示符;命令提示符在该位置打开。我已经能够让 CMDer/ConEmu 开始使用它,但它似乎是一个普通的命令提示符,不支持其他功能。

理想情况下,我可以提升为管理员运行,在集成设置菜单中尝试了-new_console:a,但没有成功。

【问题讨论】:

    标签: windows cmd console conemu cmder


    【解决方案1】:

    您可以转到设置>集成并在命令字段(上部)中进行设置。

    {bash} -cur_console:n:d:"%V"
    

    %V用于传递你当前所在的目录。

    之后,您只需点击上方的注册按钮。

    【讨论】:

    【解决方案2】:

    AFAIK CMDer 强制将您的活动目录添加到用户配置文件。 Bare ConEmu 不这样做。那是因为cmder初始化脚本。

    但是,如果没有准确的描述,您是否设置了菜单项(屏幕截图)和您正在尝试的目录示例,这是不可能确定的。

    【讨论】:

    • 我对 CMDer 在做什么有点困惑,我注意到 Clink 在 ConEmu 设置中,并复制了 Clink 到那里以使用它。我使用了集成设置,现在在我的右键单击资源管理器上下文中有一个 ConEmu Here 选项。我能够从 CMDer 正在使用的配置 xml 导入设置,但由于某种原因颜色不起作用。不过,现在其他一切似乎都运行良好。您想查看哪部分设置的屏幕截图?或者我可以上传 config.xml?
    • 提示着色由PROMPT 环境变量完成。如果一切正常,我们不需要任何屏幕截图。
    • 我在使用 ConEmu 查找有关 PROMPT 环境变量的信息时遇到问题,我必须做些什么才能使其与 ConEmu Here 一起工作,这样颜色才能正常工作?
    • 在 cmd.exe 提示符下运行 prompt /?PROMPT 变量采用完全相同的宏。您可以在ConEmu docs 中找到更多信息。
    【解决方案3】:

    我解决了在注册表中修改命令语法的问题。例如,目录看起来像这样:

    Windows Registry Editor Version 5.00
    
    [HKEY_CLASSES_ROOT\Directory\shell\Cmder]
    @="Cmder Here"
    "Icon"="C:\\tools\\cmder\\icons\\cmder.ico"
    "NoWorkingDirectory"=""
    
    [HKEY_CLASSES_ROOT\Directory\shell\Cmder\command]
    @="\"C:\\tools\\cmder\\Cmder.exe\" \"%V\""
    

    您也可以为驱动器解决此问题。不要忘记Background 部分,这样您就可以在资源管理器的空白处使用菜单选项。

    要在提升模式下运行 shell,您可以在任务设置中的命令前添加“*”(星号),如下所示:

    这是使用该修复程序的完整 .reg 文件。只需将路径替换为您的cmder安装即可。

    Windows Registry Editor Version 5.00
    
    [HKEY_CLASSES_ROOT\Drive\Background\shell\Cmder]
    @="Cmder Here"
    "Icon"="C:\\tools\\cmder\\icons\\cmder.ico"
    "NoWorkingDirectory"=""
    
    [HKEY_CLASSES_ROOT\Drive\Background\shell\Cmder\command]
    @="\"C:\\tools\\cmder\\Cmder.exe\" \"%V\""
    
    [HKEY_CLASSES_ROOT\Drive\shell\Cmder]
    @="Cmder Here"
    "Icon"="C:\\tools\\cmder\\icons\\cmder.ico"
    "NoWorkingDirectory"=""
    
    [HKEY_CLASSES_ROOT\Drive\shell\Cmder\command]
    @="\"C:\\tools\\cmder\\Cmder.exe\" \"%V\""
    
    [HKEY_CLASSES_ROOT\Directory\Background\shell\Cmder]
    @="Cmder Here"
    "Icon"="C:\\tools\\cmder\\icons\\cmder.ico"
    "NoWorkingDirectory"=""
    
    [HKEY_CLASSES_ROOT\Directory\Background\shell\Cmder\command]
    @="\"C:\\tools\\cmder\\Cmder.exe\" \"%V\""
    
    [HKEY_CLASSES_ROOT\Directory\shell\Cmder]
    @="Cmder Here"
    "Icon"="C:\\tools\\cmder\\icons\\cmder.ico"
    "NoWorkingDirectory"=""
    
    [HKEY_CLASSES_ROOT\Directory\shell\Cmder\command]
    @="\"C:\\tools\\cmder\\Cmder.exe\" \"%V\""
    

    附:让我感到震惊的是,%CMDER_ROOT env var 可以用来代替绝对路径。

    【讨论】:

    • 我已经有一段时间没有使用注册表了。第一个 sn-p 可能是我在 CMDer 注册表中的内容?最后一个 sn-p 您建议复制/粘贴到扩展名为 .reg 的文件中,然后运行它以便 Windows 更新注册表? C:\\tools\\cmder\` should be replaced with %CMDER_ROOT`?你能举一个例子来说明这可能是什么样子吗?我不确定是否需要调整斜杠/引号/空格。
    • “您也可以为驱动器修复此问题。不要忘记 Background 部分,以便您可以使用资源管理器中空白区域的菜单选项。” - 你能详细说明一下吗?我查看了 Main>Background 下的 ConEmu 设置,没有看到任何与您所说的内容相符的内容。
    【解决方案4】:

    在我的例子中,通过传入命令参数来工作:/START "%folder%"

    【讨论】:

      【解决方案5】:

      在较新版本的cmder注册右键就足够了。

      打开cmder.exe所在的命令提示符。然后输入:

      .\cmder.exe /REGISTER USER
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-10-24
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多