Guest User

Untitled

a guest
Dec 14th, 2017
95
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.78 KB | None | 0 0
  1. import argparse
  2.  
  3. if __name__ == '__main__':
  4. desc = '''
  5. An example of how to use argparse
  6.  
  7. ./CMD SUBCOMMAND [options...]
  8.  
  9. SUB COMMANDS:
  10. record
  11. report
  12. ...
  13. '''
  14.  
  15. arg_parser = argparse.ArgumentParser(description=desc)
  16.  
  17. sub_parser = arg_parser.add_subparsers(dest='sub_cmd')
  18.  
  19. sub_init = sub_parser.add_parser('record',
  20. help='Record')
  21. sub_init.add_argument('-i', '--ip',
  22. action='store',
  23. required=True,
  24. help='hostname for target')
  25. sub_init.add_argument('--user',
  26. action='store',
  27. metavar='USER',
  28. default='root',
  29. help='User name for a target')
  30. sub_init.add_argument('--port',
  31. action='store',
  32. type=int,
  33. default=22,
  34. help='Port for a target')
  35. sub_init.add_argument('--append',
  36. action='store_true',
  37. help='Append traced data')
  38.  
  39. sub_report = sub_parser.add_parser('report',
  40. help='Report helper')
  41. sub_report.add_argument('--filter-pid', action='store',
  42. nargs='*',
  43. type=int,
  44. metavar='PID',
  45. help='Filter PIDs')
  46.  
  47. args = arg_parser.parse_args()
  48.  
  49. # If subcommand doesn't exist?
  50. if not args.sub_cmd:
  51. arg_parser.print_help()
  52. exit(0)
  53.  
  54. if args.sub == 'record':
  55. # Do something
  56. pass
  57. elif args.sub == 'report':
  58. # Do something
  59. pass
Add Comment
Please, Sign In to add comment