batch-file - 使用bat脚本写入文本文件: missing character

标签 batch-file windows-server-2008-r2

我正在使用 bat 脚本尝试将多行写入文本文件。然而,在一种情况下,一个我想写的角色被删除了。

这是代码:

@echo off
@echo san policy=onlineall> test.txt
@echo select disk 1>> test.txt
@echo online disk>> test.txt

这是生成的文本文件(test.txt)
san policy=onlineall
select disk 
online disk

为什么结果代码中缺少“1”?

最佳答案

您可以使用 > 重定向不同的流.它们通过数字来区分,0 是标准输入,1 是标准输出,2 是标准错误,以列出预定义的。

所以回答你的问题,当你写1> , windows 认为你想回显到流 1 (无论如何这是默认值)。一个可能的解决方案是简单地在它们之间插入一个空格,但这也会输出这个空格。但是,你也可以这样写:

>>test.txt echo select disk 1

关于batch-file - 使用bat脚本写入文本文件: missing character,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25753597/

相关文章:

amazon-web-services - 用于将新 EBS 卷附加到 Windows 和分区的 AWS CloudFormation 模板

Windows 启动命令无法执行批处理文件

windows - 对于长路径和长文件名,删除超过 30 天的文件

java - Windows Server 2008 R2 的 Tomcat 7.0 HTTP post 请求 utf-8 问题

mysql - 服务器 2008r2 x64 和 ODBC 连接器

mysql - 如何在 Windows 上运行 mysql_upgrade

azure - Windows Azure osFamily 2 对于静态文件抛出错误 500

batch-file - 批处理输出文件有大小限制吗?

windows - 如何从命令行在 Windows 上播放音频文件?

windows - 为什么 XCOPY/W 和 REPLACE/W 为它们的单字符提示消耗所有重定向的文本数据?