Linux開發使用到的相關命令
後面持續更新中.................
* sudo apt-get install sharutils--解決Ubuntu編譯kernel的uu檔案編譯不通過問題;
* tar -Jxf linux-3.12.tar.xz--解壓tar.xz檔案
tar -Jcf linux-3.12.tar.xz linux-3.12/--壓縮tar.xz檔案
* addr2line--反編譯庫檔案,用於查找出錯的地方 例如:addr2line -fe libcsc.so 000021a0 ,需要在out/....../symbols/system/lib目錄裡執行該命令
* zip -r -X -Zstore ../bootanimation part*/*.png desc.txt--打包Android開機logo命令
* ifconfig eth0 192.168.5.40 netmask 255.255.255.0 --設定IP和掩碼
* tar cjf - logs/ |split -b 1m - logs.tar.bz2.
--將目錄logs打包壓縮並分割成多個1M的檔案,logs.tar.bz2.aa, logs.tar.bz2.ab, logs.tar.bz2.ac
cat logs.tar.bz2.a* | tar xj--對應的解壓命令
* cat /d/clk/clk_summary|grep lcd--檢視LCD配置的頻率
* adb shell logcat -s debug_3256 --在終端輸出TAG為debug_3256的Log資訊
adb shell input text <context> --傳送檔案內容
adb shell input keyevent <keycode> --通過adb命令傳送鍵盤事件
adb shell wm size --獲取裝置解析度
adb shell getprop <key> --獲取裝置引數資訊
adb shell setprop <key> <value> --設定裝置的引數資訊
adb shell screencap -p <path/file> --使用adb命令進行截圖操作
adb shell screenrecord [options] <path/filename> --使用adb命令進行視屏錄製
* dumpsys SurfaceFlinger--檢視是display的個數
* cat /proc/last_log--ddr不掉電的情況下重啟,然後抓取重啟前的lastlog資訊(可用於抓取宕機時logo資訊);
* adb shell pm list packages -f --使用adb工具列出所有的安裝的apk包名
adb install xxx.apk--使用adb工具安裝apkadb uninstall 包名--解除安裝安裝的apk
* getenforce--檢視是否開啟SELinux, 獲取SELinux狀態(permissive,enforcing,disabled)
setenforce 0--臨時關閉SELinux,設定SELinux 成為permissive模式(SELinux開啟,但對違反selinux規則的行為只記錄,不會阻止);
setenforce1--臨時開啟SELinux,設定SELinux 成為enforcing模式
* fc file_name1 file_name2 option--使用adb工具比較兩個檔案
option:
/A--只顯示每個不同處的第一行和最後一行
/B--二進位制比較
/C--不分大小寫
/L--將檔案作為 ASCII 文字比較
* input touchscreen tap x座標 y座標--模擬觸控,點選該座標點,可以編寫指令碼來測試某些功能
* grep "xxx" --查詢xxx字元,
-r --進入所有子目錄裡查詢
-n --列印字元所在的行號
-w --字元完全匹配
-i--不區分大小寫
* vim filename #/bin/bash^M: bad interpreter
:set ff?#可以看到dos或unix的字樣. 如果的確是dos格式的。
:set ff=unix#把它強制為unix格式的, 然後存檔退出。
* mount -o remount,rw /重新掛載命令
* cp picture fb0--在顯示屏顯示該圖片
cp fb0 picture.jpg--截圖
* logcat -s 搜尋字元--logcat檢視需要的相關內容
* find /PATH -name *.c | xargs grep "hello" --從所有.c檔案裡找出有"hello"的檔案
* cat /proc/kmsg | grep "WLAN_RFKILL"(開機只打印一次,後面再執行不會再列印) --檢視kernel列印的相關資訊
建議使用這條語句進行查詢:dmesg | grep "WLAN_RFKILL" (引數-n顯示行數,-i忽略大小寫,-c統計出現的次數,-v反向選擇,)
* top -m 5(代表顯示行數) -t--按cpu大小列出5個程序列表,同時利用這些資訊,可以監控應用cpu的使用,以調整優化程式碼(根據使用率)。
* dumpsys [options]--檢視系統資訊
meminfo 顯示記憶體資訊
cpuinfo 顯示CPU資訊
account 顯示accounts資訊
activity 顯示所有的activities的資訊
window 顯示鍵盤,視窗和它們的關係
wifi 顯示wifi資訊
* adb bugreport > log.log--從開機之後詳細的dumpsys,dumpstate和logcat資訊,是一份完整的日誌記錄。
對分析使用者行為,異常資訊,系統狀態有很大的參考作用。
* adb uninstall apk_name--解除安裝apk命令
* adb shell dmesg--使用ADB工具列印核心除錯串列埠資訊
* getprop/setprop --獲取或設定系統屬性(build.prop)
* cat /sys/dvfs/dvfs_tree--檢視cpu、gpu、ddr的頻率
* tinycap /sdcard/test.wav--底層錄音命令
tinyplay /sdcard/test.wav--播放音訊命令
* console--在安卓使用者版本可列印log資訊
* ifup eth0 (ifconfig eth0 up) --啟用網絡卡
ifdown eth0 (ifconfig eth0 down)--關閉網絡卡如
* svc wifi enable--開啟WiFi
svc wifi disable --關閉WiFi
* logcat | grep -i hdmi(display)
* ps | grep init --檢視程序號
* history--檢視操作過的命令歷史記錄
* du -sh kk/--檢視目錄的大小
* scp -r 當前路徑
* tgz解壓:tar -zxvf xxxxxx.tgz
* nautilus . &--調出可視介面的目錄內容
* git show--檢視git修改的內容
* make distclean --徹底清除編譯的內容
* getevent/sendevent--使用getevent獲得/dev/input/eventX裝置彙報的事件,這個命令還會輸出所有event裝置的基本資訊
如下:
add device 1: /dev/input/event1
name: "mxc_ts"
add device 2: /dev/input/event0
name: "mxckpd"
表明系統有兩個event裝置,分別對應著input裝置touchscreen,keyboard
Android可以使用sendevent來模擬觸屏,鍵盤以及其他型別的event事件,
sendevent /dev/input/eventX type code value
/dev/input/eventX 對應一個event裝置,可以通過getevent獲得可用的event裝置
type, code, value的定義可參看kernel/include/Linux/input.h
http://blog.csdn.net/kickxxx/article/details/7482392