2016-07-07 267 views
-1

我想使用ADB shell來訪問我的設備內部存儲,然後使用Python訪問信息。我知道如何從使用Python執行單ADB命令:使用Python執行多個adb shell命令

cmd1 = 'adb shell ls' 
s1 = subprocess.check_output(cmd1.split()) 

而且我發現,我們可以使用&& or || or & or ;當我們正在使用Linux終端在這裏link1link2link3執行命令,多個命令結合起來。

但是我看不到(至今)如何使用這些命令,並結合Pyhton中可以使用的命令。例如,我想在Python中做些什麼,這會給我在linux終端上運行這四個命令的等效結果。

adb devices 
adb shell 
cd /dev/block 
find -name boot 

因此,有誰知道我可以如何在Python中執行此操作。

感謝。

+0

https://docs.python.org/2/library/subprocess.html# – miyamoto

+0

@miyamoto感謝。但對於我的特殊情況,可以使用'cmd1 = adb shell find/dev/block -name boot'和s1 = subprocess.check_output(cmd1.split())'來解決。所以在這裏我可以在一個命令本身得到答案。 –

回答

0

可以使用通信()方法來做到這一點

procId = subprocess.Popen('adb shell',stdin = subprocess.PIPE) 
procId.communicate('cd /dev/block\nfind -name boot\n') 
+0

謝謝,會試試看。 –