Mercurial > hg > config
view python/is_interactive.py @ 630:6e6a2adaa9f6
file modes
author | Jeff Hammel <k0scist@gmail.com> |
---|---|
date | Thu, 20 Feb 2014 12:11:17 -0800 |
parents | 7eaaf99e3182 |
children |
line wrap: on
line source
#!/usr/bin/env python """ illustrates usage of isatty Ref: http://www.tutorialspoint.com/python/file_isatty.htm """ import optparse import os import sys # DOES NOT WORK! :( # > echo 'foo' | is_interactive.py # Usage: is_interactive.py [options] # is_interactive.py: error: missing input def main(args=sys.argv[1:]): parser = optparse.OptionParser() options, args = parser.parse_args(args) function = str.upper if args: # take input from command line args input = ' '.join(args) elif not sys.stderr.isatty(): # take input from stdin input = sys.stdin.read() else: # no input! cry! parser.error("missing input") print function(input) if __name__ == '__main__': main()