Current Path : /usr/local/share/examples/python2.5/sockets/ |
FreeBSD hs32.drive.ne.jp 9.1-RELEASE FreeBSD 9.1-RELEASE #1: Wed Jan 14 12:18:08 JST 2015 root@hs32.drive.ne.jp:/sys/amd64/compile/hs32 amd64 |
Current File : //usr/local/share/examples/python2.5/sockets/finger.py |
#! /usr/bin/env python # Python interface to the Internet finger daemon. # # Usage: finger [options] [user][@host] ... # # If no host is given, the finger daemon on the local host is contacted. # Options are passed uninterpreted to the finger daemon! import sys, string from socket import * # Hardcode the number of the finger port here. # It's not likely to change soon... # FINGER_PORT = 79 # Function to do one remote finger invocation. # Output goes directly to stdout (although this can be changed). # def finger(host, args): s = socket(AF_INET, SOCK_STREAM) s.connect((host, FINGER_PORT)) s.send(args + '\n') while 1: buf = s.recv(1024) if not buf: break sys.stdout.write(buf) sys.stdout.flush() # Main function: argument parsing. # def main(): options = '' i = 1 while i < len(sys.argv) and sys.argv[i][:1] == '-': options = options + sys.argv[i] + ' ' i = i+1 args = sys.argv[i:] if not args: args = [''] for arg in args: if '@' in arg: at = string.index(arg, '@') host = arg[at+1:] arg = arg[:at] else: host = '' finger(host, options + arg) # Call the main function. # main()