Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/180.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/batch-file/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 是否可以在批处理中将adb命令设置为变量?_Android_Batch File_Adb - Fatal编程技术网

Android 是否可以在批处理中将adb命令设置为变量?

Android 是否可以在批处理中将adb命令设置为变量?,android,batch-file,adb,Android,Batch File,Adb,我试图将一个变量设置为adb命令,但它不起作用,下面是代码 set ten=10 set nine=9 set eight_1=8.1 set eight=8 set seven=7 set version = "adb shell getprop ro.build.version.release" if %ten% == %version% goto :menu if %nine% == %version% goto :menu if %eight_1% == %version% goto :

我试图将一个变量设置为adb命令,但它不起作用,下面是代码

set ten=10
set nine=9
set eight_1=8.1
set eight=8
set seven=7
set version = "adb shell getprop ro.build.version.release"
if %ten% == %version% goto :menu
if %nine% == %version% goto :menu
if %eight_1% == %version% goto :menu
if %eight% == %version% goto :menu
if %seven% == %version% goto :menu 

有人能帮我弄明白吗?

cmd
非常简单。
set
命令只是将变量设置为字符串。有两种方法可以将命令的输出捕获到变量中。一个是临时文件。将输出写入文件并重新读取:

adb shell getprop ro.build.version.release >file.tmp
<file.tmp set /p "var="
echo %var%
两个版本都只依赖于一行的命令输出(尽管两个版本都可以扩展为迭代多行)

注:
不要使用
set
命令在
=
周围加空格-它们分别成为值的变量名的一部分

要获得最佳实践,请使用语法
设置“var=value”
(注意引号所在的位置)。 它可以防止错误的尾随空格(故障排除时很难发现),并针对某些“有毒字符”进行保存

出于类似原因,请使用以下
if
语法:
if“%ten%”==“version%”转到:菜单


如果变量为空或包含空格,如果没有引号,则会出现语法错误。

cmd
非常简单。
set
命令只是将变量设置为字符串。有两种方法可以将命令的输出捕获到变量中。一个是临时文件。将输出写入文件并重新读取:

adb shell getprop ro.build.version.release >file.tmp
<file.tmp set /p "var="
echo %var%
两个版本都只依赖于一行的命令输出(尽管两个版本都可以扩展为迭代多行)

注:
不要使用
set
命令在
=
周围加空格-它们分别成为值的变量名的一部分

要获得最佳实践,请使用语法
设置“var=value”
(注意引号所在的位置)。 它可以防止错误的尾随空格(故障排除时很难发现),并针对某些“有毒字符”进行保存

出于类似原因,请使用以下
if
语法:
if“%ten%”==“version%”转到:菜单


如果变量为空或包含空格,如果没有引号,则会出现语法错误。

出现的错误是什么,请将其编辑为adb shell getprop ro.build.version.release的确切输出是什么?如果您在Windows上,则可能会被吸收,但请注意,无论主机平台如何,adb都会返回\r\n行结束符,这会使许多unix脚本误以为响应中有多余的空行。输出是连接到PC的设备的版本。您得到的错误是什么,编辑该文件到adb shell getprop ro.build.version.release的确切输出是什么?如果您在Windows上,它可能会被吸收,但请注意,无论主机平台如何,adb都会返回\r\n行结束符,这会使许多unix脚本误认为响应中有多余的空行。输出是连接到pc的设备的版本