2017-10-01 10 views
0

私はそれがループ内でPythonスクリプトを実行していますループバックBATスクリプトをWindows 10のバックグラウンドで実行するにはどうすればよいですか?

@ECHO OFF 

:loop 
D:\Python\python.exe C:\pythonfile.py 

goto loop 
PAUSE 

私はバッチファイルをダブルクリックしたときに、それはそう、プロセスはバックグラウンドで実行され、コンソールウィンドウがで表示されていないことを確認するにはどうすればよいですタスクバー?

+0

バッチスクリプトの代わりに.pywスクリプトを使用できます。 .pywファイルタイプは、コンソールを作成しないpythonw.exeに関連付ける必要があります。 – eryksun

答えて

-1

少なくとも私が知っているものではないバッチを使ってそれを行う方法があるかどうかはわかりません。ただし、タスクバーで実行したくない場合は、スケジュールされたタスクでこれを行うことをお勧めします。

タスクスケジューラを開き、ライブラリで新しいタスクを作成します。そこから、ログオン時の自動開始など、条件やトリガなどの実行方法を設定することができます。

代わりに、タスクWindowsのビュー10.バッチファイルを開いて実行し、別の仮想デスクトップに移動します。

0

vbsで構築されたウィンドウでプロセスを完全に非表示にしてから、バッチを呼び出します。バッチファイルを呼び出すバッチの代わりにvbsファイルを実行します。

no_see.vbs

Set MyScript = CreateObject("WScript.Shell") 
MyScript.Run "C:\wherever\script\is\batchfile.cmd", 0, False 

これは完全に隠されたバッチファイルを実行します。

しかし、pythonスクリプトはまだコンソールウィンドウを呼び出すかもしれないので、これを考慮する必要があります。

@ECHO OFF 
:loop 
D:\Python\pythonw.exe C:\pythonfile.pyw 
goto loop 
PAUSE 

これはコンソールなしで実行されるため、すべてが非表示になります。

私は、ループ内で.pyファイルを実行していますが、何も眠らないと何千ものPythonインスタンスが生成されます。あなたは正確に何をしようとしていますか?私に考えを与えることができれば、私はおそらく解決策を改善するのに役立つでしょう。

+0

この場合、python.exeはcmd.exeから隠しコンソールを継承します。 – eryksun

+0

しかし、VBScriptを使用してPythonスクリプトを実行するバッチスクリプトを実行する理由はわかりません。 Pythonがシステムにインストールされている場合、.vbsファイルのファイル関連付けは、.pywの場合と同じように間違っている可能性があります。 wscript.exe(GUI)ではなく、エディタまたはcscript.exe(コンソール)に関連付けることができます。 – eryksun

+0

@eryksunそれで彼が試みていることについての私の質問には、彼はスクリプトからスクリプトを呼び出すよりも良いソリューションを与えることができます。 –

関連する問題