2015-08-10 3 views
0

У меня есть пакетный скрипт, который отправляет пинги на некоторые ПК. Доступные ПК записываются в текстовый файл, поэтому каждый компьютер стоит в отдельной строке. Другой пакетный скрипт копирует некоторые файлы на ПК (на данный момент он пытается копировать на все ПК).Прочтите .txt по строке в пакетные переменные

Теперь я хочу изменить сценарий (ы), чтобы пакет считывал текстовый файл и копировал только доступные компьютеры ... но как?
Он должен читать строки текста текстового файла по строкам и проверять EOF.

+1

Вы можете пинговать машины и немедленно скопировать необходимые файлы на онлайн-ПК. Непонятно, почему вы тестируете машины и, по-видимому, копируете файлы через некоторое время, когда машины больше не будут в сети. – foxidrive

+0

Действительно, вы правы, и я добавил его как лучшее решение. – xs6

ответ

3

Я не уверен, что вы хотите, но в соответствии с вашим вопросом «Прочтите .txt по строке и поместите его в переменные», это может быть полезно для вас.

@echo off 
setlocal enabledelayedexpansion 

set count=0 

for /f "tokens=*" %%x in (textfile.txt) do (
    set /a count+=1 
    set var[!count!]=%%x 
) 
echo %var[4]% 
pause >nul 

echo %var[4]% распечатает 4-ю строку в TextFile.txt (или любой текстовый файл).

Смежные вопросы