batch-file - 如何在批处理文件的 for 循环之外使用变量?
问题描述
我有一个包含远程服务器列表的列表“A.txt”。
我需要在所有这些中做一个净时间,然后用远程服务器名称回显结果。示例:“服务器 10/10/2018 19:00”
这是我的代码:
FOR /f %%G IN (D:\A.txt) DO (
net time \\%%G
)>> B.txt
FOR /f "tokens=5,7,8" %%H IN (D:\B.txt) DO (echo %%H %%I %%J >> nettime.csv)
The result of this is :
"\\Server1 10/10/2018 10:40:09
com
\\Server2 10/10/2018 10:40:09
com
它读取“命令成功”行的标记(我在操作系统上有葡萄牙语)
有没有办法将 %%G 放入回声中?或者我可以隐藏“命令成功”吗?
谢谢
解决方案
只需将命令的输出通过管道NET
传输到FIND
命令以搜索字符串Current
或您的语言中的任何内容。您可以使用命令捕获所有这些FOR /F
。
@ECHO off
FOR /f "delims=" %%G IN (D:\A.txt) DO (
FOR /f "tokens=5,7,8" %%H IN ('net time \\%%G ^| find "Current"') DO echo %%H %%I %%J
)>> nettime.csv
推荐阅读
- macos - 在 Windows 10 中创建将在 mac 标准电子邮件上正确发送和打开的 .oft Outlook 文件
- go - 管理后台操作(创建/杀死)
- laravel - Laravel Spatie 调用未定义的方法 Illuminate\Database\Query\Builder::assignRole()
- wordpress - Wordpress,也搜索帖子的类别描述(或 term_taxonomy.description LIKE %A%)
- jquery - jquery检查集合/数组的任何元素是否有Class
- node.js - pkg 和 crypto.generateKeyPairSync 的问题 - “未定义不是函数”
- at-command - 当 SIM 卡没有 PIN 时,如何使用 AT 命令更改/创建 SIM PIN?
- powershell - Get-MailboxDatabaseCopyStatus 显示错误状态 (Microsoft Exchange)
- groovy - 如何检查groovy目录中是否存在文件?
- python - Seaborn 热图与之前的数据重叠