troubleshooting Question

VBS Script Modification Pt2

Avatar of cpatte7372
cpatte7372Flag for United Kingdom of Great Britain and Northern Ireland asked on
Programming Languages-OtherScripting Languages
5 Comments1 Solution642 ViewsLast Modified:
Hello Experts,

An expert helped compile the following text. However, when the commands are executed they are run one at a time, but I would like the commands to full complete before moving to another tab. I've already had help with a similar issue and all I would like is to have the similar issue applied to this situation.

So, the following is the script that I would like modified:

# $language = "VBScript"
# $interface = "1.0"
' SendToAll.vbs

Sub Main()
   
    if Not crt.Session.Connected then
        szSession = crt.Dialog.Prompt("Enter session:", "", "", False)
        if szSession = "" then exit sub
   
        crt.Session.ConnectInTab("/S " & szSession)
        crt.Session.ConnectInTab("/S " & szSession)
        crt.Session.ConnectInTab("/S " & szSession)
    end if

    ' Find out what should be sent to all tabs
    szCommand = crt.Dialog.Prompt("Enter command to be sent to all tabs:", _
                                  "Send To All Connected Tabs", "ls", False)
    if szCommand = "" then exit sub
   
    If crt.Dialog.MessageBox(_
        "Are you sure you want to send the following command to " & _
        "__ALL__ tabs?" & vbcrlf & vbcrlf & szCommand, _
        "Send Command To All Tabs - Confirm", _
        vbyesno) <> vbyes then exit sub
   
    ' Connect to each tab in order from left to right, issue a command, and
    ' then disconnect...
    aryCmds = Split(szCommand, "|")

    For Each strOneCmd In aryCmds
        For nIndex = 1 to crt.GetTabCount
            Set objCurrentTab = crt.GetTab(nIndex)
            objCurrentTab.Activate
            if objCurrentTab.Session.Connected = True then
                crt.Sleep 500
                objCurrentTab.Screen.Send strOneCmd & vbcr
                crt.Sleep 1000
            end if
        Next
    Next
   
    MsgBox "The following command was sent to all connected tabs:" & vbcrlf & _
        vbcrlf & szCommand

End Sub
                 

The following is the script that I would like applied to the above. The expert that helped with the following script is called Shift-3 but I'm not sure if he's going to be available;


# $language = "VBScript"
# $interface = "1.0"
' SendToAll.vbs

Sub Main()
   
    if Not crt.Session.Connected then
        szSession = crt.Dialog.Prompt("Enter session:", "", "", False)
        if szSession = "" then exit sub
   
        crt.Session.ConnectInTab("/S " & szSession)
        crt.Session.ConnectInTab("/S " & szSession)
        crt.Session.ConnectInTab("/S " & szSession)
    end if
   
    arrCommands = Array("term len 0", "show run", "show ip inte brief", "show cdp neigh",_
        "show spanning-tree summary", "show vlan-switch brief", "show spanning-tree brief",_
        "show spanning-tree uplinkfast", "show spanning-tree blockedports",_
        "show vtp status", "show interfaces trunk", "show standby brief", "show ip route",_
        "show ip ospf interface", "show ip ospf neigh", "show ip ospf",_
        "show ip ospf summary-address", "show ip ospf border-routers", "show ip bgp",_
        "show ip bgp summary", "show ip bgp neighbor", "show ip bgp vpnv4 all",_
        "show ip cef summary")

    ' Send commands to all tabs
    ' Connect to each tab in order from left to right, issue all commands, and
    ' then disconnect...
    For nIndex = 1 to crt.GetTabCount
        Set objCurrentTab = crt.GetTab(nIndex)
        objCurrentTab.Activate
            
        If objCurrentTab.Session.Connected = True Then
            For Each strCommand In arrCommands
                crt.Sleep 500
                objCurrentTab.Screen.Send strCommand & vbcr
                crt.Sleep 1000
            Next
        End If
    Next
End Sub
                                           

As you can see the script by shift-3 allows the commands to be fully completed before moving to the next tab. I would like that applied to the new script.

I hope that makes sense.

Cheers
ASKER CERTIFIED SOLUTION
cpatte7372

Our community of experts have been thoroughly vetted for their expertise and industry experience.

Join our community to see this answer!
Unlock 1 Answer and 5 Comments.
Start Free Trial
Learn from the best

Network and collaborate with thousands of CTOs, CISOs, and IT Pros rooting for you and your success.

Andrew Hancock - VMware vExpert
See if this solution works for you by signing up for a 7 day free trial.
Unlock 1 Answer and 5 Comments.
Try for 7 days

”The time we save is the biggest benefit of E-E to our team. What could take multiple guys 2 hours or more each to find is accessed in around 15 minutes on Experts Exchange.

-Mike Kapnisakis, Warner Bros