adb -host shell是什么意思
时间: 2023-09-10 12:06:09 浏览: 259
adb -host shell 是一个adb命令,用于在连接的计算机(即主机)上执行shell命令,而不是在Android设备上执行。
当您使用adb命令连接到Android设备后,通常可以使用adb shell命令在设备上执行shell命令。但是,使用adb -host shell命令,您可以在连接的计算机上执行shell命令,而不是在设备上执行。
这个命令的语法是:`adb -host shell <shell_command>`
其中,`<shell_command>`是要在主机上执行的shell命令。通过这个命令,您可以在主机上运行各种shell命令,例如查看主机上的文件、运行脚本、执行系统命令等。
需要注意的是,使用adb -host shell命令时,请确保您具有足够的权限来执行所需的操作,以及正确理解您在主机上执行的shell命令对主机和设备可能产生的影响。
相关问题
adb shell versions
ADB (Android Debug Bridge) 是一个命令行工具,用于管理和调试 Android 设备或模拟器。当你在终端中输入 `adb shell versions` 的时候,实际上是查看ADB自身的版本信息以及连接设备的操作系统版本等软件相关信息。
运行这个命令,通常会显示出以下内容:
1. ADB的版本号:显示ADB工具的当前安装版本。
2. host platform version:主机操作系统上运行的adb版本。
3. device API level:如果你已连接了一个设备,它将显示该设备运行的Android操作系统的API级别。
例如输出可能是这样的:
```
$ adb shell versions
host: version 1.0.41, build id: xxxxx
device: Android 11 (API level 30), Pixel 4
```
检查代码中的错误 class ADB_SHELL: def get_ip(self): # 执行adb shell命令并输出结果 subprocess.check_output( ['adb', 'shell', 'udhcpc'] ) subprocess.check_output( ['adb', 'shell', 'udhcpc -i eth1'] ) self.conf = subprocess.check_output( ['adb', 'shell', 'ifconfig'] ).decode() # conf = str(ip).split(r'\r\r\n') # tmp = conf.replace( "\r\r\n", "\n" ) # print( tmp) self.ip = re.findall( r'addr:(.*?) Bcast', str( self.conf ) ) print(self.ip) for self.i in selfip : speed = subprocess.check_output((['adb', 'shell', f'iperf3 -B {self.i} -c 192.168.102.105'])).decode() print(speed.replace("\r\r\n", "\n")) for i in range(5): write_data = subprocess.check_output(['adb', 'shell', 'time dd if=/dev/zero of=/data/test.data bs=128k count=1024']).decode() print(write_data.replace("\r\r\n", "\n")) read_data = subprocess.check_output(['adb', 'shell', 'time dd if=/data/test.data of=/dev/null bs=128k count=1024']).decode() print(read_data.replace("\r\r\n", "\n")) ls = subprocess.check_output( ['adb', 'shell', 'ls /data'] ).decode() print( ls.replace( '\r', ' ' ) ) dl = subprocess.check_output( ['adb', 'shell', 'rm /data/test.data'] ).decode() l = subprocess.check_output(['adb', 'shell', 'ls /data']).decode() print( l.replace( '\r', ' ' ) ) subprocess.check_output( (['adb', 'shell', f'iperf3 -s']) ) def get_ssh(self): ssh = paramiko.SSHClient() ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy) for i in self.ip: ssh.connect(hostname='192.168.102.105',port=22,username='root',password='xiayi123456',timeout=30) stdin,stdout,stderr = ssh.exec_command(f'iperf3 -c {i}') print(stdout.read()) # ssh.close() if __name__ == '__main__': # get_ip() # get_ssh() A = ADB_SHELL t1 = threading.Thread(target=A.get_ssh) t2 = threading.Thread(target=A.get_ip) t1.start() t2.start() t1.join() t2.join()
在第12行代码中,将 `selfip` 改为 `self.ip`。此外,第28行代码中的 `ssh.set_missing_host_key_policy` 应该是 `ssh.set_missing_host_key_policy()`。最后,第39行代码中的 `A = ADB_SHELL` 应该是 `A = ADB_SHELL()`,因为 ADB_SHELL 是一个类,需要实例化才能调用其方法。
阅读全文