когда мое приложение ytasm не запущено и я запускаю
ps -aux | grep '/opt/local/bin/ytasm'
Я ничего не получаю в оболочке.
если я запускаю, я получаю одно запущенное приложение ytasm
однако, если я оберну вышеупомянутое в функцию python, если приложение ytasm
не запущено, я все равно получу одно приложение ytasm.
def _checkIfappIsRunning(app="/opt/local/bin/ytasm"):
cmd = "ps -aux | grep '%s' | awk '{print $12}'" % app
pr = subprocess.Popen(cmd, shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
msg = pr.stdout.read()
print msg
выглядит так же, как просто поиск 12-го элемента, это также нахождение экземпляра awk поиск /opt/local/bin/ytasm
, поэтому при запуске ytasm функция python возвращает 2 вместо 1. как это исправить?