标题: [其他] [算是解决了吧]延时处理如何根据是否输入来判断 [打印本页]
作者: yunyan100 时间: 2017-11-6 23:44 标题: [算是解决了吧]延时处理如何根据是否输入来判断
本帖最后由 yunyan100 于 2017-11-7 01:19 编辑
RT,一个爱好者,现在想这样一个功能- ping 127.1 -n 10 >nul
- set /p pa=输入y确认删除完成原文件(其他任意返回主菜单)
- :a
- :b
- :c
复制代码
这两段要实现的功能就是,一定要在延时的同时,也有下面的输入值功能(目前是延时后才显示下面),当10少内没有输入值,即%pa%为空值的时候,延时10秒后就自动走向a,否则根据%pa%的值走abc,
各位大神,这功能有办法实现吗?谢谢各位大神
作者: zaqmlp 时间: 2017-11-7 00:00
choice /?,xp略过
作者: yunyan100 时间: 2017-11-7 00:01
回复 2# zaqmlp
高手能补全下吗?
我用这样的也不行- choice /t 10 /d y /n >nul
复制代码
作者: zaqmlp 时间: 2017-11-7 00:03
回复 3# yunyan100
加上判断呀
作者: yunyan100 时间: 2017-11-7 00:07
回复 4# zaqmlp
不是的,我是想用set /p那个输入值与延时同步的,行不行?如果实在得不到这样的,我也考虑用这个吧
作者: yunyan100 时间: 2017-11-7 01:18
回复 4# zaqmlp
哎,穷人一个,哪有money向你要啊,本来是想用问题两个来合作的,看来确实达不到,我也选choice吧,自己已经做好如下:- :delyy
- ::删除制作完成后的原文件
- cls&echo.&echo %batname%-%2
- echo.&echo. %1
- echo.&echo. 要删除按"y",不删除按"n"或8秒后自动返回主菜单
- echo.&choice /c yn /t 8 /d n
- if errorlevel 2 call :soft
- if errorlevel 1 goto :delold
- :delold
- set /p yn=请输入"y"确认删除,否则直返回主菜单:
- if /i "%yn%" equ "y" ( rd /s/q "%paa%"&call :soft)else ( call :soft)
复制代码
作者: /zhqsystem/zhq 时间: 2017-11-8 18:33
:main
set pa=
set/p pa=
if not defined pa call:ping&&goto:a
for /f "usebackq delims=" %%i in ("%~f0")do (
if /i "%%i"==":%pa%" goto:%pa%
)
echo,无此跳转标签
goto:main
:a
echo,a
pause
:b
echo,b
pause
:c
echo,c
pause
:ping
ping /n 10 127.1 >nul 2>nul
goto:eof
作者: yunyan100 时间: 2017-11-12 10:08
回复 7# /zhqsystem/zhq
谢谢了,没有达到我的想法,还是choice的基本达到我的要求,我发下我更新的给你看下,且是删除到回收站,所以已经完美了- :delyy
- ::删除制作完成后的原文件
- cls&echo.&echo %batname%-%2
- echo.&echo. %1
- echo.&echo. 要删除按"y",不删除按"n"(8秒后自动删除)
- echo.&choice /c yn /t 8 /d y
- if errorlevel 2 call :soft
- if errorlevel 1 echo;"%paa%"|mshta "javascript:new ActiveXObject('Shell.Application').NameSpace(10).MoveHere(new ActiveXObject('Scripting.FileSystemObject').GetStandardStream(0).readline().split('"')[1]);close()"
- call :soft
复制代码
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |