📟 核心文件與目錄操作
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
-> 功能: 快速查看該命令的幫助摘要。