-1

ソフトウェアが最新であるかどうかを判断するために使用されるTCPクライアント/サーバーを作成しました。そうでない場合は、bashスクリプトを呼び出してソフトウェアのアップグレードを実行します。以下のコードを使用し、Cygwin からクライアントを起動して、これを Windows で正常に動作させることができました。

subprocess.call("windowsUpgrade.sh", shell=True)

ただし、Linux または Mac ベースのクライアントからこれを使用しようとすると、エラーが発生します。

/bin/sh: linuxUpgrade.sh: not found

/bin/sh: macUpgrade.sh: command not found

この問題の原因と解決方法についてのアイデアはありますか? ありがとう

4

1 に答える 1

1

現在のディレクトリは、デフォルトでは、実行可能ファイルが検索された PATH 変数にはありません。試してください:

subprocess.call("./linuxUpgrade.sh", shell=True)

また、スクリプトが実行可能としてマークされていることを確認してください

chmod u+x linuxUpgrade.sh
于 2013-02-22T16:00:09.143 に答える