Created a Function in python which will capture the contents to clipboard and return the results as an array
TanyaYatskovskawrote:
Hi Steve,
Try using the following approach: copy the PuTTY window's contents to the clipboard. The following code snippet gets the output of the PuTTY window and prints it to the log to the Additional Info panel:
//...
var w = Sys["Process"]("putty")["Window"]("PuTTY", "*", 1);
w["SystemMenu"]["Click"]("Copy All to Clipboard");
Log["Message"](w["WndCaption"], Sys["Clipboard"]);
//...
As soon as you get the needed text, you can use the
indexOf method or a regular expression to find out whether the text matches a specific search pattern. Please see the
"C++Script, C#Script - Working With Strings" article for information on these features and some sample scripts.
#*****************************************************************************
# def name: GetPuttyText
#
# Description: Gets putty txt from terminal and returns contents.
#
# Inputs: sXTerm = Terminal Name
#
# Outputs: Captured data from screen
#
# Limitations: None
#
# Examples: GetPuttyText(sXTerm)
#
#*****************************************************************************
def GetPuttyText (sXTerm):
# Create Putty object
w = Sys.Process("putty").Window("PuTTY", sXTerm, 1)
w.Restore()
w.Activate()
# Capture data to clipboard
w.SystemMenu.Click("Copy All to Clipboard")
sScreen = Sys.Clipboard
#Log Putty window contents
Log.Message(sScreen)
# Put contents into an array
aScreen = sScreen.splitlines()
# Clean up array and remove blank lines
aScreen = [s and s.strip() for s in aScreen]
aScreen = list(filter(None, aScreen))
# Clear Scrollback in putty
w.SystemMenu.Click("Clear Scrollback")
return aScreen
# GetPuttyText