通过符号链接启动python脚本

通过符号链接启动python脚本,第1张

概述通过符号链接启动python脚本

我有一个可执行的python脚本,存在于“scripts”目录中,并且在根目录中有一个到该脚本(用于启动该文件)的符号链接。 就像是:

. ├── scripts │ ├── const.py │ ├── fops.py │ ├── i_build.py │ └── i_Props.ini └── build_i -> scripts/i_build.py

我想能够启动/运行我的脚本通过:

python build_i

从根目录。 i_build.py脚本将尝试打开i_Props.ini,并根据其中的内容做一些魔术。

问题是,当通过根目录中的符号链接启动i_build.py脚本时,i_build.py脚本将在根目录中查找其他文件(而不是i_build.py所在的/ scripts目录)。

为什么不“C:”是什么意思?

i_build.py文件的props文件位置为:

PROP_file = "i_Props.ini"

并试图打开,然后失败。 我不想为明显的原因硬编码path。

在主文件中添加os.getcwd()快速testing证实了我的怀疑,认为CWD是根目录,而__file__的检查表示它是符号链接(“build_i”)。

有什么我可以做的,让python使用像__file__名称和CWD符号的目的地?

您可以使用__file__ ,但是您必须采取一些预防措施才能获得真正的路径:

import os base_dir = os.path.dirname(os.path.realpath(__file__))

然后加载相对于base_dir的其他文件/资源​​:

some_subdir = 'my_subdir' some_file = 'my.ini' ini_path = os.path.join(base_dir,some_subdir,some_file)

想到几个可能性:

在根目录下有一个shell文件,通过显式路径调用你的python脚本。

将它所在的目录添加到路径中。

具体添加目录到sys.path

总结

以上是内存溢出为你收集整理的通过符号链接启动python脚本全部内容,希望文章能够帮你解决通过符号链接启动python脚本所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1159409.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-01
下一篇 2022-06-01

发表评论

登录后才能评论

评论列表(0条)

保存