4

Я запускаю эту команду, чтобы получить имя группы:

set "remotegroup="
     for /f "skip=1delims=" %%a in (
     '"wmic group where sid="S-1-5-32-555" get name"'
     ) do if not defined remotegroup set "remotegroup=%%a"

но когда я делаю это echo "%rdpgroup%" вывод выглядит так:

"Remote Desktop Users  "

Я не хочу эти пробелы в конце пользователей. Просто хочу вывод, как это: "Remote Desktop Users"

1 ответ1

5

Вывод WMIC - это юникод!

Конечный <CR> можно удалить, передав значение через другой цикл FOR /F. Это также удаляет фантомную "пустую" строку (на самом деле <CR>)

@echo off
set "remotegroup="
for /f "skip=1 delims=" %%a in ('"wmic group where sid="S-1-5-32-555" get name"') do (
    for /f "delims=" %%b in ("%%a") do if not defined remotegroup set "remotegroup=%%~nb"
)
echo "%remotegroup%"
pause

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .