@echo off
title %#% %$%%$%%@% %z%
set /p ID=MODID:
set "line=%ID%"
>"%tmp%\j.j" echo;var $m=WSH.Arguments(0).match(/\d+/g);WSH.echo($m.join('\r\n'))
for /f "delims=" %%a in ('cscript -nologo -e:jscript "%tmp%\j.j" "%line%"') do (
echo;%%a
)
echo;%#% %$%%$%%@% %z%
steamcmd +login 账号 密码 +workshop_download_item 221100 %提取的数字放到这里% +quit
bat在字符串提取数字,需要把数字映射到同bat程序中的某一项怎么提取,感谢回答的大佬
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
1条回答 默认 最新
关注 让阿豪来帮你解答,本回答参考chatgpt3.5编写提供,如果还有疑问可以评论或留言
这段代码的作用是什么?请逐行解释每一行代码的意义。- @echo off:关闭命令行窗口的回显功能,即不在窗口显示执行命令的详细信息。
- title:设置命令行窗口的标题。这里是设置窗口标题为%#% %$%%$%%@% %z%
- set /p ID=MODID:等待用户输入MODID,并将其保存到变量ID中。
- set "line=%ID%":将输入的ID存入变量line中。
- > "%tmp%\j.j":将一个echo命令的输出重定向到一个名为j.j的文件中。
- echo;var $m=WSH.Arguments(0).match(/\d+/g);WSH.echo($m.join(‘\r\n’)):这是一个JavaScript脚本,用于将line中的数字提取出来并以\r\n的格式输出。
- for /f "delims=" %%a in ('cscript -nologo -e:jscript "%tmp%\j.j" "%line%"') do (echo;%%a):使用for命令将第6行中的JavaScript脚本执行,并将输出赋值给变量%%a,然后使用echo命令输出。
- echo;%#% %$%%$%%@% %z%:输出一个%#% %$%%$%%@% %z%的字符串。
- steamcmd +login 账号 密码 +workshop_download_item 221100 %提取的数字放到这里% +quit:使用steamcmd工具下载指定ID的MOD。其中,%提取的数字放到这里%即为使用第6行脚本提取出的数字。 代码示例: 我们假设用户输入的MODID为123456,其余都保持默认值。执行代码后,窗口标题会变成"%#% %$%%$%%@% %z%",输入MODID后会执行下载指定ID的MOD的操作。以下为每行代码的实际意义。
@echo off title %#% %$%%$%%@% %z% set /p ID=MODID: set "line=%ID%" > "%tmp%\j.j" echo;var $m=WSH.Arguments(0).match(/\d+/g);WSH.echo($m.join('\r\n')) for /f "delims=" %%a in ('cscript -nologo -e:jscript "%tmp%\j.j" "%line%"') do (echo;%%a) echo;%#% %$%%$%%@% %z% steamcmd +login 账号 密码 +workshop_download_item 221100 %提取的数字放到这里% +quit
注意:代码中变量账号、密码和提取的数字放到这里均需要替换成实际的值才能正常运行。
解决 无用评论 打赏 举报
悬赏问题
- ¥30 STM32 INMP441无法读取数据
- ¥100 求汇川机器人IRCB300控制器和示教器同版本升级固件文件升级包
- ¥15 用visualstudio2022创建vue项目后无法启动
- ¥15 x趋于0时tanx-sinx极限可以拆开算吗
- ¥500 把面具戴到人脸上,请大家贡献智慧
- ¥15 任意一个散点图自己下载其js脚本文件并做成独立的案例页面,不要作在线的,要离线状态。
- ¥15 各位 帮我看看如何写代码,打出来的图形要和如下图呈现的一样,急
- ¥30 c#打开word开启修订并实时显示批注
- ¥15 如何解决ldsc的这条报错/index error
- ¥15 VS2022+WDK驱动开发环境