psexec は system32 ディレクトリにインストールされ、Windows の CMD ラインまたは powershell で、別のサーバーでリモートの bat ファイルを実行できます (これにより、SSIS パッケージが実行され、データが読み込まれていることが確認されます)。
これをローカルで実行される python スクリプトにビルドしようとしていますが、python シェルで次の行を実行すると、CMD ウィンドウが開き、古典的な「psexec は内部コマンドまたは外部コマンドとして認識されていません」というエラーが表示されます (しかし、CMD ウィンドウがすぐに閉じてしまうので、100% ではありません)。
以下は Python で実行されて失敗しました: import os os.system(r"psexec.exe \servername\ d:\gis\gis_data\gps\gps_data_sql\importgpsdata.bat")
以下は Windows CM 行で正常に実行されます: psexec.exe \servername\ d:\gis\gis_data\gps\gps_data_sql\importgpsdata.bat
d:\など 実行されるリモートバットの場所です。
単純なバット実行の場合、サブプロセスは必要ないと思います。また、psexec.exe の明示的な場所を提供しようとしましたが、うまくいきませんでした。
psexec がコマンドラインでは正常に実行されるのに、Python シェルでは実行されない理由について、私は途方に暮れています。