【开发工具】【windows】Visual Studio Code(VS Code)远程Linux服务器环境搭建——SFTP篇

简介: 【开发工具】【windows】Visual Studio Code(VS Code)远程Linux服务器环境搭建——SFTP篇

引言



原理及特点


  • 首先本地要有一个项目文件夹,同时远程也有一个项目文件夹,然后通过配置文件来同步二者。


  • SFTP可以查看远程项目所有文件,但不能直接操作,必须先操作本地项目文件,再同步到远程项目。


操作步骤


安装SFTP扩展



使用VS Code打开某个项目


  • 后续的配置是基于项目(目录)的,所以必须要先打开项目;


修改配置文件


修改方式


  • 在当前项目中,输入ctrl + shift + p,之后输入 SFTP: config,会打开 sftp.json 文件,之后可在这个文件中修改配置;


在vscode中使用快捷键Ctrl+Shift+P ,会在所在的项目根目录中生成.vscode文件夹,输入 SFTP: config之后,.vscode目录下面会生成一个sftp.json配置文件。


配置模板


  • SFTP之单服务器配置


{
    "name": "自定义name",
    "context": "映射远程目录的本地目录地址",
    "host": "服务器IP",
    "protocol": "协议:[sftp/ftp]",
    "port": 22,
    "username": "username",
    "password":"password",
    "remotePath": "远程文件夹地址,默认/",
    "context": "本地文件夹地址,默认为vscode工作区根目录",
    "uploadOnSave": true, // 保存文件自动上传
     "useTempFile": false,
    "openSsh": false
    // 要忽略的文件夹/文件
    "ignore": [
        "**/.vscode/**",
        "**/.idea/**",
        "**/.git/**",
        "**/.DS_Store",
        "**/node_modules/**"
    ],
    // 监听器
    "watcher": {
        "files": "*"         //需要监听变化的文件
        "autoUpload": false //不自动上传
        "autoDelete": false //不自动删除
    }
}


  • SFTP之多服务器配置


{
    "name": "自定义name",
    "context": "映射远程目录的本地目录地址",
    "protocol": "协议:[sftp/ftp]",
    "port": 22,
    "remotePath": "远程文件夹地址,默认/",
    "context": "本地文件夹地址,默认为vscode工作区根目录",
    "uploadOnSave": false,
    "useTempFile": false,
    "openSsh": false
   // 要忽略的文件夹/文件
   "ignore": [
        "**/.vscode/**",
        "**/.git/**",
        "**/.DS_Store"
        "**/node_modules/**"
    ],
    // 监听器
    "watcher": {
        "files": "*"         //需要监听变化的文件
        "autoUpload": false //不自动上传
        "autoDelete": false //不自动删除
    }
    //上面这部分可沿用单服务器配置
  "profiles": { // 这里开始是多个服务器的配置信息
    "test_70": { // test_70 服务器name自定义
      "host": "服务器IP",  
      "username": "username",
      "password": "password"
    },
    "test_71": {
      "host": "服务器IP",
      "username": "username",
      "password": "password"
    },
    "test_72": {
      "host": "服务器IP",
      "username": "username",
      "password": "password"
    }
  }
}


配置例子


[
{
"name": "server11_mypri_libs",
"context": "libs",
"protocol": "ftp",
"port": 21,
"host": "11.11.11.11",
"username": "qxhgd",
"password": "12345678",
"remotePath": "/code/20221001/mypri/libs",
"uploadOnSave": true,
"useTempFile": false,
"openSsh": false
},
{
"name": "server11__mypri_main",
"context": "main",
"protocol": "ftp",
"port": 21,
"host": "11.11.11.11",
"username": "qxhgd",
"password": "12345678",
"remotePath": "/code/20221001/mypri/main",
"uploadOnSave": true,
"useTempFile": false,
"openSsh": false
}
]


注意事项


  • 配置文件中不要写注释,前面例子里加注释是为了说明字段的含义;


  • 虽然前面配置模板一节,提供了很多字段,实际上不需要全部加上,根据需要选用即可。


  • Linux系统和Windows系统中,context的格式有区别,需要格外注意;


  • 具体字段含义说明


  • name : 自定义,如果有两个以上目录,name必须不同


  • protocol: 可以是ftp,也可以是sftp;


  • privateKeyPath:存放在本地的已配置好的用于登录工作站的密钥文件,(可以是openssh格式的,也可以是ppk格式的),和password二选一;


  • port: 如果protocol选ftp,则port对应21,否则对应22;


  • context:本地路径(默认VSCode打开的文件夹为根目录)


  • remotePath: 远程服务器路径 uploadOnSave: 保存文件时自动上传


  • uploadOnSave: 本地更新文件保存会自动同步到远程文件(不会同步重命名文件和删除文件)


  • downloadOnOpen: 从远程服务器下载打开的文件


  • ignore:忽略的文件(匹配的文件不会同步)


  • watcher:监听器(可以监听重命名文件和删除文件等操作)


  • autoUpload:文件变更会自动同步(修改和重命名)


  • autoDelete:文件删除会自动同步


实际使用


