batch-file - wmic 输出到文件而没有额外的行问题
问题描述
我查看了所有这些主题和帖子:
主题:https ://superuser.com/questions/1082530/how-can-i-remove-the-last-blank-line-of-a-wmic-command
主题:解析 WMIC 输出
帖子: https ://stackoverflow.com/a/37725658/8262102
到目前为止,没有任何帮助,他们中的大多数人都习惯findstr /r /v "^$"
这样做。
它们的问题在于,在我的情况下,输出在写入文件时包含额外的一行。
我想要的文件输出应该是:
[Microsoft Windows 10 Pro]
但我得到:
[Microsoft Windows 10 Pro
]
这是我的代码,它将在您的桌面上创建输出文件:
@echo off
Setlocal EnableDelayedExpansion
cd /d "C:\Users\%username%\Desktop"
(
for /f "skip=1 delims=" %%A in (
'wmic OS get Caption ^| findstr /r /v "^$"'
) do echo [%%A]
)>output.txt && exit
任何帮助将不胜感激。
解决方案
最简单的解决方案是更改wmic的输出格式:
For /F Tokens^=6Delims^=^" %%A In (
'"%__AppDir__%wbem\WMIC.exe" OS Get Caption /Format:MOF'
) Do Echo [%%A]
上面的答案对所提出的问题有效,该问题从一个特定值返回字符串结果。根据您的附加信息,它不再有效,但这不是代码的错,而是您无法提出正确的问题。
对于您正在寻找的特定值,即Manufacturer
、Name
、Description
、CurrentClockSpeed
、NumberOfCores
和NumberOfLogicalProcessors
,我会建议使用完全不同的方法,使用powershell:
$c = GCIM "Win32_Processor"
$o = ForEach ($i in $c) {
"Manufacturer: " + $i.Manufacturer
"Name: " + $i.Name
"Description: " + $i.Description
"Current Clock Speed: " + $([Math]::Round($i.CurrentClockSpeed/1000,2)) + " GHz"
"Number Of Cores: " + $i.NumberOfCores
"Number Of Logical Processors: " + $i.NumberOfLogicalProcessors
}
$o | Out-File ".\CPUInfo.txt"
为了使用批处理文件标签保持主题,这是一个利用powershell的完整批处理文件:
@"%__AppDir__%WindowsPowerShell\v1.0\powershell.exe" -NoP ^
"$c = GCIM 'Win32_Processor';" ^
"$o = ForEach ($i in $c) {" ^
"\"Manufacturer: \" + $i.Manufacturer;" ^
"\"Name: \" + $i.Name;" ^
"\"Description: \" + $i.Description;" ^
"\"Current Clock Speed: \" + $([Math]::Round($i.CurrentClockSpeed/1000,2)) + \" GHz\";" ^
"\"Number Of Cores: \" + $i.NumberOfCores;" ^
"\"Number Of Logical Processors: \" + $i.NumberOfLogicalProcessors};" ^
"$o | Out-File \".\CPUInfo.txt\""
推荐阅读
- java - Firebase / GeoQuery - 最大半径 IF 语句
- android - 如何禁止在 expo / react-native 中使用平板电脑?
- c# - 在上下文中调用 Find、Add、Update 等时绕过 DBSet 是否有缺点?
- node.js - 使用 NodeGit 在存储库中执行 `git clean`
- rest - Http.post 在flutter/dart 中不接受内容类型application/query+json
- php - Laravel 7 Auth 没有 HomeController
- c - 递归计算标准差
- mysql - 查询错误结果 JPA Spring Boot
- c++ - 如何重新着色二进制图像中的形状以进行索引(填充)?
- java - 寻求有关使用 DAWG 实现文字游戏的建议