2016-02-08 146 views
1
@for /f "delims=|" %%f in ('dir /b "C:\Users\User\Desktop\APKS\"*.apk') do (
adb install "C:\Users\User\Desktop\APKS\%%f" 
adb logcat > "C:\Users\User\Desktop\Parser\LogsToParse\%%f.txt" 
) 

所以,現在我需要運行一堆aps並記錄它們中的每一個。問題是,循環將運行一次,只是停止登錄第一個應用程序,但繼續安裝它們後繼續其餘的。使用批處理文件停止logcat

任何想法如何終止它?我知道adb logcat -d只是用於打開logcat,看看會發生什麼事情,像毫秒,但問題是我需要它打開5分鐘,並自動化。

到目前爲止,我已經試過:發送後的時間量X空或錯誤的請求,睡覺,破等

,似乎工作是CTRL + C命令手動發送終端的唯一的事。使用logcat進行日誌記錄5分鐘後,有沒有辦法做到這一點?

謝謝。

回答

1

安裝apk後,等待5分鐘,然後使用adb logcat -d。
對於 「等待」 在批處理,您可以使用timeoutping命令,就像這樣:

ping 1.1 -n 1 -w 3000>nul 
timeout /t 3 

完整的腳本:

@for /f "delims=|" %%f in ('dir /b "C:\Users\User\Desktop\APKS\"*.apk') do (
    adb logcat -c 
    adb install "C:\Users\User\Desktop\APKS\%%f" 
    timeout /t 300 
    adb logcat -d > "C:\Users\User\Desktop\Parser\LogsToParse\%%f.txt" 
)