Zachary Turner | 9dbf62f | 2015-11-02 22:41:01 +0000 | [diff] [blame] | 1 | import six |
| 2 | |
| 3 | if six.PY2: |
| 4 | import commands |
| 5 | get_command_output = commands.getoutput |
| 6 | get_command_status_output = commands.getstatusoutput |
| 7 | |
Zachary Turner | bac6e4f | 2015-11-03 21:37:27 +0000 | [diff] [blame] | 8 | cmp_ = cmp |
Zachary Turner | 9dbf62f | 2015-11-02 22:41:01 +0000 | [diff] [blame] | 9 | else: |
| 10 | def get_command_status_output(command): |
| 11 | try: |
| 12 | import subprocess |
Zachary Turner | bbc5b46 | 2015-11-04 01:03:47 +0000 | [diff] [blame] | 13 | return (0, subprocess.check_output(command, shell=True, universal_newlines=True)) |
Zachary Turner | 9dbf62f | 2015-11-02 22:41:01 +0000 | [diff] [blame] | 14 | except subprocess.CalledProcessError as e: |
| 15 | return (e.returncode, e.output) |
| 16 | |
| 17 | def get_command_output(command): |
| 18 | return get_command_status_output(command)[1] |
Zachary Turner | bac6e4f | 2015-11-03 21:37:27 +0000 | [diff] [blame] | 19 | |
| 20 | cmp_ = lambda x, y: (x > y) - (x < y) |