联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!
@echo off set keyname=微软真垃圾 set /p=%keyname%<nul>name.txt wmic /? pause
@echo off set keyname=微软真垃圾 set /p=%keyname%<nul>name.txt set /p=<nul>nul wmic /? pause
@echo off set keyname=微软真垃圾 >name.txt set/p=%keyname%<nul wmic /? pause
Originally posted by fastslz at 2008-1-21 12:47 PM: 当前目录没生成批处理。 本来只是用set/p生成一个不带换行符的文本,没想到此后wmic任何参数不起作用了。
@echo off set keyname=微软真垃圾 >name.txt set /p=%keyname%<nul wmic /? pause
我在一个批处理中使用下面代码获取磁盘空间 wmic logicaldisk get DeviceID,FreeSpace,Size | findstr "%_Drives%" 但是发现程序某些时刻运行时会失去响应 此时在当前命令行下直接运行以下代码也会失去响应 wmic logicaldisk get DeviceID,FreeSpace,Size 在输入一个Ctrl+Z和一个回车后会继续输出执行结果 此时会在当前路径下产生一个零字节的文件 TempWmicBatchFile.bat 此时另开一个命令行环境 当前路径相同 执行此代码无问题 与此相关的问题也出现使用脚本操作diskpart列磁盘分区时 此时只能Ctrl+Break终止代码执行 怀疑是这些命令在执行时会锁定一些卷 而如果在这些命令上使用管道 而命令的管道管道需要在%TMP%产生临时文件 而如果%TMP%所在卷恰被锁定 则临时文件无法建立在这个卷上建立 管道操作就无法完成 管道后的命令输入被转向控制台 而输入Ctrl+Z加回车后正是结束控制台输入 当然目前为止这只是猜测……
@echo off s<nul>nul echo test wmic /? pause