本文档仅适用于HBuilderX 2.7.12+版本

1. sftp/ftp插件简介@about

HBuilderX 2.7.12+版本,优化了SFTP/FTP插件

SFTP/FTP插件市场插件地址

此插件是vscode中流行的ftp插件,因HBuilderX兼容vscode的部分插件生态,也可以在HBuilderX中使用。

  • 使用此插件,可将本地工作区文件,与FTP服务器或linux服务器文件同步。
  • 支持ftp/sftp协议
  • 支持远程文件目录浏览上传下载删除
  • 支持自动保存上传

2. sftp/ftp使用介绍

使用步骤:

  1. 如下图,在项目管理器,新建一个空目录或空项目,然后选中
  2. 右键菜单,点击【Ftp: 创建连接配置】
  3. 系统自动创建.ftp/ftp-sync.json配置文件
  4. 编辑ftp-sync.json, 填写host(ip)username(用户名)password(密码)port(端口)protocol(协议)
  5. 填写完配置文件,右键菜单,点击【Ftp: 浏览远程文件】
  6. 选择文件目录,进行上传下载删除操作

2.1 创建ftp/sftp配置文件

1. sftp/ftp插件简介@about - 图1

2.2 同步目录

  • 从远程同步到本地
  • 从本地同步到远程

1. sftp/ftp插件简介@about - 图2

2.3 本地编辑远程文件、删除远程文件

选中项目,右键菜单【FTP: 浏览远程文件】,即可打开SFTP视图

1. sftp/ftp插件简介@about - 图3

3. ftp配置文件参数说明

  1. {
  2. "name": "Linux测试服务器",
  3. "host": "ip地址",
  4. "protocol": "sftp",
  5. "port": 22,
  6. "username": "用户名",
  7. "password": "密码",
  8. "remotePath": "远程目录",
  9. "uploadOnSave": false
  10. }

注意:配置文件是放在项目下的普通json文件,存放着ftp账号。若你的项目使用三方node库,请注意其可靠性,避免ftp账户失窃

4. ftp、sftp协议说明

本插件支持FTP、sftp两种协议。

如果远程服务器,搭建了ftp服务,usernamepassword需要填写ftp的用户密码

sftp不需要任何配置,开启SSH默认就开启了SFTP。也就是说,如果您的远程服务器为linux系统,即使没有搭建ftp服务,也可以通过sftp连接,使用文件同步的服务。

  • SSH/SFTP,默认端口为:22
  • 使用sftp服务,usernamepassword,需要填写目标电脑的用户、密码

5. ftp/sftp 菜单配置快捷键

菜单【工具】【自定义快捷键】,即可对sftp相关菜单配置快捷键。

具体如下, 可以把key值改成自己想要的快捷键

  1. [
  2. // 浏览远程文件
  3. {
  4. "key": "ctrl+shift+w",
  5. "command": "sftp.revealInRemoteExplorer"
  6. },
  7. // 同步远程数据到本地
  8. {
  9. "key": "ctrl+shift+r",
  10. "command": "sftp.sync.remoteToLocal"
  11. },
  12. // 同步本地数据到远程
  13. {
  14. "key": "ctrl+shift+l",
  15. "command": "sftp.sync.localToRemote"
  16. },
  17. // 上传当前文件夹
  18. {
  19. "key": "ctrl+shift+h",
  20. "command": "sftp.upload.folder"
  21. },
  22. // 下载当前文件夹
  23. {
  24. "key": "ctrl+shift+q",
  25. "command": "sftp.download.folder"
  26. },
  27. // 项目管理器 右键菜单 FTP: 上传选中文件
  28. {
  29. "key": "ctrl+shift+u",
  30. "command": "sftp.upload.file"
  31. },
  32. // 在本地编辑远程文件
  33. {
  34. "key": "ctrl+shift+e",
  35. "command": "sftp.remoteExplorer.editInLocal"
  36. },
  37. // 删除远程文件
  38. {
  39. "key": "ctrl+shift+d",
  40. "command": "sftp.delete.remote"
  41. },
  42. // 刷新
  43. {
  44. "key": "ctrl+shift+f",
  45. "command": "sftp.remoteExplorer.refresh"
  46. }
  47. ]