win10下vscode配置sftp以方便快捷傳送檔案到伺服器
阿新 • • 發佈:2019-02-02
前言
本地是win10系統,程式碼需要在linux下跑,又不想裝虛擬機器或雙系統,恰好有個工作站(伺服器)。
- 在工作站上搞了個使用者,一開始是用winscp傳送檔案的,甚覺麻煩
- 後來在工作站上部署了gitlab,開始通過先把程式碼push到gitlab上,再通過xshell把程式碼pull到工程資料夾中,卻發現有可能一不小心寫錯了變數名就得重新push-pull,導致commit graph上滿滿的bug fixed
sftp配置
1.在vscode中下載sftp外掛
- 在vscode中快捷鍵
ctrl+shift+P
開啟指令視窗,輸入extension: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 [檔名]
指令