# [特殊字符] Linux 学习笔记(一):环境搭建与 C 语言开发初体验
Linux 学习笔记一环境搭建与 C 语言开发初体验前言作为一名数据科学与大数据技术专业的大一学生我正式启动了 Linux 系统的学习计划。本系列博客将记录我从零开始学习 Linux 的完整过程包括命令操作、C/C 开发、系统编程等内容。这是第一篇主要分享 WSL Ubuntu 环境的搭建以及用 vim 编写并运行第一个 C 程序的全过程。 目录一、环境信息二、核心命令笔记2.1 文件与目录操作2.2 文件内容查看2.3 vim 编辑器基本操作2.4 编译与运行 C 程序2.5 系统与权限管理三、完整工作流演示四、踩坑记录五、学习体会与下一步计划一、环境信息项目说明宿主机系统Windows 11Linux 子系统WSL 2 (Windows Subsystem for Linux)Linux 发行版Ubuntu 22.04 LTS编译器gcc (GNU Compiler Collection)编辑器vim终端Windows Terminal / Ubuntu 应用二、核心命令笔记2.1 文件与目录操作Linux 一切皆文件这些命令是日常使用频率最高的基础操作。命令作用示例补充说明pwd查看当前目录完整路径/home/y1346print working directory 的缩写ls列出当前目录文件和文件夹ls最常用的查看命令ls -l详细列表权限、大小、日期ls -l-l是 long 的意思ls -a显示所有文件含隐藏文件ls -a-a是 all 的意思mkdir创建新目录mkdir projectmake directory 的缩写cd切换目录cd projectchange directory 的缩写cd ..返回上一级目录两个点代表上级目录cd ~返回用户家目录~代表/home/用户名rm删除文件rm test.c删除目录需要加-r参数2.2 文件内容查看命令作用示例补充说明cat一次性打印全部内容到终端cat hello.c适合小文件less分页查看可上下翻页less 大文件.log按q退出2.3 vim 编辑器基本操作vim 有三种模式初学者先掌握两种命令模式和插入模式。操作所处模式作用备注vim 文件名终端命令用 vim 打开或创建文件按i命令模式 → 插入模式在光标前开始编辑insert按a命令模式 → 插入模式在光标后开始编辑append按o命令模式 → 插入模式在下一行新建并编辑open a new line按Esc插入模式 → 命令模式退出编辑状态最常用的键:w命令模式保存文件write:q命令模式退出 vimquit:wq命令模式保存并退出合二为一:q!命令模式强制退出不保存!代表强制2.4 编译与运行 C 程序命令作用示例gcc 源文件.c -o 输出名编译并指定可执行文件名gcc hello.c -o hellogcc -Wall 源文件.c -o 输出名编译并显示所有警告推荐gcc -Wall hello.c -o hellogcc -g 源文件.c -o 输出名编译并加入调试信息gcc -g hello.c -o hello./程序名运行当前目录下的可执行文件./hello2.5 系统与权限管理命令作用示例sudo 命令以超级管理员权限执行sudo apt install gccapt update更新软件包列表不安装任何东西sudo apt updateapt install 包名安装指定软件包sudo apt install build-essentialexit退出当前终端会话clear清空终端屏幕或Ctrl Lman 命令名查看命令的官方手册man gcc按q退出三、完整工作流演示以下是我今天编写、编译并运行第一个 C 程序的完整操作流程# 第一步确认当前位置y1346localhost:~$pwd/home/y1346# 第二步查看当前目录有什么文件y1346localhost:~$ls-l# 第三步用 vim 创建并编写源码y1346localhost:~$vimhello.c# 按 i 进入插入模式# 输入以下代码# #include stdio.h# int main() {# printf(Hello, Linux!\n);# return 0;# }# 按 Esc 退回命令模式# 输入 :wq 保存退出# 第四步用 gcc 编译y1346localhost:~$ gcc hello.c-ohello# 第五步运行程序y1346localhost:~$ ./hello Hello, Linux!# 第六步查看源码内容y1346localhost:~$cathello.c#include stdio.hintmain(){printf(Hello, Linux!\n);return0;四、踩坑记录记录从环境搭建到运行成功遇到的所有问题避免重复踩坑。序号问题原因分析解决方法1输入gcc提示Command not foundUbuntu 刚装好是纯净系统不带 C 编译器sudo apt update sudo apt install -y build-essential gdb2设置密码时屏幕上不显示任何字符Linux 的安全机制密码输入不产生回显不用管屏幕正常输入后直接按回车即可3vim 打开后无法打字按键盘没反应vim 刚启动时处于“命令模式”不接收文字输入按键盘上的i键进入“插入模式”后才能打字4退出 vim 时不知道该怎么办处于插入模式或命令模式直接按Esc再输入命令按Esc确保回到命令模式输入:wq保存退出或:q!强制退出不保存5执行迁移脚本后打开 Ubuntu 默认用户变成了rootWSL 导入新实例后默认登录用户被重置为root运行 echo “[user]”五、学习体会与下一步计划 今天的收获从会用电脑到能控制电脑以前操作电脑全靠鼠标点来点去今天第一次感受到用命令行直接和系统对话的掌控感。pwd告诉我我在哪ls让我看到周围有什么这种感觉和 Windows 完全不同。理解了编程环境到底是怎么回事以前写 C 语言是在 Windows 的 IDE比如 Dev-C、VS Code里点个绿色三角就能跑。今天手动经历了编辑源码 → 编译成二进制文件 → 运行可执行文件的完整流程对代码是怎么变成程序的有了更直观的认识。vim 没有想象中那么可怕第一天只学会了i、Esc、:wq三个操作但已经能独立完成代码编写了。以后慢慢积累其他快捷键效率会越来越高。 今天的不足对 Linux 的目录结构不熟悉对/home、/usr、/etc等目录各自的作用还不清楚需要系统学习一下。vim 操作不够熟练经常忘了自己处在什么模式需要更多练习。 下一步学习计划强化 vim跟着vimtutor官方教程完整过一遍掌握更多编辑技巧。数据结构和 Linux 结合在 Ubuntu 下用 C 语言实现链表、栈、队列把代码上传到 GitHub。学习 gdb 调试程序不可能一次写对学会用调试器找 bug 是开发者的基本功。写第二篇博客等链表写出来整理成一篇新的学习笔记保持每周至少一篇的输出节奏。本系列文章将持续更新欢迎交流指正。作者y1346日期2026-05-28标签Linux C语言 vim Ubuntu WSL 学习笔记学习笔记