脚本可以是环境变量吗
Can a Script be an Environment Variable
我有一个 Python 脚本,我希望它可以在任何地方执行。在 Linux 或 Windows 中,但在这种情况下最好在 Windows 中。将脚本的路径放入 Windows 下的 PATH 中是行不通的,因此从某个目录调用 python my_script.py
会导致该目录中没有这样的文件的消息。那么,这在某种程度上可能吗?
您可以尝试创建一个别名:
Linux
- 在您的主文件夹中创建一个
.bash_aliases
文件
- 添加别名,例如
alias pscript='python /home/pythonscript.py'
- 注销并重新登录或执行
source .bash_aliases
Windows
- 运行
doskey pscript=python C:\script.py
。 Read more here
PATH 用于搜索可执行文件,这不包含在 windows 个脚本文件中。
解决方法是将脚本转换为批处理文件,请参阅 here
如何简单地让脚本也充当批处理文件
对于 运行 您的脚本的操作系统,它需要找到它(PATH 变量),识别它是可执行的并且知道应该由哪个程序执行它。您似乎已经处理了 PATH 部分,所以现在处理其他两个部分。
在 unixy 系统上,您需要使脚本可执行。要设置用户可执行位,请执行 chmod u+x myscript.py
。然后你需要告诉系统哪个程序应该运行它。通常,您使用 "shebang" 作为文件中的第一行:
#!/usr/bin/env python3
系统将在路径中搜索名为 "python3" 的程序(对 python 2 个脚本使用 "python")并将该可执行文件用于 运行 脚本。
在 Windows 上,您需要将文件扩展名 (.py) 与 python 可执行文件相关联。安装 python 时通常会为您完成。如果没有,您可以深入研究 ftype, assoc and pathext here.
Windows 不关心 shebang(除非你是 运行ning cygwin,然后查看上面的 unixy 系统)所以同一个脚本可以存在于两个世界中。
一旦脚本可执行,您就可以直接调用它而不是执行 python 并将文件作为脚本名称。它只是
myscript.py
我有一个 Python 脚本,我希望它可以在任何地方执行。在 Linux 或 Windows 中,但在这种情况下最好在 Windows 中。将脚本的路径放入 Windows 下的 PATH 中是行不通的,因此从某个目录调用 python my_script.py
会导致该目录中没有这样的文件的消息。那么,这在某种程度上可能吗?
您可以尝试创建一个别名:
Linux
- 在您的主文件夹中创建一个
.bash_aliases
文件 - 添加别名,例如
alias pscript='python /home/pythonscript.py'
- 注销并重新登录或执行
source .bash_aliases
Windows
- 运行
doskey pscript=python C:\script.py
。 Read more here
PATH 用于搜索可执行文件,这不包含在 windows 个脚本文件中。
解决方法是将脚本转换为批处理文件,请参阅 here 如何简单地让脚本也充当批处理文件
对于 运行 您的脚本的操作系统,它需要找到它(PATH 变量),识别它是可执行的并且知道应该由哪个程序执行它。您似乎已经处理了 PATH 部分,所以现在处理其他两个部分。
在 unixy 系统上,您需要使脚本可执行。要设置用户可执行位,请执行 chmod u+x myscript.py
。然后你需要告诉系统哪个程序应该运行它。通常,您使用 "shebang" 作为文件中的第一行:
#!/usr/bin/env python3
系统将在路径中搜索名为 "python3" 的程序(对 python 2 个脚本使用 "python")并将该可执行文件用于 运行 脚本。
在 Windows 上,您需要将文件扩展名 (.py) 与 python 可执行文件相关联。安装 python 时通常会为您完成。如果没有,您可以深入研究 ftype, assoc and pathext here.
Windows 不关心 shebang(除非你是 运行ning cygwin,然后查看上面的 unixy 系统)所以同一个脚本可以存在于两个世界中。
一旦脚本可执行,您就可以直接调用它而不是执行 python 并将文件作为脚本名称。它只是
myscript.py