【发布时间】:2014-01-19 22:24:15
【问题描述】:
我有两个文件,shell.bat 和 key.bat。 shell.bat 调用key.bat 和一个名为etc 的目录中的一些其他文件。 key.bat向用户请求一个ESSID,在etc和types的内容中找到对应的文件,这是请求的ESSID的key。之后,再次调用shell.bat,在调用文件key.bat 的内容之后出现shell 提示符server:wifi$。有关如何解决此问题的任何想法?
shell.bat:http://www.mediafire.com/view/skrs8e728023f6f/shell.bat
@echo off
set /p cmd=server:wifi$
if exist programs\%cmd%.bat goto cmd
goto fail
:cmd
call programs\%cmd%.bat
call shell.bat
:fail
echo Command "%cmd%" not found.
call shell.bat
key.bat:
http://www.mediafire.com/view/rm1v6czi3f4844c/key.bat
@echo off
set /p essid=ESSID:
if exist etc\%essid%.txt goto key
goto fail
:fail
echo Key does not exist.
echo Add key with "mkkey".
goto :eof
:key
type etc\%essid%.txt
【问题讨论】:
-
您需要发布一些代码,以便我们了解它是如何工作的。不要只发布文件的链接。
-
@Smik Games,你说
shell.bat正在调用key.bat,但在第一个示例中似乎shell.bat正在调用shell.bat。 -
%cmd%.bat 文件在做什么?他们在调用 key.bat 吗?因为没有从 shell.bat 调用 key.bat。
-
“修复”什么?您的代码反复调用 shell.bat 显示您的
server:wifi$- 您想要它做什么?最终,它会用完空间而失败,但这需要很长时间。从您向我们展示的内容来看,如果您使用key响应服务器:wifi$,那么它将提示您输入essid,然后显示该文件的内容或给出添加新密钥的说明。呃 - 你期待什么?它没有做什么你期望它做的事情?它在做什么你没想到它会做什么?你想做什么而不是它正在做的事情?
标签: windows shell batch-file cmd