繁体   English   中英

有没有办法从bash运行一个zip文件中的python脚本?

[英]Is there a way to run a python script that is inside a zip file from bash?

我知道有一种方法可以使用python导入zip文件中的模块。 我在zip文件中创建了一种自定义python包库。

我想把我的“任务”脚本放在这个包中,那些正在使用库。 然后,使用bash,我想在zip文件中调用所需的脚本而不解压缩。

目标是当我想运行我的脚本时,只有一个zip在指定的文件夹中移动。

我终于找到了办法。 如果我创建一个zip文件,我必须在zip的根目录创建__main__.py 因此,可以在main中启动脚本,并使用以下命令从bash调用:

python myArchive.zip

此命令将运行__main__.py文件! :)

然后我可以创建.command文件以使用适当的参数启动脚本。

您还可以在__main__.py文件中放入一些代码,以便在需要传递参数时提供更大的灵活性。

例如: python __main__.py buildProject

参考文档在这里: https//docs.python.org/2/library/runpy.html

看看zipimport 它应该直接从安装。 您可能需要做一些工作才能使pythonpath指向您的zip文件/目录。

此模块添加了从ZIP格式存档导入Python模块(* .py,* .py [co])和包的功能。 通常不需要明确使用zipimport模块; 它由内置的导入机制自动用于作为ZIP存档路径的sys.path项。这是ZIP存档的路径。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM