Выходной нижеПакетный цикл с использованием Wmic
wmic logicaldisk get providername /value
с помощью ЦМД (с ограниченными правами пользователя) на компьютере, я использую это:
ProviderName=
ProviderName=
ProviderName=\\xxx-SN-NA01\Users2\N\ni
ProviderName=\\xxx-sn-na01\Software_Ca
ProviderName=\\xxx-sn-na01\TSO
Я Тринг, чтобы получить на следующие хранится в переменной с именем% drives_paths_wmic%:
\\xxx-SN-NA01\Users2\N\ni \\xxx-sn-na01\Software_Ca \\xxx-sn-na01\TSO
Тогда для содержания этого должны быть переданы в переменную% файла%.
Пакетный код, который я в настоящее время является:
@echo off
setlocal enabledelayedexpansion
for /F "tokens=2 delims='='" %%A in ('wmic logicaldisk get providername /value') do (
echo %%A >> %drive_paths_Wmic%
)
echo %drive_paths_Wmic%
echo %drive_paths_Wmic% >> %file%
Edit: проблема заключается в том, что ничего не сохраняется в переменной% drive_paths_Wmic%.
Поскольку командный файл должен запускаться на компьютерах под управлением Windows 7 и XP, я не могу использовать PowerShell. Просьба внести изменения в код партии, чтобы сделать это?
Хорошо, я редактировал вопрос, чтобы включить проблему. Я попробую предложения и дам вам знать результат. –
Теперь я использовал ваш код в «полной партии». Файл «somename.txt» создается и заполняется, однако программа выходит, когда пытается запустить линию for/f ... loop. Как это должно быть изменено? –
Попробуйте 'set ECHO ON'. Сообщение об ошибке? Какая последняя линия ECHOed? – JosefZ