Как выполнить сценарий python из сценария Bash с входным параметром, который возвращается из Python? - PullRequest
0 голосов
/ 12 июля 2020

Я вызываю сценарий py из сценария bash, но мой сценарий python возвращает мне значение, которое я хочу использовать в сценарии bash. Может ли кто-нибудь помочь с этим?

1 Ответ

0 голосов
/ 13 июля 2020

Здравствуйте

Это довольно просто. Просто напишите то, что хотите, с помощью print (), и вы сможете использовать этот вывод. Из функции python вы также можете использовать return и строку или что-то еще, чтобы выдать результат в качестве ввода для сценариев bash / sh. В linux все нормально, когда программа / скрипт завершается с нулевым кодом возврата (0). Таким образом, правило должно быть таким: Return / Exit / Error Messages в текстовой форме: print ('any') и Returncode: sys.exit (number)

#!/usr/bin/python3
import sys
print('No error - But i return 1 and not 0')
sys.exit(1)

Игра с in bash (test.py) ...

# test.py &>/dev/null && echo 'zero' || echo 'not zero'
not zero
# echo -ne $(test.py)'\n'
No error - But i return 1 and not 0

Итак, первая команда (короткая if then else) проверяет только код возврата (код выхода), а вторая использует вывод. Используйте оба, и все прошло хорошо.

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