Я пытаюсь выполнить команду через ssh, взять только первую часть возвращенной команды и установить ее в качестве переменной, которая будет использоваться. Я пытаюсь использовать RegExp и, так как мне нужны только первые 4 цифры, я использую код шаблона "^ \ d {1,4}", я могу успешно получить весь возврат с помощью этого кода;
Set WshShell = CreateObject("WScript.Shell")
Set oExec = WshShell.Exec ("ssh -un -pw command")
Do Until oExec.StdOut.AtEndOfStream
ID = oExec.StdOut.ReadLine
Loop
WScript.Echo ID
Но теперь, когда я пытаюсь использовать RegExp и echo, чтобы увидеть, получаю ли я то, что хочу, я получаю ошибку "Несоответствие типов"
Set RegExp = New RegExp
Set WshShell = CreateObject("WScript.Shell")
Set oExec = WshShell.Exec ("ssh -un -pw command")
RegExp.Pattern = "^\d{1,4}"
Do Until oExec.StdOut.AtEndOfStream
ID = oExec.StdOut.ReadLine
WScript.Echo RegExp.execute(ID)
Loop
Если у кого-нибудь есть какие-либо обвинения в том, что не так с кодом, пожалуйста, дайте мне знать. Если вы знаете какую-либо альтернативу, я буду признателен. Используя скрипт оболочки, я могу получить то, что ищу, но мне нужно запустить этот VBS с Windows. Вот скрипт Shell, если кто-нибудь может перевести его на VBS.
.............for i in `command | sed ‘1d’ | awk ‘{print $1}’`..............
Заранее признателен за любую помощь ... Я какое-то время ломал голову над этим и сгорал.