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
Command line 格式化命令循环_Command Line_Batch File - Fatal编程技术网

Command line 格式化命令循环

Command line 格式化命令循环,command-line,batch-file,Command Line,Batch File,如果我在“format.cmd”的批处理文件中执行以下操作并运行它-10次中有9次失败。提示会一次又一次地循环命令。。?你知道怎么解决这个问题吗 我运行的命令: echo y | format D: /V:DATA /Q 输出:它在echo y之后放置更多的空格,而不是上面的命令?我认为这就是问题所在,但我不知道是什么问题 C:\Temp\1>echo y | format D: /V:DATA /Q C:\Temp\1>echo y | format D: /V:DATA

如果我在“format.cmd”的批处理文件中执行以下操作并运行它-10次中有9次失败。提示会一次又一次地循环命令。。?你知道怎么解决这个问题吗

我运行的命令:

echo y | format D: /V:DATA /Q
输出:它在echo y之后放置更多的空格,而不是上面的命令?我认为这就是问题所在,但我不知道是什么问题

C:\Temp\1>echo y   | format D: /V:DATA /Q
C:\Temp\1>echo y   | format D: /V:DATA /Q
C:\Temp\1>echo y   | format D: /V:DATA /Q
C:\Temp\1>echo y   | format D: /V:DATA /Q
C:\Temp\1>echo y   | format D: /V:DATA /Q
C:\Temp\1>echo y   | format D: /V:DATA /Q
C:\Temp\1>echo y   | format D: /V:DATA /Q
C:\Temp\1>echo y   | format D: /V:DATA /Q
C:\Temp\1>echo y   | format D: /V:DATA /Q
C:\Temp\1>echo y   | format D: /V:DATA /Q    
C:\Temp\1>echo y   | format D: /V:DATA /Q
一直持续到我必须杀了它


谢谢,

您正在尝试从
format.cmd
批处理文件执行
format.com
文件。但是,类似命名文件的优先顺序是先.cmd,然后是.com,因此发生的情况是
format.cmd
本身正在运行,而不是
format.com

尝试使
format.cmd
如下所示,以显式调用.com版本

echo y|format.com D: /V:DATA /Q

你能发布整个批处理脚本吗?是否有循环?您想用它实现什么?是的,请编辑您的问题,将所有
format.cmd
文件包括在内,并显示您收到的确切消息。如果您的帖子的第二块显示了确切的消息,请在其中添加一个标题,如“OUTPUT from
format.cmd
”。在第二个块中,在每行开头显示
C:\Temp\1>
,看起来像一个shell提示符,作为
.cmd
文件的输出是没有意义的。祝你好运。我在问题中发布的是整个剧本……不太确定是什么给人留下了我可以提供更多的印象?第二块的循环也是我得到的输出。问题是我应该使用format.com,而不仅仅是“format”——现在似乎工作正常。format可能配置为不从管道标准输入中获取输入,而是直接从用户输入中获取输入。由于您正在管道化输入,format没有获得任何用户输入,并被锁定在循环中。脚本中的
format
命令正在调用
format.cmd
并不是因为
.cmd
文件优先于
.exe
可执行文件,但是,因为在检查存储在
PATH
变量中的文件之前,首先在当前目录中搜索可执行文件和批处理文件。而
format
外部命令位于
C:\WINDOWS\System32
,顺便说一句,它是
format.com
,而不是
format.exe
。WINDOWS中可执行文件扩展名(广义上)的正确优先顺序由
PATHEXT
变量定义,根据它是
.COM
,然后是
.EXE
,然后是
.BAT
,然后才是
.CMD
。感谢所有回复-它与format.COM完美配合!应该考虑使用完整的文件名。非常感谢!