V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
ps1aniuge
V2EX  ›  程序员

vscode1.35.1 远程开发新特性: Linux 下的 vi, yaml 编辑工具,大多数开发调试工具,基本没活路了

  •  
  •   ps1aniuge · 2019-06-14 14:49:50 +08:00 · 5551 次点击
    这是一个创建于 1765 天前的主题,其中的信息可能已经有所发展或是发生改变。
    1 安装最新版 vscode。
    2 安装 vscode 插件:remote-ssh,remote-ssh-explorer
    36 条回复    2019-06-15 23:30:07 +08:00
    ps1aniuge
        1
    ps1aniuge  
    OP
       2019-06-14 14:50:16 +08:00
    3 定义 ssh 配置文件路径:
    编辑 c:\Users\你的用户名\AppData\Roaming\Code\User\settings.json
    加上一行:
    "remote.SSH.configFile": "d:\\vscode\\remote.txt"

    4 编写 ssh 配置文件内容: d:\vscode\remote.txt ,bom 头+utf8 格式。
    Host ps62
    User root
    HostName 192.168.111.62
    IdentityFile ~/.ssh/id_rsa

    支持多个服务器,
    ps1aniuge
        2
    ps1aniuge  
    OP
       2019-06-14 14:52:35 +08:00
    5 用 https://github.com/PowerShell/Win32-OpenSSH/releases 下载解压出的
    ssh 啊-key 啊 gen 生*成*秘*钥对。

    6 使用我编写的 ssh-copy-id6.ps1 即可部署本机公*钥,到各个服务器。
    pagxir
        3
    pagxir  
       2019-06-14 14:52:41 +08:00 via Android
    说能提到 vi 的,你试试在 ssh 里面打开 vscode 试试。
    ps1aniuge
        4
    ps1aniuge  
    OP
       2019-06-14 14:52:55 +08:00
    7 点击左下角,点 ps62。发现打开了一个 [新 ssh 的子 vscode 窗口] 。
    这个窗口其实就是 linux 中安装的,linux 版 vscode。
    可以在这个 [新 ssh 的子 vscode 窗口] ——》 插件里面,安装中文插件。
    可以在这个 [新 ssh 的子 vscode 窗口] ——》 插件里面,安装 xxx 语言插件。
    有了这个插件,即可代码高亮补全和调试,跟本地 vscode 一样。
    若跟本地 vscode 不一样,或者调试不灵,那么就是测试版的 bug。

    8 在这个 [新 ssh 的子 vscode 窗口] 中,点文件打开,浏览那个 linux 上的目录,随便打开一个文本。编辑。保存。
    然后在这个 linux 的中端中 cat 这个文本。发现文件内容变了。至此,vi 可以下岗了。

    9 在这个 [新 ssh 的子 vscode 窗口] 中,安装 yaml 插件。那么就可以直接读写 linux 本地的 yaml。

    10 在这个 [新 ssh 的子 vscode 窗口] 中,安装 powershell 插件。那么就可以本地开发 ps1,本地调试 ps1。
    装上啥插件,就能开发调试啥语言!

    11 点终端---》新建终端。
    即可打开 [那台 linux] 的命令行。

    12 看看左下角,就知道你连接到了哪台 linux 机子。

    还有活路么?
    Kaiyuan
        5
    Kaiyuan  
       2019-06-14 14:55:13 +08:00
    我想再 OpenWrt 上也用,发现,不行,提示服务器上安装失败。
    ps1aniuge
        6
    ps1aniuge  
    OP
       2019-06-14 14:58:32 +08:00
    @Kaiyuan 这个窗口其实就是 linux 中安装的,linux 版 vscode。
    ----实际上需要在 mips 版的 OpenWrt 上安装 vscode。有这个版的 vscode 么?
    ps1aniuge
        7
    ps1aniuge  
    OP
       2019-06-14 15:08:21 +08:00
    这个窗口其实就是 linux 中安装的,linux 版 vscode。
    本地 vscode,把远程 vscode,偷偷安装在了 ~/.vscode-server
    Chingim
        8
    Chingim  
       2019-06-14 15:09:52 +08:00 via Android
    问题来了,远程的 dev server 怎么访问?
    ps1aniuge
        9
    ps1aniuge  
    OP
       2019-06-14 15:17:36 +08:00
    服务器名支持中文:
    Host 吃鸡 62
    chendy
        10
    chendy  
       2019-06-14 15:21:08 +08:00
    "大多数开发调试工具,基本没活路了",这样的标题发到这里是不是有点过分了
    yvescheung
        11
    yvescheung  
       2019-06-14 15:21:59 +08:00
    可惜公司服务器是 centos6.5,无福享受 vscode remote
    ngg0707
        12
    ngg0707  
       2019-06-14 15:25:09 +08:00
    标题党……
    GiantHard
        13
    GiantHard  
       2019-06-14 15:28:46 +08:00
    那么问题来了,你敢在远程服务器上面 sudo code /some/file 吗?
    cstj0505
        14
    cstj0505  
       2019-06-14 15:31:48 +08:00
    这种反智贴标题党能不能少发
    belin520
        15
    belin520  
       2019-06-14 15:38:13 +08:00
    收藏一下,看一下楼主怎么回应
    wsseo
        16
    wsseo  
       2019-06-14 15:43:05 +08:00
    编辑文件怎么用 sudo
    yxcxx
        17
    yxcxx  
       2019-06-14 16:28:26 +08:00   ❤️ 1
    确实还不错
    LSBs
        18
    LSBs  
       2019-06-14 17:19:44 +08:00
    @yvescheung 6.5 也可以的 需要升级一些东西就好,上次我就弄了
    passerbytiny
        19
    passerbytiny  
       2019-06-14 17:56:03 +08:00
    @ps1aniuge 插件是装到本地还是 Server 端 上的,或者说,Server 是瘦的还是富的。
    oseau
        20
    oseau  
       2019-06-14 18:01:04 +08:00
    tramp mode 够方便了 还是常常想不起来用
    kkeybbs
        21
    kkeybbs  
       2019-06-14 18:23:26 +08:00 via iPhone
    @passerbytiny vscode 的 ui 和 backend 是可分离的,vscode remote 是 ui 在本地,backend (读写文件、插件)在 server。

    插件管理器会提示哪些支持远端,哪些在远端已装

    之前是必须 vscode insider 才能用,现在 vscode 能用,应该成熟很多了
    secondwtq
        22
    secondwtq  
       2019-06-14 18:24:34 +08:00
    PowerShell 已经被楼主毁了,求放过 VSCode 吧 ...
    beginor
        23
    beginor  
       2019-06-14 19:21:56 +08:00 via Android
    vs code 的 remote ssh 确实不错,即使不用来做开发, 远程维护也是可以的
    reus
        24
    reus  
       2019-06-14 19:22:26 +08:00
    大惊小怪,emacs tramp 都多少年了,neovim 也有 server/client 模式

    如果有跳板机,不能直接 ssh,你怎么用?

    block !
    CantoAllaVita
        25
    CantoAllaVita  
       2019-06-14 19:23:17 +08:00 via iPhone
    真香
    alexfu
        26
    alexfu  
       2019-06-14 19:30:02 +08:00
    好用是好用 然而没过两天被 admin 警告说我有个 process 开了太多 connection - -
    jingniao
        27
    jingniao  
       2019-06-14 21:56:54 +08:00
    用过一段时间了,预览版时还有不少小 bug,正式版已经修复了很多。
    不过还有一个问题,关闭 vscode 后,服务器残留的 node 进程没有自动关闭,
    不知道是没到超时时间还是什么原因。
    Chingim
        28
    Chingim  
       2019-06-14 21:59:36 +08:00
    @yxcxx 哈哈哈哈哈哈哈
    Chingim
        29
    Chingim  
       2019-06-14 22:01:25 +08:00
    @yxcxx 这是把 vscode 当成 terminal 用吗
    compiler
        30
    compiler  
       2019-06-15 02:16:08 +08:00 via iPhone
    vi 的对手倒是年年在换
    20015jjw
        31
    20015jjw  
       2019-06-15 08:11:29 +08:00 via Android   ❤️ 1
    笑看 Windows 用户嘲讽 vi
    ospider
        32
    ospider  
       2019-06-15 13:39:21 +08:00
    虽然我现在用的是 vscode remote + vi extension,但是我觉得楼主这样的喷子实在是。。
    ps1aniuge
        33
    ps1aniuge  
    OP
       2019-06-15 15:42:45 +08:00
    @GiantHard
    一个 root,
    从 win 客户机,
    用 ssh2048 位默认长度的密钥文件,
    经过 ssh,
    登录生产 linux 机子,然后在里面用一下 vi,这会有安全问题么?
    root 权限,普通用户权限,都不会有问题吧,
    所以远程用 vscode 也没有啥问题,况且这个服务器一般不是生产服务器,而是开发测试服务器。


    @passerbytiny 不是很确定,但貌似是装在 server 上的,也就是说
    客户机 win1,可以在 linux1,linux2 上分别念装不同插件,

    各位,我是这么想的,有 2 种开发人员:
    1 主要在本地 win 上开发。
    2 用 mac os,linux 桌面开发,主要是为了方便调试。

    有了 vscode 远程开发,现在 win 上的人,在 linux 上调试很方便了。打开一个 [ssh 子 vscode 窗口] 即可:
    1 选中运行代码。
    2 单步运行代码。
    3 下断点。
    4 在 vscode 左侧,观察变量调试变量值。
    尤其是解释性的语言。

    远程开发也能高亮,也能补全。

    Linux 下的大多数开发调试工具,还有活路吗?
    没人说巨硬做了好事么?没人说我做了好事么?

    @ospider
    你已经用了 vscode remote,而没有用 vi,那说明我说的是正确的,说明 vi 在你那已经没活路了。怎么你把 vi 弄死了,还说我是喷子? 你这喷子嘴上说不要,身体却很诚实呀。
    glues
        34
    glues  
       2019-06-15 17:33:28 +08:00
    业余选手的自嗨
    kenshinhu
        35
    kenshinhu  
       2019-06-15 21:09:27 +08:00
    还得提醒大家一下,如果 osx 作为 dev server 是不可以的
    zichen
        36
    zichen  
       2019-06-15 23:30:07 +08:00
    公司没法直接登生产环境,都是需要堡垒机的,大公司基本都这样吧,这种情况 remotessh 是不是就废了?
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2410 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 29ms · UTC 02:01 · PVG 10:01 · LAX 19:01 · JFK 22:01
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.