summaryrefslogtreecommitdiffstats
path: root/lldb/third_party/Python/module/pexpect-4.6/doc/examples.rst
diff options
context:
space:
mode:
authorDavide Italiano <davide@freebsd.org>2019-03-12 20:41:24 +0000
committerDavide Italiano <davide@freebsd.org>2019-03-12 20:41:24 +0000
commit205fd03a27dcf1649f4facaf8d80d219e2937d9d (patch)
tree59e5ddf3f860f20b05a9b4b043b26c0eabb5840b /lldb/third_party/Python/module/pexpect-4.6/doc/examples.rst
parente2b8c40a7726806557fb17666478e60ada1c7439 (diff)
downloadbcm5719-llvm-205fd03a27dcf1649f4facaf8d80d219e2937d9d.tar.gz
bcm5719-llvm-205fd03a27dcf1649f4facaf8d80d219e2937d9d.zip
[third-party] Update pexpect to 4.6.
Reviewers: labath, jdevlieghere Subscribers: lldb-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D59159 llvm-svn: 355967
Diffstat (limited to 'lldb/third_party/Python/module/pexpect-4.6/doc/examples.rst')
-rw-r--r--lldb/third_party/Python/module/pexpect-4.6/doc/examples.rst63
1 files changed, 63 insertions, 0 deletions
diff --git a/lldb/third_party/Python/module/pexpect-4.6/doc/examples.rst b/lldb/third_party/Python/module/pexpect-4.6/doc/examples.rst
new file mode 100644
index 00000000000..6338b5c01cd
--- /dev/null
+++ b/lldb/third_party/Python/module/pexpect-4.6/doc/examples.rst
@@ -0,0 +1,63 @@
+Examples
+========
+
+Under the distribution tarball directory you should find an "examples" directory.
+This is the best way to learn to use Pexpect. See the descriptions of Pexpect
+Examples.
+
+`topip.py <https://github.com/pexpect/pexpect/blob/master/examples/topip.py>`_
+ This runs `netstat` on a local or remote server. It calculates some simple
+ statistical information on the number of external inet connections. This can
+ be used to detect if one IP address is taking up an excessive number of
+ connections. It can also send an email alert if a given IP address exceeds a
+ threshold between runs of the script. This script can be used as a drop-in
+ Munin plugin or it can be used stand-alone from cron. I used this on a busy
+ web server that would sometimes get hit with denial of service attacks. This
+ made it easy to see if a script was opening many multiple connections. A
+ typical browser would open fewer than 10 connections at once. A script might
+ open over 100 simultaneous connections.
+
+`hive.py <https://github.com/pexpect/pexpect/blob/master/examples/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 <https://github.com/pexpect/pexpect/blob/master/examples/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 :meth:`~pexpect.spawn.interact` method of Pexpect.
+
+`ftp.py <https://github.com/pexpect/pexpect/blob/master/examples/ftp.py>`_
+ This demonstrates an FTP "bookmark". This connects to an ftp site;
+ does a few ftp tasks; 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
+ :meth:`~pexpect.spawn.interact` method of Pexpect.
+
+`monitor.py <https://github.com/pexpect/pexpect/blob/master/examples/monitor.py>`_
+ This runs a sequence of 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 <https://github.com/pexpect/pexpect/blob/master/examples/passmass.py>`_
+ This will login to each given server and change the password of the
+ given user. This demonstrates scripting logins and passwords.
+
+`python.py <https://github.com/pexpect/pexpect/blob/master/examples/python.py>`_
+ This starts the python interpreter and prints the greeting message
+ backwards. It then gives the user iteractive control of Python. It's
+ pretty useless!
+
+`ssh_tunnel.py <https://github.com/pexpect/pexpect/blob/master/examples/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 <https://github.com/pexpect/pexpect/blob/master/examples/uptime.py>`_
+ This will run the uptime command and parse the output into variables.
+ This demonstrates using a single regular expression to match the
+ output of a command and capturing different variable in match groups.
+ The grouping regular expression handles a wide variety of different
+ uptime formats.
OpenPOWER on IntegriCloud