1. 程式人生 > >Linux開發使用到的相關命令

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工具安裝apk
  adb 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 當前路徑
[email protected]
:拷貝到的路徑     --遠端拷貝資料


* 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