【问题标题】:Sublime text 2 - How to run a shell command over ssh?Sublime text 2 - 如何通过 ssh 运行 shell 命令?
【发布时间】:2023-03-25 15:14:01
【问题描述】:

我是 Sublime Text 2 的新手,有一些事情我还没有弄清楚,如何通过 SSH 运行 bash 命令?

例如,要查看我的开发服务器上的 Apache 错误日志,我希望能够运行:

ssh root@192.168.0.2 "tail -10 /var/log/httpd-error-user.log"

我不想打开终端,而是想在编辑器中使用键盘快捷键运行它。

我读过build systems,但我不确定这是要走的路,而且它似乎只允许一个命令。

【问题讨论】:

    标签: bash editor sublimetext2


    【解决方案1】:

    我会回答我自己的问题。您可以轻松地创建指向任何脚本的构建,所以我所要做的就是创建 myscript.sh 包含:

    #!/bin/bash
    ssh root@192.168.0.2 "tail -10 /var/log/httpd-error-user.log" 
    

    然后在ST2中新建一个Build System来调用它:

    {
        "cmd": ["./myscript.sh"]
    }
    

    注意:在本例中(我在 Linux 上),myscript.sh 位于 /home/mike/.config/sublime-text-2/Packages/User/

    【讨论】:

    • 您可以通过创建一个通用的构建系统来使这一切变得更好。我打电话给我的rsync local to remote.sublime-build,并在其中输入:{ "cmd": ["$project_path/rsync.sh"] }。这将在您的 Sublime 项目的根目录中运行 rsync.sh。那么每个项目可以有不同的 rsync 标志、服务器和路径。
    • $project_path 是 Sublime 变量吗?是否仅在保存 sublime-project 时可用?目前我很快就解决了cd path/to/script/dir/ && ./myscript.sh
    【解决方案2】:

    如果你在windows机器上,你可以试试这个:

    1. 安装Putty。我们需要此包中的 plink
    2. 使用 Putty 安装目录更新您的 PATH 变量。
    3. 在 Sublime 中创建构建系统

      {
       "cmd": ["plink", "-pw", "<password>", "<userid>@<remotehost>", "./your-script.sh"]
      }
      

    我将它用于远程make,效果很好。

    注意,您的密码在此处为纯文本。我知道这不好;]。这只是一个例子。要修复它,可以使用基于密钥的登录。谷歌 PuttyGen自动登录

    【讨论】:

    • 通过 SSH 制作正是我所需要的。谢谢你:)
    【解决方案3】:

    您是否尝试过查看Sublime SFTP 插件?

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-07-03
      • 2013-06-05
      • 1970-01-01
      • 2012-06-01
      • 2015-01-13
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多