执行命令是 bash 并提取数据以供其输出



我必须从终端中执行的以下命令中提取一些所需的数据:

emulator -avd emualtor-666 

在我执行后,我在终端中有这样的输出,在一秒钟内有一点延迟:

emulator: Listening for console connections on port: 5566
emulator: Serial number of this emulator (for ADB): emulator-5566
emulator: emulator window was out of view and was recentered

所以我需要从第一行提取端口值:5566 或从第二行提取模拟器 5566。我该怎么做?

我绑定了以下脚本,但它只是卡在返回任何行上:

#!/usr/bin/env bash
emuName=$1
IFS=$'n'
for line in $(emulator -avd "$emuName");
do
echo ${line}
done  

我做错了什么?

尝试

emulator -avd emualtor-666 | head -1 | cut -d ':' -f 3

emulator -avd emualtor-666 | sed -e 's/.*Listening.*://;t;d'

emulator -avd emualtor-666 | awk '/Listening/ {gsub(/.*:/,""); print}'

最新更新