Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/batch-file/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Batch file set命令批量崩溃?_Batch File_If Statement_Crash - Fatal编程技术网

Batch file set命令批量崩溃?

Batch file set命令批量崩溃?,batch-file,if-statement,crash,Batch File,If Statement,Crash,我的问题是: :NNEEWW cls echo Where to save the file (Type "Desktop" or "Docs") set /p SaveTo="Where to save: " if "%SaveTo%" == "Desktop" goto DT if "%SaveTo%" == "desktop" goto DT if "%SaveTo%" == "Docs" goto DC if "%SaveTo%" == "docs" goto DC goto NNEE

我的问题是:

:NNEEWW
cls
echo Where to save the file (Type "Desktop" or "Docs")
set /p SaveTo="Where to save: "
if "%SaveTo%" == "Desktop" goto DT
if "%SaveTo%" == "desktop" goto DT 
if "%SaveTo%" == "Docs" goto DC
if "%SaveTo%" == "docs" goto DC
goto NNEEWW
:DT
set Place=DE
:DC
set Place=DO
cls
echo 'Name your file [You can not add the following: \ / : * ? " < > |]'
set /p name="Name: "
echo echo off>>"Current.BAT"
echo cls>>"Current.BAT"
title Editing: %name%.BAT - Program Creator
cls
echo Editing %name%.bat [Type "Quit" to save and quit, Type "Help" to get some help with commands]
echo [@echo off has already been added, to get rid of it, type "echo on", without an @ symbol please]
echo "Please do not add ['>', '|', '<'] as they are not yet supported"
echo.
:2
set /p content="[-]: "
:NNEEWW
cls
回显文件的保存位置(键入“桌面”或“文档”)
set/p SaveTo=“保存位置:”
如果“%SaveTo%”==“桌面”转到DT
如果“%SaveTo%”==“桌面”转到DT
如果“%SaveTo%”==“Docs”转到DC
如果“%SaveTo%”==“docs”转到DC
后藤
:DT
设定地点=DE
:DC
设定地点
cls
echo“命名您的文件[您不能添加以下内容:\/:*?”<>|]'
set/p name=“name:”
回声关闭>>“当前.BAT”
echo cls>>“当前.BAT”
标题编辑:%name%.BAT-程序创建者
cls
回显编辑%name%.bat[键入“退出”保存并退出,键入“帮助”获取有关命令的帮助]
echo[@echo off已添加,若要删除它,请键入“echo on”,不带@符号]

echo“请不要添加['>'、'|'、',而不要使用GOTO的IF-ELSE结构:

:NNEEWW
CLS
回显文件的保存位置(键入“桌面”或“文档”)
设置/P“SaveTo=保存位置:”
如果/I“%SaveTo%”==“桌面”(
设置“Place=DE”
)否则(
如果/I“%SaveTo%”==“单据”(
设置“Place=DO”
)否则(
后藤:NNEEWW
)
)
CLS
回显您的文件名…

set Place=DE之后,您想做一些事情来跳过设置位置。但这不是问题所在。文档和桌面可能只是让您完成循环。您是否尝试添加了一些echo和pause命令,以便准确知道哪一行正在崩溃?如果您选择DT
Place
将始终相等,因为您执行在将其设置为DE后删除它。另外,
If/I
进行不区分大小写的比较(它隐藏在帮助中)。@Laket在最后一个问题中告诉用户阅读帮助文件。我想我的建议不是一个合理的选择。