win10下vscode配置sftp以方便快捷傳送文件到服務器

前言

本地是win10系統,代碼需要在linux下跑,又不想裝虛擬機或雙系統,恰好有個工作站(服務器)。

  • 在工作站上搞了個用戶,一開始是用winscp傳送文件的,甚覺麻煩
  • 後來在工作站上部署了gitlab,開始通過先把代碼push到gitlab上,再通過xshell把代碼pull到工程文件夾中,卻發現有可能一不小心寫錯了變量名就得重新push-pull,導致commit graph上滿滿的bug fixed

sftp配置

1.在vscode中下載sftp插件
  • 在vscode中快捷鍵 ctrl+shift+P 打開指令窗口,輸入extension:install,回車,左側即打開擴展安裝的界面
    extension:install
  • 在搜索框中輸入sftp,第一個就是需要安裝的,點安裝
    install sftp
2.在vscode的工程中配置sftp.json
  • 然後快捷鍵 ctrl+shift+P 打開指令窗口,輸入sftp:config,回車,就會在當前工作工程的.vscode文件夾下生成一個sftp.json文件,不知道哪天似乎是插件更新了,默認的文件非常空,我們只能手動配置文件的參數了。配置好host, port, username, privateKeyPath, remotePath, ignore這參數即可:

    • host:工作站的IP地址
    • port:ssh的端口
    • username:工作站自己的用戶名
    • privateKeyPath:存放在本地的已配置好的用於登錄工作站的密鑰文件。和下面的使用密碼二選一(可以是openssh格式的,也可以是ppk格式的)
    • password:工作站自己的用戶密碼。使用密鑰和使用密碼選用一種即可;使用密碼的話工作站不用配置ssh,但使用密鑰的話工作站上需要配置好ssh,password就可以填null
    • protocol:協議類型,默認選"sftp"
    • remotePath:工作站上與本地工程同步的文件夾路徑,需要和本地工程文件根目錄同名,且在使用sftp上傳文件之前要手動在工作站上使用mkdir生成這個根目錄,根目錄下的其他子目錄會自動對應生成
    • ignore:指定在使用sftp: sync to remote的時候忽略的文件及文件夾,注意每一行後面有逗號,最後一行沒有逗號
  • 這是一個例子:(記住不能有任何註釋內容

    {
        "host": "XX.XX.XX.XX",
        "port": 22,
        "username": "ubuntu",
        "protocol": "sftp",
        "privateKeyPath": "C:\\KEY\\private.ppk",
        "remotePath": "/home/ubuntu/myproject",
        "ignore": [
            "**/.vscode/**",
            "**/.git/**",
            "**/log/**"
        ]
    }
  • 配置完畢之後就可以在vscode中使用sftp的指令直接upload和download對應工程文件中的任何文件啦(對左側文件目錄中的文件或文件夾右鍵,菜單中可選),還可以配置自己的快捷鍵

  • 有一點需要注意的是:通過sftp插件上傳的pickle文件,在工作站上打開會報inscure的錯,如果是使用xshell連接工作站的且工作站是centos系統的(ubuntu也可以,但不知道怎麼安裝的,可以自行查一下),可以使用sudo yum install lrzsz安裝指令,然後就可以使用rz指令來上傳pickle文件;將工作站上的文件下載到本地則可以使用sz [文件名]指令


更多信息可以參考vscode-sftp的github
博文內容更新時間:2018/7/16

發佈了29 篇原創文章 · 獲贊 18 · 訪問量 8萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章