| 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. | |