2015-08-26 3 views
0

для/f "tokens = 1-7 delims = ,:"% a in ('query user^| find/i " disc "') do logff% bдля/f не работает в .bat-файле, но работает с командной строкой в ​​Windows 2003

Этот вышеприведенный код используется для пользователей удаленных рабочих столов для выхода из системы, где состояние« отключено »в Windows 2003. Оно будет работать идеально, когда я запустим в командной строке. Но он не будет работать, когда я создам файл .bat или .cmd-файл в Windows 2003. Возможно, я знаю, где я ошибаюсь?

ответ

0

Внутри партии файлов знаки процента, используемые в for замещаемых параметров должны быть экранированы

for /f "tokens=1-7 delims=,: " %%a in ('query user ^| find /i "disc"') do logoff %%b 
+0

no его не работает его сервер окон 2003 года. Я попробовал. –

+0

@ user2503585, Как это не работает? Каково наблюдаемое поведение? –

+0

его просто мигает cmd подсказка и исчезает. –

1

User585,

Да, Симметричного реализовать для цикла внутри летучей мыши/CMD сессии, вам нужно поместить переменную с

%%a 

как это

for /f %%a in (.\hosts) do quser /server:\\%%a 

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

  • Нет связанных вопросов^_^