Python操作adb命令腳本


 

 

一、腳本代碼(有錯誤,抓緊改進中)

import os
import datetime

date1=datetime.datetime.now().strftime('%Y%m%d')
date2=datetime.datetime.now().strftime('%H%M%S')



adb_dic = {
    '1': 'adb devices',
    '2': 'adb shell pm list packages',
    '3': 'adb shell pm list packages -3',
    '4': 'adb shell pm list packages -s',
    '5': r'adb logcat -c && adb logcat >D:\log\%s\\log_%s.txt'%(date1,date2),
    '6': r'adb logcat -v time >D:\log\%s\\log_%s.txt'%(date1,date2),
    '7': 'adb kill-server',
}


def adb_cmd(k):
    adb = adb_dic[k]
    os.system(adb)



def adb_run():
    while True:
        print("""1.獲取連接設備   2.查看應用列表   3.查看第三方應用列表  4.查看系統應用列表  5.抓日志   6.time格式日志
                7.停止日志""")
        choice = input('請輸入序號選擇您需要的功能:').strip()
        if choice not in adb_dic: continue  # 如果輸入的不在里面,返回循環
        adb_cmd(choice)  # 加括號就可執行

def run():
    while True:
        print("""
        1.adb命令
        2.其他1
        
        """)
        choice = input('請選擇:').strip()
        if choice == '1':
            adb_run()
        else:
            print('輸入的指令有誤')
if __name__ == '__main__':  #
    run()  # 程序啟動

 

 

 

 

 

二、adb logcat 命令詳解

#顯示全部日志
adb logcat 

#篩選日志
adb logcat -s [TAG] [TAG] [TAG] [TAG]... #篩選TAG是Wallet和QPayAdapter的日志
adb logcat | grep [TAG]     #篩選以Wallet開頭的TAG日志
adb logcat [TAG]:S   #過濾掉TAG是Wallet的日志


#保存日志到文件
adb logcat > ~/Desktop/log.txt
adb logcat -v time > ./a.log  #日志輸出到文件,-v表示輸出格式
adb logcat -v time  | tee ./a.log #日志輸出到文件和屏幕


-d 將日志顯示在控制台后退出
-c 清理已存在的日志
-f <filename> 將日志輸出到文件
-v <format>設置日志輸入格式控制輸出字段,默認的是brief格式
brief — 顯示優先級/標記和原始進程的PID (默認格式)
process — 僅顯示進程PID
tag — 僅顯示優先級/標記
thread — 僅顯示進程:線程和優先級/標記
raw — 顯示原始的日志信息,沒有其他的元數據字段
time — 顯示日期,調用時間,優先級/標記,PID
long —顯示所有的元數據字段並且用空行分隔消息內容

 

 

三、python中的subprocess.Popen()使用詳解

https://www.cnblogs.com/lgj8/p/12132829.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM