2017-05-05 246 views
-1

我在寫一個windows腳本,詢問用戶的名字和用戶名。 當我在cmd中運行它時,會返回錯誤消息「無法找到指定的文件」。找不到指定的文件錯誤

下面是代碼:

@echo off 

title User Records System 
ECHO Welcome to the User Records System 

SET /P <name>=[Please enter you full name.] 
REM if %name% = nul goto :label6 
pause 

SET /P <uName>=[Please enter your username.] 
REM if %uName% = nul goto :label10 
pause 

ECHO %date%_%time% %name% >>C:\user_records.txt 
ECHO %date%_%time% %uName% >>C:\user_records.txt 
ECHO %date%_%time% %time% >>C:\user_records.txt 
pause 

我知道的修復是非常明顯的,我只是很新。 此外,如果您有任何其他建議的改進,請讓我知道。 謝謝。

回答

1

在批處理文件中的角括號是重定向操作符,所以

  v.................................... write to file "=[Pl..." 
SET /P <name>=[Please enter you full name.] 
     ^......................................... read from file "name" 

你應該使用類似

SET "name=" 
SET /p "name=[Please enter you full name.]" 
if not defined name goto :label6 

SET "uName=" 
SET /P "uName=[Please enter your username.]" 
if not defined uName goto :label10 
+0

太棒了謝謝你! –

0

你也只能做到這一點

set /p name= "[Please enter your full name.]" 
if not defined name goto :label6 
pause 

set /p uName= "[Please enter your username.]" 
if not defined uName goto :label10 
pause 

這樣,你必須鍵入「設置」一次。只是一點捷徑。僅供參考,我建議在等號後面加上空格。

相關問題