Pythonでzipファイルにあるモジュールをインポートする方法があることを知っています。zip ファイルに一種のカスタム python パッケージ ライブラリを作成しました。
ライブラリを使用している「タスク」スクリプトもこのパッケージに入れたいと思います。次に、bash で、zip を解凍せずに、zip ファイル内の目的のスクリプトを呼び出したいと考えています。
目標は、スクリプトを実行するときに、指定したフォルダーに移動する zip を 1 つだけにすることです。
Pythonでzipファイルにあるモジュールをインポートする方法があることを知っています。zip ファイルに一種のカスタム python パッケージ ライブラリを作成しました。
ライブラリを使用している「タスク」スクリプトもこのパッケージに入れたいと思います。次に、bash で、zip を解凍せずに、zip ファイル内の目的のスクリプトを呼び出したいと考えています。
目標は、スクリプトを実行するときに、指定したフォルダーに移動する zip を 1 つだけにすることです。
私はついにこれを行う方法を見つけました。zip ファイルを作成する場合は__main__.py
、zip のルートに作成する必要があります。したがって、メイン内でスクリプトを起動し、次のコマンドを使用して bash から if を呼び出すことができます。
python myArchive.zip
このコマンドは__main__.py
ファイルを実行します! :)
次に.command
、適切なパラメーターを使用してスクリプトを起動するファイルを作成できます。
__main__.py
たとえば、引数を渡す必要がある場合は、ファイルにコードを追加して柔軟性を高めることもできます。
元:python __main__.py buildProject
リファレンス ドキュメントはこちら: https://docs.python.org/2/library/runpy.html
zipimportをご覧ください。インストールから直接動作するはずです。pythonpath が zip ファイル/ディレクトリを指すようにするために、いくつかの作業が必要になる場合があります。
このモジュールは、Python モジュール (*.py、*.py[co]) とパッケージを ZIP 形式のアーカイブからインポートする機能を追加します。通常、zipimport モジュールを明示的に使用する必要はありません。これは、ZIP アーカイブへのパスである sys.path アイテムの組み込みのインポート メカニズムによって自動的に使用されます。