【问题标题】:Can someone tell me how to run a batch file from Notepad++有人可以告诉我如何从 Notepad++ 运行批处理文件吗
【发布时间】:2010-11-16 16:12:43
【问题描述】:

我想我可以通过输入 CMD $(FULL_CURRENT_PATH) 直接使用 nppexec by(或内置运行命令)从 Notepad++ 运行批处理文件

但由于 notepad++ 有一个 CMD 命令(在 n​​pp 控制台中打开 cmd shell),所以它不起作用。因此,运行上述命令会在 npp 控制台中打开 cmd shell,但不会运行批处理文件。那时我可以运行 $(FULL_CURRENT_PATH) 并且它将运行批处理文件。但是我必须输入 exit 才能获得我们的命令 shell 模式。

谁能告诉我如何直接在 npp 中运行我当前在 npp 中编辑的批处理文件。

【问题讨论】:

    标签: notepad++


    【解决方案1】:
    cmd /c "$(FULL_CURRENT_PATH)"
    

    :)

    【讨论】:

    • +1,这对我有用,还发现你可以从运行对话框中保存这个命令,它会自动出现在运行菜单上
    • 如果希望它运行在文件的路径中:cmd /c "cd $(CURRENT_DIRECTORY) && $(FULL_CURRENT_PATH)"
    【解决方案2】:

    使用RunMe 插件,您可以做到这一点。它可以在打开文件之前将当前目录更改为文件路径,而 Ben 的解决方案不会这样做。 ;)

    【讨论】:

      【解决方案3】:
      cmd /k "cd $(CURRENT_DIRECTORY) && "$(FULL_CURRENT_PATH)"" & pause
      

      这会捕获其中包含空格的批处理文件。

      【讨论】:

      • 暂停是一个不错的补充。有时我喜欢在批处理文件完成时听到 bell。输入屏幕不允许我键入 ALT+007,但我能够编辑 shortcuts.xml 文件并将echo  添加到其中。在 XML 文件中,我的完整命令现在是 cmd /k "cd $(CURRENT_DIRECTORY) && "$(FULL_CURRENT_PATH)"" & echo  & echo Press any key to return to Notepad++... & pause>nul & Exit
      【解决方案4】:

      您可以使用notepad++中的运行菜单来创建快捷方式:

      1. 运行 -> 运行 (F5)
      2. 在“要运行的程序”中键入命令行
      3. 保存,输入名称(如果需要,请选择快捷方式)

      和我一起:

      link to example image

      "C:\Program Files\TortoiseSVN\bin\TortoiseProc.exe" /command:update /path:"$(FULL_CURRENT_PATH)"
      "C:\Program Files\TortoiseSVN\bin\TortoiseProc.exe" /command:commit /path:"$(FULL_CURRENT_PATH)"
      "C:\Program Files\TortoiseSVN\bin\TortoiseProc.exe" /command:lock /path:"$(FULL_CURRENT_PATH)"
      "C:\Program Files\TortoiseSVN\bin\TortoiseProc.exe" /command:unlock /path:"$(FULL_CURRENT_PATH)"
      "C:\Program Files\TortoiseSVN\bin\TortoiseProc.exe" /command:log /path:"$(FULL_CURRENT_PATH)"
      

      【讨论】:

        【解决方案5】:

        要在其父目录中运行批处理,您必须将/d 参数传递给cd 以根据需要更改驱动器号并转义路径(如果包含空格)。

        cmd /c "cd /d ""$(CURRENT_DIRECTORY)"" && ""$(FULL_CURRENT_PATH)"""
        

        【讨论】:

        • 当我尝试这个时,我得到一个 cmd 窗口的闪烁,然后它就消失了,即使我的批处理文件中有一个暂停语句,并且批处理文件没有执行。
        • @SirAdelaide 您可以在运行命令(不是批处理文件)的末尾添加“& pause”来暂停并查看批处理运行失败的原因。
        猜你喜欢
        • 1970-01-01
        • 2014-09-05
        • 2023-03-14
        • 2020-12-31
        • 1970-01-01
        • 2021-11-16
        • 2017-12-06
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多