我倾向于在Android设备中读取文件名,因为我想检查此设备中的资源是否正确。通常,手动测试的顺序是
adb -s 192.168.1.100:5555 root
adb -s 192.168.1.100:5555 shell
当输入shell模型时,进入dir和ls
cd xxx\xxx\xxx
ls
现在我倾向于编写一个python脚本来帮助我检查它,所以我尝试:
os.system('adb -s 192.168.1.100:5555 root')
obj = subprocess.Popen(["adb -s 192.168.1.100:5555 shell"], stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE, universal_newlines=True)
然后我不知道如何读取文件名并将文件名放入列表中。没有shell模型我试试:
file_list = os.listdir("xxx\xxx\xxx")
l = []
for file_name in file_list:
l.append(file_name)
它有效,但我怎么能在shell模型中做到这一点?我的意思是切换到adb shell路径的路径,然后我可以使用此代码将文件名放入列表中。任何的想法?谢谢!
答案 0 :(得分:0)
如果要打印shell中特定目录中的所有文件,可以试试这个:
for i in *; do echo $i;done
这是你可以放在python文件中的内容。
import subprocess
p = subprocess.Popen('for i in *; do echo $i;done', shell=True, stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
for line in p.stdout.readlines():
print line,
这将完成你的任务。