CSDN博客-第二篇-Linux基础Day2

发布时间:2026/7/23 6:35:44
CSDN博客-第二篇-Linux基础Day2 Linux 基础 Day2终端快捷键 · 文件系统 · 路径 · 文件类型 · 目录操作系列粤嵌嵌入式培训学习笔记 (第 2 篇)上一篇从零搭建 Ubuntu 开发环境VMware 工具链下一篇文件操作touch / cp / mv / rm环境Ubuntu 22.04 · bash | 2026年7月22日① 概览正式进入 Linux 系统实际操作。所有操作在终端中进行——后续 C 代码的编写、编译、调试全在这里。模块一句话终端常用快捷键9 组重点 5 组提示符解析zhaolinubuntu:~$六段拆解Linux 文件系统“万物皆文件” 倒树状目录 核心目录嵌入式用途表路径概念 ⭐绝对 vs 相对./../../../~Linux 文件类型7 种ls -l首字符识别目录操作 ⭐pwdlscdmkdirrmdir 通配符*② 终端常用快捷键⚠️ 一定要在英文输入法下操作通过 Shift 切换中英文。快捷键功能嵌入式使用场景Ctrl Shift 放大终端字体查看长指令、编译日志时清晰显示Ctrl -缩小终端字体终端内容过多时精简显示Ctrl L清理终端屏幕实操作后清空冗余输出Ctrl S锁定终端内容调试驱动、查看关键日志时防止误操作Ctrl Q解除终端锁定锁定后恢复操作Ctrl C终止当前进程终止卡死的调试程序、无限循环Ctrl Alt T打开新终端多任务编译 调试 日志查看同时进行Ctrl D退出终端会话完成操作后安全退出Tab命令/文件名补全输入cd /ho Tab →cd /home# 演示Tab 补全zhaolinubuntu:~$cd/ho# 此时按 Tabzhaolinubuntu:~$cd/home/# 自动补全⚠️CtrlS 踩坑预警按下后终端像死了一样新手第一反应关窗口。其实只是输出冻结CtrlQ就恢复。这是历史遗留的 XON/XOFF 硬件流控设计。③ 终端提示符解析zhaolinubuntu:~$部分含义zhaolin当前登录用户名分隔符无实际意义ubuntu主机名系统安装时配置~当前工作目录家目录 /home/zhaolin$权限标识$ 普通用户# root 超级用户用户权限嵌入式开发重点用户类型权限范围嵌入式使用场景普通用户$仅操作个人目录、普通指令日常开发、C/C 编译优先使用避免误改系统超级用户#最高权限可执行任何操作驱动开发、系统配置、安装依赖用完立即退出④ Linux 文件系统Linux 遵循万物皆文件设计哲学采用层级式倒树状目录结构。# 看看根目录下有什么zhaolinubuntu:~$ls/ bin cdrom etc lib lib64 lostfound mnt proc run snap swapfile tmp var boot dev home lib32 libx32 media opt root sbin srv sys usr核心目录嵌入式视角目录功能嵌入式核心用途重要度/根目录所有绝对路径的起点一切文件和目录的顶层入口⭐⭐⭐⭐⭐/dev硬件设备文件外设驱动开发、串口调试、GPIO 访问⭐⭐⭐⭐⭐/etc系统/应用配置文件环境变量配置、驱动开机加载配置⭐⭐⭐⭐⭐/home普通用户家目录代码存放、项目管理、编译输出⭐⭐⭐⭐⭐/bin普通用户指令ls, cd, cp, cat终端基础操作⭐⭐⭐⭐/usr软件安装路径bin, lib, include交叉编译器、开发工具安装位置⭐⭐⭐⭐/mnt外设临时挂载目录U盘、共享文件夹、NFS 网络目录⭐⭐⭐⭐/boot引导程序内核、grub系统移植、内核裁剪⭐⭐⭐/lib系统/应用依赖库C/C 程序链接驱动库⭐⭐⭐/proc运行时虚拟文件系统性能调试、进程监控⭐⭐⭐/var日志、缓存、备份运行日志存储⭐⭐⭐/sbin超级用户特权指令fdisk, mount, insmod驱动安装、磁盘分区⭐⭐⭐⑤ 路径概念 ⭐绝对路径 vs 相对路径路径类型核心定义举例绝对路径以根目录/为起点的完整路径全局唯一/mnt/hgfs/share/demo01.c相对路径以当前工作目录./为起点随工作目录变化./demo01.c核心操作符操作符含义示例./当前工作目录./uart_app运行当前目录下的串口应用../上一级目录cd ../app切换到同级 app 目录../../上两级目录cd ../../从/home/zhaolin/code到/home~当前用户家目录cd ~/code切到家目录下的 code 文件夹实操演示# 假设目录结构# /home/zhaolin/practice# ├── day01/# └── day02/# 绝对路径从 / 开始写完整→不管你在哪都能找到zhaolinubuntu:~$cd/home/zhaolin/practice/day01 zhaolinubuntu:~/practice/day01$pwd/home/zhaolin/practice/day01# 相对路径从当前位置走→换个目录就不对了zhaolinubuntu:~/practice/day01$cd../day02 zhaolinubuntu:~/practice/day02$pwd/home/zhaolin/practice/day02# ./ 表示当前目录通常可以省略zhaolinubuntu:~/practice/day02$ls./# 列出当前目录内容跟直接 ls 一样⑥ Linux 文件类型Linux不靠后缀名判断文件类型.txt只是给人看的靠ls -l第一列首字符标识文件类型嵌入式核心用途d目录文件存放项目代码、驱动文件、工程子目录-普通文件C/C 源码.c/.cpp、可执行文件、配置文件l符号链接文件驱动库快捷方式、头文件软链接c字符设备文件串口、终端、GPIO、显示屏按字符流交互b块设备文件硬盘、U盘、Flash、EMMC按数据块交互s套接字文件进程间网络通信嵌入式网络编程高频p管道文件多进程间数据传输传感器数据、控制指令# 在根目录找 d、l、- 开头的内容zhaolinubuntu:~$ls-l/ drwxr-xr-x2root root40967月2022:00 bin# d 目录drwxr-xr-x4root root40967月2022:00 boot drwxr-xr-x20root root42607月2214:30 dev drwxr-xr-x140root root122887月2214:30 etc drwxr-xr-x3root root40967月2022:00 home lrwxrwxrwx1root root77月2022:00 lib -usr/lib# l 符号链接drwxr-xr-x2root root40967月2022:00 mnt# /dev 下全是设备文件c 字符设备b 块设备zhaolinubuntu:~$ls-l/dev|head-10crw-r--r--1root root10,2357月2214:30 autofs# c 字符设备crw-------1root root10,2347月2214:30 btrfs-control brw-rw----1root disk8,07月2214:30 sda# b 块设备硬盘brw-rw----1root disk8,17月2214:30 sda1# b 块设备分区crw-rw----1roottty4,07月2214:30 tty0# c 字符设备终端⑦ 目录操作 ⭐ 重点命令格式指令[选项][操作的文件或者目录]# [] 表示可选参数7.1 pwd — 查看当前目录zhaolinubuntu:/mnt/hgfs/share$pwd/mnt/hgfs/share zhaolinubuntu:/mnt/hgfs/share$cd~ zhaolinubuntu:~$pwd/home/zhaolin7.2 ls — 列出目录内容基础用法zhaolinubuntu:~$ls# 当前目录公共的 模板 视频 图片 文档 下载 音乐 桌面 demo01.c zhaolinubuntu:~$ls/# 指定路径bin cdrom etc lib lib64 lostfound mnt proc run snap swapfile tmp var boot dev home lib32 libx32 media opt root sbin srv sys usr zhaolinubuntu:~$ls./# 等价于 ls./ 可省略-a显示所有文件含隐藏文件zhaolinubuntu:~$ls-a....bash_history .bashrc .profile .vimrc 公共的 模板 视频 图片 文档 下载 音乐 桌面 demo01.c snap .cache Linux 隐藏文件/目录以.开头如.bashrc、..。-l长格式显示详细信息zhaolinubuntu:~$ls-ldrwxr-xr-x2zhaolin zhaolin409610月122025公共的 drwxr-xr-x2zhaolin zhaolin409610月122025模板 drwxr-xr-x2zhaolin zhaolin409610月122025视频 -rw-rw-r--1zhaolin zhaolin3587月22 09:14 demo01.c drwx------3zhaolin zhaolin40967月2114:46 snapls -l输出逐列解读d rwxr-xr-x 2 zhaolin zhaolin 4096 10月12 13:27 桌面 | | | | | | | | 文件类型 权限 硬链接数 所有者 所属组 文件大小 修改时间 文件名-r反向排序zhaolinubuntu:~$ls-ldrwxr-xr-x2zhaolin zhaolin409610月122025公共的 drwxr-xr-x2zhaolin zhaolin409610月122025模板 drwxr-xr-x2zhaolin zhaolin409610月122025视频 drwx------3zhaolin zhaolin40967月2114:46 snap# 文件名 A→Zzhaolinubuntu:~$ls-lrdrwx------3zhaolin zhaolin40967月2114:46 snap drwxr-xr-x2zhaolin zhaolin409610月122025视频 drwxr-xr-x2zhaolin zhaolin409610月122025模板 drwxr-xr-x2zhaolin zhaolin409610月122025公共的# 文件名 Z→A-t按修改时间排序zhaolinubuntu:~$ls-lt-rw-rw-r--1zhaolin zhaolin3587月2214:24 demo02.c# 最新-rw-rw-r--1zhaolin zhaolin3587月22 09:14 demo01.c drwxr-xr-x3zhaolin zhaolin40967月2114:46 snap drwxr-xr-x2zhaolin zhaolin409610月122025公共的# 最旧 → 降序zhaolinubuntu:~$ls-ltrdrwxr-xr-x2zhaolin zhaolin409610月122025公共的# 最旧drwxr-xr-x3zhaolin zhaolin40967月2114:46 snap -rw-rw-r--1zhaolin zhaolin3587月22 09:14 demo01.c -rw-rw-r--1zhaolin zhaolin3587月2214:24 demo02.c# 最新 → 升序组合选项可以合并写zhaolinubuntu:~$ls-l-t-r# 逐个写zhaolinubuntu:~$ls-ltr# 合并写效果一样指定路径zhaolinubuntu:~$ls/mnt/hgfs/share# 看共享文件夹zhaolinubuntu:~$ls/home# 看所有用户家目录zhaolin7.3 cd — 切换目录命令功能示例cd ~切换到当前用户家目录cd ~→/home/zhaolincd -返回上一次操作的目录在两个目录间横跳cd /切换到根目录cd /→/cd ..切换到上一级目录cd ..→ 父目录cd ../..切换到上两级目录cd ../..→ 祖父目录# 演示zhaolinubuntu:~$cd/home/zhaolin# 绝对路径zhaolinubuntu:~$cd/homecdzhaolin# 相对路径等价于 cd ./zhaolinzhaolinubuntu:~$cd/mnt/hgfs# 去共享文件夹zhaolinubuntu:/mnt/hgfs$cd-# 回上一个目录/home/zhaolin zhaolinubuntu:~$cd-# 再按一次又回去了/mnt/hgfs7.4 mkdir — 创建目录创建单个目录zhaolinubuntu:~$mkdir20260722# 等于 mkdir ./20260722zhaolinubuntu:~$ls20260722公共的 模板 视频 图片 文档 下载 音乐 桌面批量创建空格分隔zhaolinubuntu:~$mkdir2026072320260724zhaolinubuntu:~$ls202607222026072320260724公共的 模板 视频 图片 文档 下载 音乐 桌面-p创建嵌套目录中间不存在的自动补zhaolinubuntu:~$mkdir-pa1/b1/c1# 单个嵌套zhaolinubuntu:~$mkdir-pa2/b2/c2 a3/b3/c3# 批量嵌套zhaolinubuntu:~$mkdir-pa4/b4/c4 aDir# 嵌套 非嵌套混建# 验证嵌套结果zhaolinubuntu:~$ls-Ra1 a1: b1 a1/b1: c1 a1/b1/c1: 空目录无内容⚠️ 不加-p父目录不存在直接报错zhaolinubuntu:~$mkdirx/y/z mkdir: 无法创建目录x/y/z:没有那个文件或目录7.5 rmdir — 删除空目录限制只能删空目录目录非空就报错。zhaolinubuntu:~$mkdirCC AA BB zhaolinubuntu:~$rmdirCC# 删单个空目录 → 成功无提示zhaolinubuntu:~$rmdirAA BB# 批量删空目录# 删非空目录会报错zhaolinubuntu:~$mkdir-pproject/src zhaolinubuntu:~$rmdirproject rmdir: 删除project失败: 目录非空# 因为里面还有 src/7.6 通配符**匹配 0 到多个任意字符rmdir的高频搭档zhaolinubuntu:~$mkdirtestDir testDir1 testFile aDir bDir zhaolinubuntu:~$rmdirtest*# 删所有 test 开头的空目录# testDir、testDir1、testFile 全部删除zhaolinubuntu:~$rmdir*Dir# 删所有 Dir 结尾的空目录# aDir、bDir 全部删除zhaolinubuntu:~$rmdir*# 删当前目录下所有空目录# 非空目录会跳过并报错不影响 通配符也可用在其他指令中不限于rmdir。⑧ 踩坑记录 ⭐坑1CtrlS按完终端没反应现象终端按键无反应像死机排查CtrlC没用 → 不是程序卡住 → 想起 CtrlS根因CtrlS是 XON/XOFF 硬件流控遗留下的暂停输出信号解决按CtrlQ不要关终端坑2mkdir a/b/c报错现象mkdir: 无法创建目录 a/b/c: 没有那个文件或目录根因中间目录 a、b 不存在mkdir默认不自动创建父目录解决mkdir -p a/b/c坑3rmdir project报目录非空现象rmdir: 删除 project 失败: 目录非空根因rmdir只能删空目录解决非空目录用rm -r下篇或先手动清空所有子目录⑨ 小结今天完成终端 9 组快捷键 → 提示符拆解 → “万物皆文件” 12 个核心目录 → 绝对/相对路径 → 7 种文件类型 →pwdlscdmkdirrmdir 通配符。下一篇文件操作touchcpmvrm。本文首发于 CSDN转载请注明出处。