Как использовать переменную вне цикла for в командном файле? - PullRequest
0 голосов
/ 10 октября 2018

У меня есть список «A.txt», в котором есть список удаленных серверов.

Мне нужно использовать сетевое время для всех из них, а затем отобразить результат с именем удаленного сервера.Пример: "server 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

Считывает токен строки "команда успешна" (у меня португальский язык включенOS)

Есть ли способ поместить %% G в эхо?или я могу скрыть "команда успешна"?

Спасибо

1 Ответ

0 голосов
/ 10 октября 2018

Просто перенаправьте вывод команды 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
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...