目前我正在创建一个聊天机器人,但如果我想创建一个单词的问题或单词,一切都会好起来的。例如:
set /p chat=You:
if %chat%==hello echo User: Hello!
但如果我尝试:
if %chat%==who are you? echo User: My name is Stacy.
.bat
文件崩溃。我对这种编码语言很陌生,所以我能解释一下我做错了什么以及如何修复它?因为我实际上正在制作一个看起来非常好的CMD提示游戏,这个机器人是至关重要的。
答案 0 :(得分:0)
(根据您的上述评论回答)
aschipfl没错。您有一个未引用%chat%
的实例,因此就好像您尝试运行造成问题的if /i who are you==hello ...
一样。它期待一个操作员在谁之后,但它得到了are
。
请按照以下模板:if /i "%chat%"=="blah blah" echo ...
示例:
@echo off
echo CLIENT CONNECTED. Say Hello.
:ChatBot
set /p chat=You:
if /i "%chat%"=="hello" echo User: Hello.. Anything you need while I can talk? These chats are on a timer.
if /i "%chat%"=="who are you?" echo User: My name is stacy. Im a Help assistant here at USFIB.
if /i "%chat%"=="exit" goto :eof
goto ChatBot
此外,我将CLIENT CONNECTED置于您的转到标签上方。