【问题标题】:batch file - unable to stop command批处理文件 - 无法停止命令
【发布时间】:2023-04-05 08:21:01
【问题描述】:

我创建了一个小批处理文件,允许我使用 ADB 在 android 上做一些有用的事情。

要从 adb 录制视频,命令如下:

adb shell screenrecord /sdcard/ScreenRecords/%screenName%.mp4

如果我每次都在控制台中键入它,这会很好,但在我的小脚本中,我有一个菜单和其他东西,由于某些原因不能让这个命令正常工作。

这是我目前脚本中的代码:

ECHO OFF
CLS
cd C:\Android\adk\sdk\platform-tools
adb devices
:MENU
ECHO.
ECHO ************************************
ECHO Select what to do next:
ECHO ************************************
ECHO.
ECHO  1  - Check devices status
ECHO  X  - Close
ECHO.
ECHO.
SET /P M=Select the action number then press ENTER:
IF %M%==1 GOTO SCREENRECORDING
IF %M%==X GOTO EOF
:SCREENRECORDING
ECHO.
SET /P screenRecordName=Type the name for the video to be recorded: 
ECHO ** Recording in progress. To close the recording process, please press CTRL+C **
adb shell screenrecord /sdcard/ScreenRecords/%screenRecordName%.mp4
GOTO MENU

简化为仅显示此问题。

现在,我认为问题在于要停止从 adb 录制,您需要按 CTRL+C

当我按下 CTRL+C 时,会出现:

^C终止批处理作业 (Y/N)?

当我按 Y 时,它会关闭所有窗口,而如果我按 N,则不会捕获屏幕记录。

有没有办法不让^CTerminate batch job (Y/N)?按下CTRL+C

出现然后返回主菜单?

抱歉,我是批处理编程的新手。

谢谢

【问题讨论】:

标签: android shell batch-file


【解决方案1】:

尝试使用

启动 adb 作业
start /wait "screencapture running" adb shell ....

这将打开另一个控制台窗口,您可以在父脚本等待时使用ctrl-c 停止该窗口。

【讨论】:

  • 您好,感谢您的回答。我试过了,新窗口打开了,但是当我点击 ctrl + c 时它关闭了新窗口,但仍然在父窗口上显示终止。
  • 您是否首先将焦点放在新窗口上?
  • 是的,新窗口关闭,父级显示终止消息
猜你喜欢
  • 1970-01-01
  • 2016-10-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-07-21
  • 2010-12-23
相关资源
最近更新 更多