Сценарий входа на сервер терминалов
Я пишу простой скрипт.bat, чтобы отслеживать входы на наши терминальные серверы и добавлять записи в один файл CSV. Я не могу заставить свой сценарий вести себя правильно. Почти все работает, но переменная clientip имеет целую строку вывода, а не только IP-адрес, который я желаю. Я не думаю, что правильно делаю ТОКЕНЫ, и подозреваю, что это потому, что вывод команды netstat не ограничен символом табуляции.
@ECHO OFF
FOR /F "TOKENS=*" %%A IN ('TIME/T') DO SET TIME=%%A
FOR /F "TOKENS=3 delims=<tab>" %%B IN ('netstat -n ^| find ":3389" ^| find "ESTABLISHED"') DO SET CLIENTIP=%%B
echo Logon,%username%,%date%,%time%,%computername%,%clientip% >> \\dc01\c$\logons.csv
Если пример вывода netstat -n | find ":3389" | find "ESTABLISHED"
является
TCP 10.10.20.100:3389 68.46.xxx.xxx:50373 ESTABLISHED
тогда как я могу установить переменную clientip только (последние цифры отредактированы, конечно) 68.46.xxx.xxx? Бонус будет выходить из порта, в этом случае ":50373".