| This directory contains scripts that give examples of using Pexpect. |
| |
| hive.py |
| This script creates SSH connections to a list of hosts that |
| you provide. Then you are given a command line prompt. Each |
| shell command that you enter is sent to all the hosts. The |
| response from each host is collected and printed. For example, |
| you could connect to a dozen different machines and reboot |
| them all at once. |
| |
| script.py |
| This implements a command similar to the classic BSD "script" command. |
| This will start a subshell and log all input and output to a file. |
| This demonstrates the interact() method of Pexpect. |
| |
| fix_cvs_files.py |
| This is for cleaning up binary files improperly added to |
| CVS. This script scans the given path to find binary files; |
| checks with CVS to see if the sticky options are set to -kb; |
| finally if sticky options are not -kb then uses 'cvs admin' |
| to set the -kb option. |
| |
| ftp.py |
| This demonstrates an FTP "bookmark". |
| This connects to an ftp site; does a few ftp commands; and then gives the user |
| interactive control over the session. In this case the "bookmark" is to a |
| directory on the OpenBSD ftp server. It puts you in the i386 packages |
| directory. You can easily modify this for other sites. |
| This demonstrates the interact() method of Pexpect. |
| |
| monitor.py |
| This runs a sequence of system status commands on a remote host using SSH. |
| It runs a simple system checks such as uptime and free to monitor |
| the state of the remote host. |
| |
| passmass.py |
| This will login to a list of hosts and change the password of the |
| given user. This demonstrates scripting logins; although, you could |
| more easily do this using the pxssh subclass of Pexpect. |
| See also the "hive.py" example script for a more general example |
| of scripting a collection of servers. |
| |
| python.py |
| This starts the python interpreter and prints the greeting message backwards. |
| It then gives the user interactive control of Python. It's pretty useless! |
| |
| rippy.py |
| This is a wizard for mencoder. It greatly simplifies the process of |
| ripping a DVD to mpeg4 format (XviD, DivX). It can transcode from any |
| video file to another. It has options for resampling the audio stream; |
| removing interlace artifacts, fitting to a target file size, etc. |
| There are lots of options, but the process is simple and easy to use. |
| |
| sshls.py |
| This lists a directory on a remote machine. |
| |
| ssh_tunnel.py |
| This starts an SSH tunnel to a remote machine. It monitors the connection |
| and restarts the tunnel if it goes down. |
| |
| uptime.py |
| This will run the uptime command and parse the output into python variables. |
| This demonstrates using a single regular expression to match the output |
| of a command and capturing different variable in match groups. |
| The regular expression takes into account a wide variety of different |
| formats for uptime output. |
| |
| df.py |
| This collects filesystem capacity info using the 'df' command. |
| Tuples of filesystem name and percentage are stored in a list. |
| A simple report is printed. Filesystems over 95% capacity are highlighted. |
| |