Мне нужно выполнить сценарий в фоновом режиме через службу.Выполнение сценария с использованием Popen не удается
Служба запускает сценарий, используя Popen.
p = Popen('/path/to/script/script.py', shell=True)
Почему следующий скрипт не работает, когда я включаю запись файла в цикл for?
#!/usr/bin/python
import os
import time
def run():
fd = open('/home/dilleyjrr/testOutput.txt', 'w')
fd.write('Start:\n')
fd.flush()
for x in (1,2,3,4,5):
fd.write(x + '\n')
fd.flush()
time.sleep(1)
fd.write('Done!!!!\n')
fd.flush()
fd.close()
if __name__ == '__main__':
run()
У меня есть разрешения на файл как 777. Я просто переключил его на/tmp, ваше право было бы лучше для этого тестирования. Результаты те же, если я прокомментирую, что файл цикла записывает выходные данные ... Начало: Done !!!! С ними включает в себя выход ... Начало: – Ron
Tx Ron для проверки разрешения - попросил меня провести тщательный анализ кода и определить вашу ошибку, см. Мой отредактированный ответ. –
Спасибо --- Я слишком новичок в python, но я все время забываю, что вы не можете сделать это, как в Perl. Теперь, когда это будет решено, я смогу справиться с моими проблемами с реальным скриптом. (Думайте, что они связаны с окружающей средой.) Я собираюсь использовать этот, чтобы выплюнуть окружающую среду. – Ron