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

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

使用./+名字运行

成功!

至此目标已全部实现。

相关推荐
AI的探索之旅3 分钟前
97 个 OpenCV 实例(三十七):二维码识别,一张图四个码的陷阱
c++·opencv·计算机视觉
IT枫斗者枫哥4 分钟前
CompletableFuture失败后返回空列表:异常没了,业务含义也变了
java·后端
甜到心里的蛋糕5 分钟前
从 QQ 机器人到 B 站 AI 运营:一套可复现的视频流水线踩坑实录
运维·人工智能·python·自动化·视频制作
知识搬运临时工15 分钟前
一个模板把 AEM 拖进 Full GC 死亡螺旋:300% CPU、7 GB 堆、310 万行堆栈
java·aws
QYR-分析16 分钟前
26.2% 高增!场内及园区无人物流车,厂内短驳自动化的 L4 货运载体
运维·自动化
熊猫钓鱼>_>18 分钟前
鸿蒙 PC 三方库适配复盘:libfvad 1.0 —— 把 WebRTC VAD 做成能装进采集链路的静态库
服务器·开发语言·华为·harmonyos·openharmony·适配·鸿蒙pc
用户4329359280519 分钟前
CoAP还是MQTT:1万只Cat.1水表三个月带宽续航实测
java
用户83514140494925 分钟前
把日志和寄存器值喂给AI做故障定位,我的实际问法
linux·ubuntu
知守观29 分钟前
多模块架构演进:横向分层 vs 纵向领域,13 个真实项目的切分对照
java·后端·微服务
java_logo29 分钟前
Docker 部署 DPanel:轻松搭建轻量容器管理平台
运维·docker·容器·podman·容器管理·dpanel·轩辕镜像