VS Code SSH 远程连接 Ubuntu 并实现快速运行(C/C++示例)

目标:

Windows 上写代码

Ubuntu 上运行代码

也就是:
VSCode → SSH → Ubuntu Server

一、Ubuntu 安装 SSH 服务

在 Ubuntu 终端执行:

复制代码
sudo apt update

sudo apt install openssh-server -y

启动 SSH:

复制代码
sudo systemctl enable ssh

sudo systemctl start ssh

查看状态:

复制代码
sudo systemctl status ssh

看到:active (running)

说明 SSH 已经启动。

二、查看 Ubuntu IP

执行:

复制代码
ip a

找到ip地址

三、Windows 测试 SSH 是否能连

打开 Windows 的 CMD:
ssh 用户名@UbuntuIP

例如:
ssh cov_chong@192.168.124.251

第一次连接会提示:
Are you sure you want to continue connecting?

输入:yes

然后输入 Ubuntu 密码。

注意:输入密码时不会显示字符,这是正常的。

这样就代表连上了。

四、VSCode 安装插件

Windows 打开 VSCode。

进入扩展:Extensions

搜索并安装:Remote - SSH

安装微软官方的那个。

五、配置 SSH

VSCode 按:Ctrl + Shift + P

输入:

复制代码
Remote-SSH: connect current Window to Host

配置SSH主机 -> 设置

自定义配置文件的路径

输入:

复制代码
Remote-SSH: Add New SSH Host

输入命令:ssh username@address

例如:
ssh cov_chong@192.168.124.251

选择路径

配置即可

七、连接 Ubuntu

VSCode 再按:
Ctrl + Shift + P

输入:

复制代码
Remote-SSH: Connect to Host

选择:ubuntu

第一次会问系统类型,选择:Linux

然后输入 Ubuntu 密码。

连接成功后,VSCode 左下角会显示:
SSH: 192.168.124.251

或者:
SSH: ubuntu

这说明已经连上 Ubuntu。

八、VS Code 配置(C/C++示例)

打开文件夹(没有则自行创建)

在左侧资源管理器中创建文件,结构如图所示

你必须要创建.vscode文件夹和settings.json文件

对json文件进行编辑

复制代码
{
  "code-runner.executorMap": {
    "cpp": "g++ \"$fileName\" -std=c++23 -O2 -Wall -o \"$fileNameWithoutExt\" && ./$fileNameWithoutExt"
  }
}

安装Code Runner拓展

注意是在远程主机上安装

其次你还需要安装C/C++ Extension Pack

如果你不安装,你写代码的时候也会弹出来

这里用到Code Runner如果你没看过我之前的文章建议看一下

用局部的json配置是防止全局配置被更改,当然如果你在全局配置也可以

这样ubantu里面就不需要这个json配置,但如果两个平台来回开发就会繁琐

九、在 Ubuntu 上运行代码(C/C++示例)

现在配置已经完成,可以开始编辑代码

cpp 复制代码
#include <iostream>
#include <unistd.h>
#include <arpa/inet.h>

int main() {

    std::cout << "Hello World!" << std::endl;

    return 0;
}

右键运行

恭喜你成功了!

回到ubantu上运行

1.cpp是源文件,我们要运行的是1

这只是个临时名字,可以随意更改,我这里只是图方便

使用./+名字运行

成功!

至此目标已全部实现。

相关推荐
^Rocky7 小时前
IT 疑难杂症诊疗室:复杂技术问题解决实录
运维·bug
景熙55237 小时前
单体项目编写思路和落地形式
java·开发语言
Ivanqhz7 小时前
Slope One 算法详解:与矩阵分解、共现矩阵的异同
java·服务器·网络·人工智能·深度学习
挖掘狂人7 小时前
当生产环境"变慢",我用这套 perf + strace 30 分钟定位瓶颈
linux·运维·性能优化
库玛西7 小时前
哈夫曼树与前缀编码:数据压缩的贪心核心
c语言·c++·笔记·考研
别动我齐刘海7 小时前
ROS2 Jazzy + C++ 实战路线——进阶学习3
c++·人工智能·vscode·python·算法·机器学习·机器人
Bs_MoneyMagnet7 小时前
基于springboot+vue的非遗物质文化遗产系统的设计与实现 源码+文档
java·vue.js·spring boot·后端·spring·毕业设计·计算机毕业设计
万物智能7 小时前
波形发生AD9833模块配置—【万物智能之开源鸿蒙OpenHarmony系统实战开发系列教程】
java
0+1117 小时前
算法 --滑动窗口
c++·算法·leetcode
计算机毕设定制辅导-无忧学长8 小时前
《基于SpringBoot的未成年人健康知识科普平台的设计与实现》
java·开发语言·vue.js·spring boot·未成年人健康知识科普平台