batch-file - 不存在的管道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
解决方案
我假设您的问题在于您在编辑后pause
尝试通过管道传输的命令。diskpart
exit
由于某种原因,您现在删除了两个pause
命令,所以您的问题现在应该已经消失了。
您应该能够使用这个非破坏性示例重新创建问题:
@( echo exit
pause)|diskpart
@timeout -1
最简单的解决方法是将错误消息重定向到 NUl 设备:
@( echo exit
pause 2>nul)|diskpart
@timeout -1
推荐阅读
- java - 正则表达式匹配空字符串或除请求映射的特定字符串外的任何字符串
- angular - 当构造时值更改时,表单卡在异步验证器的 PENDING 状态
- javascript - 如何使用 JavaScript 在我的图片库中实现多标签搜索?
- mysql - 在 CASE 指令中使用 SELECT 进行高级触发
- unix - 如何使用 sed 交换通过连字符连接的两个单词
- javascript - 我将如何添加弹出图像的时间限制
- docker - Configure .yml to execute multiple commands
- typescript - 打字稿:用高阶函数推断“this”
- angular - 以角度更新 Appcomponent 中的子组件
- microservices - 任何同步请求如何在异步微服务环境中工作?