小编Bri*_*top的帖子

batch:ampersand导致findstr的问题

这部分工作正常,直到文件名中有一个&符号,在这种情况下它会完全崩溃我的脚本.

echo %filename% | findstr /i /b /c:"%name% (%year%)"
Run Code Online (Sandbox Code Playgroud)

我不能只是将文件名放入引号,因为我需要在开头找到字符串.那我怎么能两个都做?

batch-file findstr batch-processing

2
推荐指数
1
解决办法
147
查看次数

批处理:如何提示输入并在超时时继续?

我知道timeout /t 60如何通过自动继续和set /p var="prompt"获取用户输入来获得延迟,但是否有任何更改可以同时执行;询问并在没有输入任何内容的情况下超时继续?我会用它来为我的循环脚本设置屏幕以更改脚本设置。

timeout batch-file

2
推荐指数
1
解决办法
4624
查看次数

如何避免脚本的多个实例,同时允许在不更改标题的情况下再次启动脚本

我有这个脚本应该只在单个实例中运行。我确保这种情况不会发生的方法是

tasklist /fi "imagename eq cmd.exe" /v | find "lootbot" && echo already running && pause && exit /b
title lootbot
Run Code Online (Sandbox Code Playgroud)

然后正常退出,以便脚本可以重新启动......

:action8
cd /d "%~dp0"
title command prompt
echo type launch to return to lootbot
exit /b
Run Code Online (Sandbox Code Playgroud)

问题是,每当脚本因错误而崩溃时,如果不先手动将标题重新设置为其他内容,它就不允许我重新启动它。

当然,这不是一个大问题,但我正在构建这个供其他人使用,所以我在这里寻找一个易于使用的解决方案。我在想如果有一种方法可以确定当前命令提示符是否有标题lootbot,那么这个问题就可以自动避免。这是整个脚本以防万一。

@echo off
tasklist /fi "imagename eq cmd.exe" /v | find "lootbot" && echo lootbot already running, press a key to exit && pause && exit /b
title lootbot
:: enable save files location (persistant memory)
set …
Run Code Online (Sandbox Code Playgroud)

batch-file

1
推荐指数
1
解决办法
1232
查看次数

标签 统计

batch-file ×3

batch-processing ×1

findstr ×1

timeout ×1