如何从windows7中的Sublime打开命令行提示符

时间:2013-09-04 06:16:47

标签: windows cmd sublimetext3

我在VIM中创建了一个名为OpenCMD()的函数,用于在VIM中打开命令行或终端(在当前文件路径中使用cd)

func! OpenCMD()
    if has('win32')
        let com = '!cmd /c start cd '. expand('%:p:h')
    else
        let com = '!/usr/bin/gnome-terminal --working-directory=' . expand('%:p:h')
    endif
    silent execute com
endfunc
nmap cmd :call OpenCMD()

现在,我想在Sublime(sublime 3 beta)的当前文件路径中打开命令行和cd。该函数与OpenCMD()

相同

我在stackover流程中搜索了一个问题:Sublime Text 2 - Open CMD prompt at current or project directory (Windows)

我做了第一个回答的人(创建cmd,cmd.py和Context.sublime-menu)。但是它无法工作,cmd操作总是被禁用。

cmd_in_sublime3

有什么方法可以得到它吗?提前谢谢!

5 个答案:

答案 0 :(得分:29)

关于Sublime Text 2 - Open CMD prompt at current or project directory (Windows)的答案几乎是正确的。

只需要更改一个步骤(对我而言),文件名应为大写。使用CMD代替cmd


我的步骤(Win7):

  • 打开文件夹%APPDATA%\Sublime Text 3\Packages或只需点击 偏好设置 - > sublime-text-3 Beta
  • 中的浏览器包..
  • 创建名为CMD的文件夹(大写)。 CMD 的路径应为%APPDATA%\Sublime Text 3\Packages\CMD
  • 打开文件夹 CMD ,并创建一个名为cmd.py小写)的文件,粘贴上下文如下:
import os, sublime_plugin
class CmdCommand(sublime_plugin.TextCommand):
    def run(self, edit):
        file_name=self.view.file_name()
        path=file_name.split("\\")
        current_driver=path[0]
        path.pop()
        current_directory="\\".join(path)
        command= "cd "+current_directory+" & "+current_driver+" & start cmd"
        os.system(command)
  • 创建一个名为Context.sublime-menu的文件(再次)。添加上下文如下:
[
     { "command": "cmd" }
]
  • Cmd功能可在上下文菜单(右键单击)中使用。例如: Open_cmd_in_Sublime

原因是,如果您想通过命令打开命令行(例如'cmd'),您可以将以下上下文添加到默认(Windows).sublime-keymap < / strong>文件。 :

{ "keys": ["c", "m", "d"], "command": "cmd"}

您可以从偏好设置 - &gt;打开它键绑定 - 用户

答案 1 :(得分:3)

您可以按照以下步骤在Sublime文本3中安装 Terminal 软件包。

  1. 点击首选项中的包装控制
  2. 选择安装软件包
  3. 在软件包列表中搜索“终端”,然后安装它。

现在,当您右键单击文件或文件夹时,您会看到在此处打开终端选项

答案 2 :(得分:2)

非常感谢@Marslo!但是,我认为我们可以稍微改进插件......(我在st3 beta,第8窗口)

import os
import sublime_plugin

class CmdCommand(sublime_plugin.TextCommand):
    def run(self, edit):
        os.system("cd " + self.view.file_name() + " & start cmd")

答案 3 :(得分:1)

对于Windows,我将命令替换为:

command= "cmd /K cd "+current_directory

答案 4 :(得分:0)

[奖金]

@Ali在他的解决方案中指出,而我的评论如下。

如果要激活命令提示符而不是 PowerShell ,则可以:

{

// Replace with your own path to cmder.exe
"terminal": "terminal": "C:\\Windows\\system32\\cmd.exe", // On my Windows 10 machine
"parameters": ["/START", "%CWD%"]

}

建议为here