나는 adb를 통해 데이터베이스의 내용을 검사하는 파이썬 스크립트를 만들려고한다. 문제는 내 코드에서 첫 번째 subprocess.call() 만 실행되고 나머지는 무시된다는 것입니다. 나는 Python을 처음 접했을 때 어떻게 수정해야할지 모르겠다. 이 코드는 다음과 같습니다.adb로 파이썬 연속 서브 프로세스 호출
import subprocess
def root():
subprocess.call('adb shell',shell=True)
x=input('Enter package name: ')
openSql(x)
def openSql(x):
subprocess.call('cd data/data/%s/databases/'%(x),shell=True)
table=input('Enter table name: ')
openTable(table)
def openTable(table):
subprocess.call('sqlite3 table',shell=True)
subprocess.call('select * from %s'%(table),shell=True)
root()
오류는 발생하지 않지만 내 에뮬레이터에서는 루트로 입력하기 만하면됩니다.
[email protected]:/ #
들으. 내가 참조. 내가 원하는 것을 성취 할 수있는 방법이 있을까, 아니면 불가능한 것이 있습니까? –
괜찮을 수도 있습니다. 왜 파이썬 셸에서이 모든 것을 실행하지 않으시겠습니까? –
adb에서 python 명령을 실행하여 파이썬 쉘을 시작할 수 있습니다. –