Запустите собственный инструмент termianl в качестве аргумента команды - PullRequest
0 голосов
/ 17 мая 2018

В настоящее время я разрабатываю инструмент терминала, который анализирует вывод команды.Я пишу инструмент в Python.Теперь я хотел бы запустить свой инструмент в качестве аргумента в каждой команде, например: python program.py -analyse

В этом случае python program.py - это команда, и я хотел бы начать свой собственный проект anaylse.py саргумент -analyse, который анализирует выходные данные проекта и записывает свои собственные выходные данные в файл.Теперь мой вопрос:

Как мне запустить собственную программу analyse.py с аргумента -analyse и как я могу перехватить и прочитать вывод из python program.py?

Ответы [ 2 ]

0 голосов
/ 17 мая 2018

argparse - это стандартный библиотечный модуль для работы с аргументами командной строки.Я бы посоветовал вам структурировать аргументы скрипта следующим образом:

Выберите символ, скажем f, чтобы указать имя скрипта, который вы хотите запустить через инструмент.Это будет вызвано следующим образом:

python program.py -f analyse.py

Затем вы можете использовать argparse, чтобы просто выполнить файл, указанный после аргумента -f, и делать все, что вы хотите свыход.

0 голосов
/ 17 мая 2018

Добавление -analyse в качестве аргумента передаст его в program.py. Я не думаю, что это то, что вы ищете. Я думаю, что вы ищете python program.py | python analyse.py. Тогда просто прочитайте вывод из stdin.

Бросьте #!/usr/bin/python в начало файла analyse.py и измените разрешения на исполняемый файл, чтобы сделать его еще проще: python program.py | analyse.py

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...