Android 用到的Linux命令

1.    進入shelljava

adb shell

2.    列出文件列表shell

 ls命令表明 (LiSt Directory Contents), 列出運行此命令的目錄的內容, 不管是文件或文件夾.網絡

root@vbox86p:/ # ls
acct
cache
charger
config
d
...

  ls -a 命令列出目錄中包含以‘.’開頭的隱藏文件在內的全部內容app

  ls -l(等同於 ll)令用「長(詳細)列表」風格列出目錄的內容。socket

130|root@vbox86p:/ # ll
drwxr-xr-x root     root              2016-04-13 21:12 acct
drwxrwx--- system   cache             2016-04-13 21:13 cache
lrwxrwxrwx root     root              1969-12-31 19:00 charger -> /sbin/healthd
dr-x------ root     root              2016-04-13 21:12 config
lrwxrwxrwx root     root              2016-04-13 21:12 d -> /sys/kernel/debug
drwxrwx--x system   system            2016-04-13 23:13 data
-rw-r--r-- root     root          287 1969-12-31 19:00 default.prop
drwxr-xr-x root     root              2016-04-14 03:16 dev
lrwxrwxrwx root     root              2016-04-13 21:12 etc -> /system/etc
-rw-r--r-- root     root        10924 1969-12-31 19:00 file_contexts

    對應含義是:ide

  • 文件屬性:ui

        -  普通文件this

        d  目錄文件spa

        b  塊設備文件debug

        c  字符設備文件

        l  符號鏈(至關於win的快捷方式)

        p  管道特殊文件

  • 權限:

        共計9位,三位一組了:分別是全部者權限、用戶組權限、其餘組權限(世界權限)

        權限分爲r(可讀,權限4)、w(可寫,權限2)、x(可執行,權限1)

        另外,權限組還有一些特殊的表示法.好比/usr/X11R6/bin/XFree86具備以下權限:   

[root@gucuiwen root]# ll /usr/X11R6/bin/XFree86 
 -rws--x--x 1 root root 1960262 2003-02-28 /usr/X11R6/bin/XFree86

       其中的s表示這個是網絡接口程序"s"是socket的縮寫.該程序在運行過程當中會打開一個網絡接口.

       其餘UNIX類系統如FreeBSD中還有t權限,表示一個臨時(temporary)文件 

       drwxrwxrwt

  • 文件擁有者

  • 文件擁有者所在的組

  • 文件大小

  • 文件最後一次修改的時間

  • 文件名

        若是是一個符號連接,那麼會有一個 "->" 箭頭符號,後面跟一個它指向的文件名.

3.     更改目錄

     cd 命令用於更改當前所在目錄

     直接執行」cd「 默認進入」/data「目錄",執行」cd .."返回父目錄

root@vbox86p:/ # cd
root@vbox86p:/data # cd /system/app
root@vbox86p:/system/app # cd ..
root@vbox86p:/system #

4.    chmod命令

    改變文件的模式位,權限如上ll所示

C:\Users\wss\Desktop>adb shell
root@vbox86p:/ # cd /system/bin
root@vbox86p:/system/bin # chmod 777 softpoweroff
root@vbox86p:/system/bin #

5 .    mount -o remont ,rw   掛載目錄使之可讀寫

    上面命令若是直接執行會報錯    

    提示 /system 是隻讀,所以先將/system 改成可讀寫

root@vbox86p:/ # cd /system/bin
1|root@vbox86p:/system/bin # mount -o remount,rw /system
root@vbox86p:/system/bin #

6.    push 和 pull 命令

    pull 將機器或虛擬機上文件發送到pc

    push 將文件從pc上發送到Android設備或模擬器上

    要注意:目錄要有修改權限,指定的目錄要存在,不然會失敗,在adb中使用 不是shell

C:\Users\wss>adb pull /sdcard/down/test.zip D:\
26 KB/s (636 bytes in 0.023s)

    提醒:我在win的cmd下使用正常 ,在AS 1.51 上報 「annot create 'D;\': No such file or directory」具體緣由不清楚 ,  我以爲多是終端平臺的緣由

