登录
/
注册
首页
论坛
其它
首页
科技
业界
安全
程序
广播
Follow
关于
导读
排行榜
资讯
发帖说明
登录
/
注册
账号
自动登录
找回密码
密码
登录
立即注册
搜索
搜索
关闭
CSDN热搜
程序园
精品问答
技术交流
资源下载
本版
帖子
用户
软件
问答
教程
代码
写记录
写博客
小组
VIP申请
VIP网盘
网盘
联系我们
发帖说明
道具
勋章
任务
淘帖
动态
分享
留言板
导读
设置
我的收藏
退出
腾讯QQ
微信登录
返回列表
首页
›
业界区
›
安全
›
如何在 linux 下使用命令行调试器调试 C# 程序 ...
如何在 linux 下使用命令行调试器调试 C# 程序
[ 复制链接 ]
臧莞然
2026-1-29 19:30:02
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
作者:张富春(ahfuzhang),转载时请注明作者和引用链接,谢谢!
cnblogs博客
zhihu
Github
公众号:一本正经的瞎扯
总结:想不花钱就变强是不可能的,调试 C# 很困难的核心原因可能是你没有花钱买 Visual Studio.
下面是 在 linux 下调试 C# 程序的步骤。
1. 安装
如果没有安装 dotnet, 就先安装 dotnet
curl -fsSL https://dot.net/v1/dotnet-install.sh -o dotnet-install.sh
chmod +x dotnet-install.sh
./dotnet-install.sh --channel 10.0
# 加到环境变量
echo "export DOTNET_ROOT=$HOME/.dotnet" >> ~/.bashrc
echo "export PATH=$DOTNET_ROOT:$PATH" >> ~/.bashrc
source ~/.bashrc
# 验证
dotnet --version
复制代码
安装调试器
wget https://github.com/Samsung/netcoredbg/releases/download/3.1.3-1062/netcoredbg-linux-amd64.tar.gz
sudo tar -zxvf netcoredbg-linux-amd64.tar.gz -C /usr/local/bin
echo "export PATH=/usr/local/bin/netcoredbg/:$PATH" >> ~/.bashrc
source ~/.bashrc
# 验证
netcoredbg --version
复制代码
2. 编译代码
把源码编译到二进制中
在 .csproj 文件中加入:
<PropertyGroup>
<DebugType>portable</DebugType>
<DebugSymbols>true</DebugSymbols>
<EmbedAllSources>true</EmbedAllSources>
<EmbedUntrackedSources>true</EmbedUntrackedSources>
<Optimize>false</Optimize>
</PropertyGroup>
复制代码
编译
dotnet build -c Debug $(PROJECT).csproj -o ../../build/code-snippets/$(PROJECT)/
复制代码
编译 debug 版本。
3. 运行调试器
netcoredbg \
--interpreter=cli -- \
dotnet ../../build/code-snippets/ConsoleLoggerCli/ConsoleLoggerCli.dll -threadpool.max=1
复制代码
注意:
一定要以 dotnet 来运行
要运行的二进制程序是 .dll 文件
后面可以跟命令行参数。 (-threadpool.max=1 是我自己程序的命令行参数)
输入 help 可以查看命令
设置断点
break Program.cs:10 # break 可以简写为 b
复制代码
这里指定 Main() 函数中的一行为断点。
执行
run # 或者简写为 r
复制代码
开始运行到断点。
单步
list 或 l: 浏览源码
step 或 s: 执行到函数内部
next 或 n: 执行到下一行
这个工具很难用,执行 n 后,需要手动再执行 l 来显示源码。
print 或 p: 输出某个变量的值:
输出 byte[] 中的字符串内容: p System.Text.Encoding.UTF8.GetString(myBytes)
4. 避坑
以下方法我尝试过不行:
macos + arm64: netcoredbg 没有 arm64 版本。想要在 macos 上调试估计就只能用 docker 或者改 linux 平台了。
vsdbg
下载: curl -sSL https://aka.ms/getvsdbgsh | bash /dev/stdin -v latest -l ~/.vsdbg
使用: ~/.vsdbg/vsdbg --interpreter=mi -- dotnet ../../build/code-snippets/$(PRJ)/$(PRJ) -- -threadpool.max=1, 根本就无法运行
dotnet-sos
下载: dotnet tool install -g dotnet-sos
安装: dotnet-sos install
lldb 下调试: lldb -- ../../build/code-snippets/$(PRJ)/$(PRJ) -threadpool.max=1, lldb 中执行到 setsymbolserver -ms 时崩溃。macos 下无法使用。
dotnet tool install --global dotnet-dump 这个不是调试工具。
来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
何在
linux
使用
命令行
调试器
相关帖子
gitee使用教程
使用PHP对接韩国股票市场API 实时数据、IPO和K线(Kline)的PHP对接方案
如何在手机微信上重新排列PDF文件?
使用Java对接印度股票市场API 实时数据、IPO和K线(Kline)的PHP对接方案
【ESP32】使用 MQTT(S) 连接华为云 IoT
从分形到森林——使用 Three.js 创建逼真的 3D 树木
为什么使用 Skillsbase 维护自己的 Skills 收藏仓库
为什么使用 Skillsbase 维护自己的 Skills 收藏仓库
为什么使用 Skillsbase 维护自己的 Skills 收藏仓库
为什么使用 Skillsbase 维护自己的 Skills 收藏仓库
回复
使用道具
举报
提升卡
置顶卡
沉默卡
喧嚣卡
变色卡
千斤顶
照妖镜
相关推荐
安全
gitee使用教程
1
35
醋辛
2026-04-02
安全
使用PHP对接韩国股票市场API 实时数据、IPO和K线(Kline)的PHP对接方案
0
790
锟及
2026-04-02
安全
如何在手机微信上重新排列PDF文件?
0
59
指陡
2026-04-03
安全
使用Java对接印度股票市场API 实时数据、IPO和K线(Kline)的PHP对接方案
2
67
湄圳啸
2026-04-04
安全
【ESP32】使用 MQTT(S) 连接华为云 IoT
1
121
缀访
2026-04-05
业界
从分形到森林——使用 Three.js 创建逼真的 3D 树木
0
260
豹筒生
2026-04-06
业界
为什么使用 Skillsbase 维护自己的 Skills 收藏仓库
0
192
宋子
2026-04-07
业界
为什么使用 Skillsbase 维护自己的 Skills 收藏仓库
0
541
痕厄
2026-04-07
业界
为什么使用 Skillsbase 维护自己的 Skills 收藏仓库
0
869
丝甲坞
2026-04-07
业界
为什么使用 Skillsbase 维护自己的 Skills 收藏仓库
0
254
蚣澡
2026-04-07
回复
(16)
狭踝仇
2026-2-7 08:44:24
回复
使用道具
举报
照妖镜
程序园永久vip申请,无限下载程序园所有程序/软件/数据/等
谢谢楼主提供!
蔡如风
2026-2-8 01:34:08
回复
使用道具
举报
照妖镜
程序园永久vip申请,无限下载程序园所有程序/软件/数据/等
热心回复!
仇华乐
2026-2-9 22:22:27
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
谢谢分享,试用一下
闻成
2026-2-10 04:11:21
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
用心讨论,共获提升!
剧拧并
2026-2-10 18:17:50
回复
使用道具
举报
照妖镜
程序园永久vip申请,无限下载程序园所有程序/软件/数据/等
谢谢分享,试用一下
费卿月
2026-2-10 21:44:07
回复
使用道具
举报
照妖镜
程序园永久vip申请,无限下载程序园所有程序/软件/数据/等
感谢,下载保存了
章绮云
2026-2-13 09:11:44
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
懂技术并乐意极积无私分享的人越来越少。珍惜
缢闸
2026-2-13 11:40:05
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
谢谢分享,辛苦了
滑清怡
2026-2-13 21:54:17
回复
使用道具
举报
照妖镜
程序园永久vip申请,无限下载程序园所有程序/软件/数据/等
鼓励转贴优秀软件安全工具和文档!
咫噎
2026-2-14 02:28:11
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
收藏一下 不知道什么时候能用到
司马黛
2026-2-27 05:24:34
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
东西不错很实用谢谢分享
染悄
2026-3-1 12:41:33
回复
使用道具
举报
照妖镜
程序园永久vip申请,无限下载程序园所有程序/软件/数据/等
热心回复!
锦惺
2026-3-2 11:21:13
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
很好很强大 我过来先占个楼 待编辑
何书艺
2026-3-3 03:22:30
回复
使用道具
举报
照妖镜
程序园永久vip申请,无限下载程序园所有程序/软件/数据/等
前排留名,哈哈哈
尹疋
2026-3-8 09:40:06
回复
使用道具
举报
照妖镜
程序园永久vip申请,无限下载程序园所有程序/软件/数据/等
谢谢楼主提供!
揿纰潦
2026-3-9 10:25:36
回复
使用道具
举报
照妖镜
程序园永久vip申请,无限下载程序园所有程序/软件/数据/等
东西不错很实用谢谢分享
呼延冰枫
前天 22:11
回复
使用道具
举报
照妖镜
程序园永久vip申请,无限下载程序园所有程序/软件/数据/等
喜欢鼓捣这些软件,现在用得少,谢谢分享!
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
回复
本版积分规则
回帖并转播
回帖后跳转到最后一页
浏览过的版块
代码
签约作者
程序园优秀签约作者
发帖
臧莞然
前天 22:11
关注
0
粉丝关注
18
主题发布
板块介绍填写区域,请于后台编辑
财富榜{圆}
3934307807
991126
anyue1937
9994892
kk14977
6845359
4
xiangqian
638210
5
神泱
9517
6
宋子
9876
7
韶又彤
9909
8
荪俗
8991
9
蓬森莉
9868
10
俞瑛瑶
10000
查看更多
今日好文热榜
0
Flutter3.41+DeepSeek智能AI应用|flutter3+
813
AI时代的变更到底怎么管?(抛砖引玉版)
696
OJ平台远端代码沙箱开发第一周:需求拆解与
978
万字详解 RAG 基础概念:什么是 RAG? 为什
397
天谋科技入选北京市 2026 年第一批专精特新
158
AI对普通人到底有什么用?这8个场景告诉你
78
【节点】[Reciprocal节点]原理解析与实际应
254
为什么使用 Skillsbase 维护自己的 Skills
369
WorkBuddy:快速开启龙虾(OpenClaw)之旅
541
为什么使用 Skillsbase 维护自己的 Skills
869
为什么使用 Skillsbase 维护自己的 Skills
192
为什么使用 Skillsbase 维护自己的 Skills
689
自我即自感:一种极简存在论(四篇)
707
为什么现在所有大厂都在做 CLI ?(附Cluade
390
GitHub 热门项目 Top 10 | 2026年04月07日
533
.NET 高级开发 | .NET 中的序列化和反序列
88
读2025世界前沿技术发展报告34海洋信息技术
731
读2025世界前沿技术发展报告34海洋信息技术
296
程序员AI编程之提示词【学习笔记】
805
Tcache attack