多服务器切换


  • ctrl + shift + p 输入 SFTP: Set Profile 选择相应的服务器;


  • 选择成功后 VSCode 左下角会出现服务器name。



同步方式


  • 自动同步


  • autoUpload和autoDelete开启,则文件修改、重命名、删除会自动同步到服务器;


  • uploadOnSave:本地文件保存会自动同步到远程文件;


  • 手动同步


  • Upload Folder 和 Download Folder等在 uploadOnSave和 watcher都关闭的情况下才生效;如本地新增文件夹,则可选择Upload Folder,即可同步到远程服务器。


  • 同步某部分工程文件,可以在需要同步的文件夹上面右键:选择Sync Local -> Remote,即可同步到远程服务器;Sync Remote-> Local,将远程服务器同步到本地;sync both directions:将远程和本地的代码同步至二者一致;


  • 选中某一个文件,右键可以选Upload或Download对某个文件进行操作;



参考资料


相关文章
|
3月前
|
监控 Ubuntu Linux
使用VSCode通过SSH远程登录阿里云Linux服务器异常崩溃
通过 VSCode 的 Remote - SSH 插件远程连接阿里云 Ubuntu 22 服务器时,会因高 CPU 使用率导致连接断开。经排查发现,VSCode 连接根目录 ".." 时会频繁调用"rg"(ripgrep)进行文件搜索,导致 CPU 负载过高。解决方法是将连接目录改为"root"(或其他具体的路径),避免不必要的文件检索,从而恢复正常连接。
|
4月前
|
Ubuntu Linux 编译器
Linux/Ubuntu下使用VS Code配置C/C++项目环境调用OpenCV
通过以上步骤,您已经成功在Ubuntu系统下的VS Code中配置了C/C++项目环境,并能够调用OpenCV库进行开发。请确保每一步都按照您的系统实际情况进行适当调整。
978 3
|
4月前
|
Linux C语言 C++
vsCode远程执行c和c++代码并操控linux服务器完整教程
这篇文章提供了一个完整的教程,介绍如何在Visual Studio Code中配置和使用插件来远程执行C和C++代码,并操控Linux服务器,包括安装VSCode、安装插件、配置插件、配置编译工具、升级glibc和编写代码进行调试的步骤。
614 0
vsCode远程执行c和c++代码并操控linux服务器完整教程
|
4月前
|
存储 Linux 网络安全
【VMware VCF】使用 SFTP 服务器备份 VCF 核心组件的配置文件
【10月更文挑战第6天】以下是使用 SFTP 服务器备份 VMware VCF 核心组件配置文件的步骤:首先,设置 SFTP 服务器并配置用户账号与权限;其次,确保 VCF 环境能与 SFTP 服务器建立网络连接,并检查防火墙规则;接着,识别核心组件配置文件的位置,并使用 SFTP 客户端工具(如 `lftp` 或 WinSCP)进行备份;最后,验证备份结果的完整性和正确性,并定期执行备份操作,设置备份文件保留策略以节省存储空间。
|
5月前
|
存储 安全 Linux
离线Linux服务器环境搭建
【9月更文挑战第3天】在离线环境下搭建Linux服务器需按以下步骤进行:首先确定服务器用途及需求,准备安装介质与所需软件包;接着安装Linux系统并配置网络;然后设置系统基础参数,如主机名与时区;安装必要软件并配置服务;最后进行安全设置,包括关闭非必要服务、配置防火墙、强化用户认证及定期备份数据。整个过程需确保软件包的完整性和兼容性。
|
6月前
|
机器学习/深度学习 存储 Linux
【机器学习 Azure Machine Learning】使用VS Code登录到Linux VM上 (Remote-SSH), 及可直接通过VS Code编辑VM中的文件
【机器学习 Azure Machine Learning】使用VS Code登录到Linux VM上 (Remote-SSH), 及可直接通过VS Code编辑VM中的文件
|
6月前
|
Linux 开发工具 Python
【Deepin 20系统】Linux系统从零打造完美VScode for Python环境
如何在Deepin 20系统中从零开始配置一个完美的VScode for Python开发环境,包括安装Anaconda、VScode、必要的插件、汉化、主题和字体设置,以及如何运行和调试Python程序。
140 6
|
7月前
|
消息中间件 Java Kafka
kafka Linux环境搭建安装及命令创建队列生产消费消息
kafka Linux环境搭建安装及命令创建队列生产消费消息
138 4
|
6月前
|
Linux Python
【Deepin 20系统】Linux系统VScode解决Module ‘torch‘ has no ‘cat‘ member
本文提供了解决在Deepin 20系统上使用VScode时遇到的"Module ‘torch’ has no ‘cat’ member"错误的步骤,即通过在VScode的设置中指定正确的pylint路径来解决该问题。
50 0
|
7月前
|
存储 Linux Shell
【Linux】VScode远程连接Linux
文指导读者如何在VScode中下载安装、配置插件以实现与Linux的远程连接,包括使用XShell、安装必要的插件如C/C++ExtensionPack,并介绍了基本操作和VScode内置命令行功能。
105 0

热门文章

最新文章