7.    安裝應用

  • adb install  將安裝包發送到設備而且安裝

 adb install [-lrtsdg] <file>
                               - push this package file to the device and install it
                                 (-l: forward lock application)
                                 (-r: replace existing application)
                                 (-t: allow test packages)
                                 (-s: install application on sdcard)
                                 (-d: allow version code downgrade)
                                 (-g: grant all runtime permissions)
  • pm install 安裝一個單一的傳統包(pm install: install a single legacy package)

C:\Users\wss>adb shell
root@vbox86p:/ # pm install [-lrtsfd] [-i PACKAGE] [PATH]
                                 (-l: forward lock application)
                                 (-r: replace existing application)
                                 (-t: allow test packages)
                                 (-s: install application on sdcard)
                                 (-f: install application on internal flash)
                                 (-d: allow version code downgrade)

    pm install 參數含義是我根據 adb install ,我的感受應該是對的

    附上pm 命令集

1|root@vbox86p:/ # pm
usage: pm list packages [-f] [-d] [-e] [-s] [-3] [-i] [-u] [--user USER_ID] [FILTER]
       pm list permission-groups
       pm list permissions [-g] [-f] [-d] [-u] [GROUP]
       pm list instrumentation [-f] [TARGET-PACKAGE]
       pm list features
       pm list libraries
       pm list users
       pm path PACKAGE
       pm dump PACKAGE
       pm install [-lrtsfd] [-i PACKAGE] [PATH]
       pm install-create [-lrtsfdp] [-i PACKAGE] [-S BYTES]
       pm install-write [-S BYTES] SESSION_ID SPLIT_NAME [PATH]
       pm install-commit SESSION_ID
       pm install-abandon SESSION_ID
       pm uninstall [-k] [--user USER_ID] PACKAGE
       pm set-installer PACKAGE INSTALLER
       pm clear [--user USER_ID] PACKAGE
       pm enable [--user USER_ID] PACKAGE_OR_COMPONENT
       pm disable [--user USER_ID] PACKAGE_OR_COMPONENT
       pm disable-user [--user USER_ID] PACKAGE_OR_COMPONENT
       pm disable-until-used [--user USER_ID] PACKAGE_OR_COMPONENT
       pm hide [--user USER_ID] PACKAGE_OR_COMPONENT
       pm unhide [--user USER_ID] PACKAGE_OR_COMPONENT
       pm grant PACKAGE PERMISSION
       pm revoke PACKAGE PERMISSION
       pm set-install-location [0/auto] [1/internal] [2/external]
       pm get-install-location
       pm set-permission-enforced PERMISSION [true|false]
       pm trim-caches DESIRED_FREE_SPACE
       pm create-user [--profileOf USER_ID] [--managed] USER_NAME
       pm remove-user USER_ID
       pm get-max-users

8.    建立文件

    mkdir 建立目指定名稱的目錄,要求建立目錄的用戶在當前目錄中具備寫權限,而且指定的目錄名不能是當前目錄中已有的目錄

    

mkdir [選項] 文件地址             
      -m 權限設置 相似chmod    
      -p 建立多個目錄
      -v 每次建立都顯示信息
      -help 顯示幫助信息並退出
      -version 顯示版本信息並退出

9.    刪除目錄

     rm 刪除一個目錄中的一個或多個文件或目錄,它也能夠將某個目錄及其下的全部文件及子目錄均刪除。對於連接文件,只是刪除了連接,原有文件均保持不變。

rm [選項] 文件地址
    -f, --force    忽略不存在的文件,從不給出提示。    
    -i, --interactive 進行交互式刪除,會提示是否刪除
    -r, -R, --recursive   指示rm將參數中列出的所有目錄和子目錄均遞歸地刪除。
    -v, --verbose    詳細顯示進行的步驟
        --help     顯示此幫助信息並退出
        --version  輸出版本信息並退出

   注意:rm 文件  若是沒有 -r  不能刪除目錄

相關文章
相關標籤/搜索