実行後に構成ファイルを生成しているバッチスクリプトがあり、生成された構成ファイルには内部にデータがいくつかあります。なぜpythonスクリプトから実行した場合、またはダブルクリックして実行するとバッチファイルが機能しないのですか?
C:/> start.bat
が、私は以下のかとPythonスクリプトから実行しようとした場合、私は倍増しても、それをクリックして、私は、設定ファイルを得るか、それを実行するが、次のように私は、コマンドプロンプトから実行すると、私は、所望の出力を得ます私は実際にPythonスクリプトを実行すると、以下のように設定ファイルにそのデータを取得しています
import subprocess as sp
p= sp.Popen("C:/pathtobatch/start.bat",stdin=sp.PIPE, stdout = sp.PIPE, stderr=sp.PIPE)
バッチスクリプト(START.BAT)内側::
それは単に「0」は内部を持っているすべての必要なデータが含まれていませんpython C:\inetpub\ftproot\sample.py > log.txt
set myvar =< log.txt
del log.txt
echo %errorlevel% %myvar% >C:\inetpub\ftproot\config.txt
pythonスクリプトからバッチ(start.bat)を実行し、必要なデータを持つconfig.txtファイルを生成する必要があります。それで、どうすればいいのですか? start.batがダブルクリックするとうまく動作しないのはなぜですか?コマンドプロンプトから実行している場合、start.batがうまく動作しないのはなぜですか。
バットの最後に 'pause'を入れてダブルクリックしてみてください。 – WhoAmI
@WhoAmIいいえ、一時停止を追加しても動作しません。:/ – Learner
どこにでも完全なパスを指定します。実行環境の設定に関するこの無意味な質問は何度も何度も繰り返し尋ねられます。あなたが何をしたいかを正確に指定します。 '%userprofile%\ desktop'は通常、ユーザのデスクトップになります。 –