Я выяснил, как использовать call(), чтобы заставить мой python script выполнить команду:
import subprocess
mycommandline = ['lumberjack', '-sleep all night', '-work all day']
subprocess.call(mycommandline)
Это работает, но есть проблема, что, если у пользователей нет дровосека в их командном пути? Он работал бы, если бы дровосек был помещен в тот же каталог, что и python script, но как знает script, он должен искать дровосека? Я подумал, была ли ошибка с ошибкой команды, а lumberjack не будет в командной строке, script может попытаться выяснить, что это за папка, и искать там лесоруб и, наконец, предупредить пользователя о том, чтобы скопировать дровосека в одно из этих двух мест, если оно не было найдено ни в одном из них. Как узнать, что такое сообщение об ошибке? Я прочитал, что check_call() может вернуть сообщение об ошибке и что-то о атрибуте returncode. Я не мог найти примеры того, как использовать check_call() и returncode, что такое сообщение или как я мог бы сказать, не было ли сообщение неподтвержденным командами.
Я даже об этом думаю правильно?