📟 核心文件与目录操作
-
pwd-> 功能 : 打印当前工作目录的绝对路径。
-> 示例 :
pwd-> 输出/home/user/project -
ls [选项] [目录]-> 功能 : 列出目录内容。
-> 常用选项 :
-l: 长格式显示(详细信息)
-a: 显示所有文件(包括隐藏文件)
-h: 与-l合用,以易读格式显示文件大小-> 示例 :
ls -la /etc-> 详细列出/etc目录所有文件 -
cd [目录路径]-> 功能 : 切换当前工作目录。
-> 示例 :
cd /usr/bin-> 切换到绝对路径
cd ..-> 切换到上级目录
cd ~-> 切换到用户家目录
cd --> 切换回上一个所在目录 -
cp [选项] 源文件 目标文件-> 功能 : 复制文件或目录。
-> 常用选项 :
-r: 递归复制(用于目录)-> 示例 :
cp config.txt config_backup.txt-> 复制文件
cp -r firmware/ backup/-> 复制整个目录 -
mv [选项] 源文件 目标文件-> 功能 : 移动或重命名文件/目录。
-> 示例 :
mv old_name.c new_name.c-> 重命名文件
mv kernel.bin /mnt/sdcard/-> 移动文件 -
rm [选项] 文件或目录-> 功能 : 删除文件或目录。(危险!谨慎使用!)
-> 常用选项 :
-r: 递归删除(用于目录)
-f: 强制删除,不提示-> 示例 :
rm temp.log-> 删除文件
rm -rf old_build/-> 强制删除整个目录及其内容 -
mkdir [选项] 目录名-> 功能 : 创建新目录。
-> 常用选项 :
-p: 创建路径中不存在的父目录-> 示例 :
mkdir -p project/{source,build,output}-> 一次性创建多级嵌套目录 -
touch 文件名-> 功能 : 创建空文件或更新文件的时间戳。
-> 示例 :
touch new_file.txt
📖 文本查看与处理(嵌入式日志分析核心)
-
cat [选项] 文件-> 功能 : 连接并打印文件内容到标准输出(适合看短文件)。
-> 示例 :
cat /proc/cpuinfo-> 查看CPU信息 -
less 文件-> 功能 : 分页显示文件内容(适合看长日志)。可上下滚动、搜索。
-> 操作 : 进入后,按
/搜索,按q退出。 -
head [选项] 文件-> 功能 : 显示文件开头部分(默认10行)。
-> 示例 :
head -n 20 system.log-> 查看日志前20行 -
tail [选项] 文件-> 功能 : 显示文件末尾部分(默认10行)。
-> 常用选项 :
-f: 实时追踪 文件新增内容(看日志神器)-> 示例 :
tail -f /var/log/syslog-> 实时监视系统日志 -
grep [选项] "模式" 文件-> 功能 : 使用正则表达式搜索文本,打印匹配的行。
-> 常用选项 :
-r: 递归搜索目录
-n: 显示匹配行的行号
-i: 忽略大小写-> 示例 :
grep -rn "error" /var/log/-> 递归搜索日志目录中的所有"error"
dmesg | grep -i "usb"-> 在内核消息中过滤出USB相关消息
⚙️ 系统与进程管理(调试必备)
-
ps [选项]-> 功能 : 显示当前进程的快照。
-> 常用选项 :
aux或-ef-> 示例 :
ps aux | grep python-> 查找所有Python进程 -
top/htop-> 功能 : 动态、交互式地显示进程和系统资源(CPU、内存)占用情况。
htop更强大。 -
kill [选项] PID-> 功能 : 向进程发送信号以终止它。
-> 常用选项 :
-9: 发送SIGKILL信号,强制终止-> 示例 :
kill -9 1234-> 强制终止PID为1234的进程 -
df [选项]-> 功能 : 报告文件系统磁盘空间使用情况。
-> 常用选项 :
-h: 以易读格式显示(如G, M)-> 示例 :
df -h-> 查看所有磁盘分区剩余空间 -
du [选项] 文件或目录-> 功能 : 估算文件/目录的磁盘使用空间。
-> 常用选项 :
-sh: 汇总(-s)并以易读格式(-h)显示总大小-> 示例 :
du -sh ~/project/-> 查看项目目录总共占了多大空间
📡 网络操作(与开发板交互)
-
ping [选项] 主机-> 功能 : 测试与另一台主机的网络连通性。
-> 示例 :
ping -c 4 192.168.1.100-> 向开发板IP发送4个测试包 -
scp [选项] 源文件 目标路径-> 功能 : 在本地和远程主机之间安全地复制文件。
-> 示例 :
scp firmware.bin user@192.168.1.100:~/-> 推送文件到开发板
scp user@192.168.1.100:/log.txt ./-> 从开发板拉取文件 -
ssh [选项] 用户@主机-> 功能 : 安全地远程登录到另一台Linux主机。
-> 示例 :
ssh root@192.168.1.100-> 登录到嵌入式开发板
🗜️ 压缩与解压(处理源码和镜像)
-
tar [选项] 文件-> 功能 : 打包和解压文件。
-> 常用选项 :
-c: 创建压缩包
-x: 解压压缩包
-z: 通过gzip过滤(处理.tar.gz)
-j: 通过bz2过滤(处理.tar.bz2)
-v: 显示过程
-f: 指定文件名-> 示例 :
tar -xzvf linux_source.tar.gz-> 解压常见的gzip压缩包
tar -cjvf my_backup.tar.bz2 project/-> 用bz2压缩项目目录
💡 最重要的技巧:查阅手册
遇到任何命令不会用,就用这个终极命令:
-
man 命令名-> 功能 : 查看该命令的完整官方手册。这是最权威、最准确的学习方式。
-> 示例 :
man grep-> 会列出grep命令的所有选项和详细用法。按q退出。
或者:
-
命令名 --help-> 功能: 快速查看该命令的帮助摘要。