首页 > 解决方案 > 不存在的管道bat文件

问题描述

我正在尝试创建一个用于格式化磁盘的 .bat 文件。每次我运行脚本时它都不起作用,并说它正在尝试写入一个不存在的管道。我还没有找到任何明显的原因为什么它不起作用。我在其他任何地方也没有找到答案。这是代码

:loop
echo list disk|diskpart|find "Online"
set "disk=."
set /p "disk=Pick disk number above to destroy/reformat: "
echo.
echo list disk|diskpart|find "Disk %disk%"
if errorlevel 1 (
 echo Invalid drive selection!
 pause
 goto :loop
) else (
 echo select Disk %disk%
 echo clean
 echo create partition primary
 echo select partition=1
 echo active
 echo format fs=fat32
 echo assign
 echo exit
)| REM diskpart
pause

标签: batch-filebatch-processing

解决方案


我假设您的问题在于您在编辑后pause尝试通过管道传输的命令。diskpartexit

由于某种原因,您现在删除了两个pause命令,所以您的问题现在应该已经消失了。

您应该能够使用这个非破坏性示例重新创建问题:

@(  echo exit
    pause)|diskpart
@timeout -1

最简单的解决方法是将错误消息重定向到 NUl 设备:

@(  echo exit
    pause 2>nul)|diskpart
@timeout -1

推荐阅读