diff options
Diffstat (limited to 'third_party/Python/module/pexpect-2.4/examples/df.py')
-rw-r--r-- | third_party/Python/module/pexpect-2.4/examples/df.py | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/third_party/Python/module/pexpect-2.4/examples/df.py b/third_party/Python/module/pexpect-2.4/examples/df.py new file mode 100644 index 000000000000..64bbf93a1b29 --- /dev/null +++ b/third_party/Python/module/pexpect-2.4/examples/df.py @@ -0,0 +1,34 @@ +#!/usr/bin/env python + +"""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. Note that this does not +parse filesystem names after the first space, so names with spaces in them will +be truncated. This will produce ambiguous results for automount filesystems on +Apple OSX. """ + +import pexpect + +child = pexpect.spawn ('df') + +# parse 'df' output into a list. +pattern = "\n(\S+).*?([0-9]+)%" +filesystem_list = [] +for dummy in range (0, 1000): + i = child.expect ([pattern, pexpect.EOF]) + if i == 0: + filesystem_list.append (child.match.groups()) + else: + break + +# Print report +print +for m in filesystem_list: + s = "Filesystem %s is at %s%%" % (m[0], m[1]) + # highlight filesystems over 95% capacity + if int(m[1]) > 95: + s = '! ' + s + else: + s = ' ' + s + print s + |