从Batch Windows 7行中提取字母数字字符串

时间:2019-02-25 11:53:57

标签: batch-file adb

我正在处理一个批处理文件,它将连接自动选择的设备。这是我脚本的开头:

echo This is the list of connected devices:
adb devices -l | findstr "[0-9]"|find /N " "
set /P device= Select the device you would like to connect to:

这是Windows命令提示符下的输出:

[1]350800651       device asdsffas
[2]07ea9b921       device iwoequeo

我现在要尝试的是仅从设备(35080065107ea9b921)中获取ID号,该ID号将是所选行(1或{{ 1}})。关于如何做的任何想法?我已经尝试过使用2 +正则表达式,但是它总是能使我恢复完整的句子...

1 个答案:

答案 0 :(得分:0)

根据已关闭的问题链接,已经有一个链接的答案。

但是,还有另一种简单的解决方法……不是最好的方法,但可能对您有用。

@echo off
setlocal enabledelayedexpansion
for /f "tokens=2 delims=] " %%i in ('adb devices -l ^| findstr "[0-9]"|find /N " "') do (
   set /p "result=Do you want to select device %%i [Y/N]: "
   if /i "!result!"=="Y" "set device=%%i" & goto next
)
:next
echo do something else here with %device%