usr/local/bin ディレクトリで Python スクリプト「test.py」を実行したいと考えています。これにより、同じディレクトリにテキスト ファイルが作成され、短いテキストが書き込まれます。
このスクリプトは、var/www にある Web アプリケーションへの GET 要求に応答するコードの Python サブプロセスによって呼び出されます。
subprocess.Popen(["python", "usr/local/bin/test.py"])
コードはエラーなしで実行されますが、テキスト ファイルは作成されません。これを行うコードは簡単です。
myfile = open('test.txt','w+')
myfile.write("Write some text\n")
myfile.close()
shell=True を含め、これと一緒にオプションを渡そうとしました。同様に、os.system() が提供するインターフェースを使用しようとしましたが、これも役に立ちませんでした。
テスト目的で、関連するすべてのディレクトリに完全なアクセス許可を与えました。
CLI 経由で test.py スクリプトを実行すると、意図したとおりに機能しますが、Web アプリケーションによって呼び出された場合はそうではありません。問題は何ですか?