Execute vários comandos via SSH e PowerShell
Consegui conectar-me a um switch Cisco IE-2000-L via SSH. Eu usei oRenci SSH.NET biblioteca.
Guia de início:http://vwiki.co.uk/SSH_Client_(PowerShell)
Meu código de trabalho é# Load SSH library (for .NET 4.0 and PowerShell 3)
$DllPath = "D:\temp\Renci.SshNet.dll"
[void][reflection.assembly]::LoadFrom( (Resolve-Path $DllPath) )
# Connect to switch (Cisco IE2000-L) with IP, port, username, password
$SshClient = New-Object Renci.SshNet.SshClient('172.20.91.30', 22, 'admin', 'mypassword')
$SshClient.Connect()
# execute one command on Cisco switch
$SshCommand = $SshClient.RunCommand('show arp')
# show result
$SshCommand.Result
# close SSH connection
$SshCommand.Dispose()
$SshClient.Disconnect()
$SshClient.Dispose()
Meu problema éO código acima envia apenas um comando. Mas quero executar vários comandos consecutivamente sem fechar e reabrir uma sessão.
Se eu adicionar um segundo comando logo após o primeiro
# execute one command on Cisco switch
$SshCommand = $SshClient.RunCommand('show arp')
$SshCommand = $SshClient.RunCommand('show start')
... o script trava e nunca termina. O que estou fazendo errado?
Informações relevantes secundárias
Meu principal objetivo é enviar vários comandos ao mesmo tempo para um switch CiscoEu játente Plink junto com lotecmd
entrada. Não é confiável o suficiente. Às vezes funciona e às vezes não.Eu já tenteiscripts de telnet. Muito estranho.