嵌入式Linux常用命令

发布于:2025-09-16 ⋅ 阅读:(22) ⋅ 点赞:(0)

📟 核心文件与目录操作

  1. pwd
    -> 功能: 打印当前工作目录的绝对路径。
    -> 示例: pwd -> 输出 /home/user/project

  2. ls [选项] [目录]
    -> 功能: 列出目录内容。
    -> 常用选项:
    -l: 长格式显示(详细信息)
    -a: 显示所有文件(包括隐藏文件)
    -h: 与-l合用,以易读格式显示文件大小
    -> 示例:
    ls -la /etc -> 详细列出/etc目录所有文件

  3. cd [目录路径]
    -> 功能: 切换当前工作目录。
    -> 示例:
    cd /usr/bin -> 切换到绝对路径
    cd .. -> 切换到上级目录
    cd ~ -> 切换到用户家目录
    cd - -> 切换回上一个所在目录

  4. cp [选项] 源文件 目标文件
    -> 功能: 复制文件或目录。
    -> 常用选项: -r: 递归复制(用于目录)
    -> 示例:
    cp config.txt config_backup.txt -> 复制文件
    cp -r firmware/ backup/ -> 复制整个目录

  5. mv [选项] 源文件 目标文件
    -> 功能: 移动或重命名文件/目录。
    -> 示例:
    mv old_name.c new_name.c -> 重命名文件
    mv kernel.bin /mnt/sdcard/ -> 移动文件

  6. rm [选项] 文件或目录
    -> 功能: 删除文件或目录。(危险!谨慎使用!)
    -> 常用选项:
    -r: 递归删除(用于目录)
    -f: 强制删除,不提示
    -> 示例:
    rm temp.log -> 删除文件
    rm -rf old_build/ -> 强制删除整个目录及其内容

  7. mkdir [选项] 目录名
    -> 功能: 创建新目录。
    -> 常用选项: -p: 创建路径中不存在的父目录
    -> 示例: mkdir -p project/{source,build,output} -> 一次性创建多级嵌套目录

  8. touch 文件名
    -> 功能: 创建空文件或更新文件的时间戳。
    -> 示例: touch new_file.txt


📖 文本查看与处理(嵌入式日志分析核心)

  1. cat [选项] 文件
    -> 功能: 连接并打印文件内容到标准输出(适合看短文件)。
    -> 示例: cat /proc/cpuinfo -> 查看CPU信息

  2. less 文件
    -> 功能: 分页显示文件内容(适合看长日志)。可上下滚动、搜索。
    -> 操作: 进入后,按 / 搜索,按 q 退出。

  3. head [选项] 文件
    -> 功能: 显示文件开头部分(默认10行)。
    -> 示例: head -n 20 system.log -> 查看日志前20行

  4. tail [选项] 文件
    -> 功能: 显示文件末尾部分(默认10行)。
    -> 常用选项: -f: 实时追踪文件新增内容(看日志神器)
    -> 示例: tail -f /var/log/syslog -> 实时监视系统日志

  5. grep [选项] "模式" 文件
    -> 功能: 使用正则表达式搜索文本,打印匹配的行。
    -> 常用选项:
    -r: 递归搜索目录
    -n: 显示匹配行的行号
    -i: 忽略大小写
    -> 示例:
    grep -rn "error" /var/log/ -> 递归搜索日志目录中的所有"error"
    dmesg | grep -i "usb" -> 在内核消息中过滤出USB相关消息


⚙️ 系统与进程管理(调试必备)

  1. ps [选项]
    -> 功能: 显示当前进程的快照。
    -> 常用选项: aux-ef
    -> 示例: ps aux | grep python -> 查找所有Python进程

  2. top / htop
    -> 功能: 动态、交互式地显示进程和系统资源(CPU、内存)占用情况。htop更强大。

  3. kill [选项] PID
    -> 功能: 向进程发送信号以终止它。
    -> 常用选项: -9: 发送SIGKILL信号,强制终止
    -> 示例: kill -9 1234 -> 强制终止PID为1234的进程

  4. df [选项]
    -> 功能: 报告文件系统磁盘空间使用情况。
    -> 常用选项: -h: 以易读格式显示(如G, M)
    -> 示例: df -h -> 查看所有磁盘分区剩余空间

  5. du [选项] 文件或目录
    -> 功能: 估算文件/目录的磁盘使用空间。
    -> 常用选项: -sh: 汇总(-s)并以易读格式(-h)显示总大小
    -> 示例: du -sh ~/project/ -> 查看项目目录总共占了多大空间


📡 网络操作(与开发板交互)

  1. ping [选项] 主机
    -> 功能: 测试与另一台主机的网络连通性。
    -> 示例: ping -c 4 192.168.1.100 -> 向开发板IP发送4个测试包

  2. scp [选项] 源文件 目标路径
    -> 功能: 在本地和远程主机之间安全地复制文件。
    -> 示例:
    scp firmware.bin user@192.168.1.100:~/ -> 推送文件到开发板
    scp user@192.168.1.100:/log.txt ./ -> 从开发板拉取文件

  3. ssh [选项] 用户@主机
    -> 功能: 安全地远程登录到另一台Linux主机。
    -> 示例: ssh root@192.168.1.100 -> 登录到嵌入式开发板


🗜️ 压缩与解压(处理源码和镜像)

  1. 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
    -> 功能: 快速查看该命令的帮助摘要。