使用 alias (命令行别名) - 最常用
这是最直接、最快捷的方法,适合在当前终端会话中快速执行一个命令,它不会创建新文件,只是为当前 Shell 会话中的命令定义一个别名。

场景:你经常需要运行 python3 /home/user/my_project/main.py --debug,希望简化为 runmyapp。
操作步骤:
-
创建别名: 在终端中直接输入以下命令:
alias runmyapp='python3 /home/user/my_project/main.py --debug'
在当前终端中,你只需要输入
runmyapp就能运行你的脚本了。
(图片来源网络,侵删) -
让别名永久生效: 上一步的别名只在当前终端会话中有效,关闭终端后就会失效,要让它永久生效,需要将其写入 Shell 的配置文件中。
- 如果你使用的是 Bash (Ubuntu, Debian, CentOS 等默认 Shell),请编辑
~/.bashrc文件。 - 如果你使用的是 Zsh (macOS 默认 Shell, 以及一些现代 Linux 发行版如 Oh My Zsh),请编辑
~/.zshrc文件。
使用文本编辑器(如
nano或vim)打开文件:nano ~/.bashrc # 或者 nano ~/.zshrc
在文件末尾添加你的别名:
# 我的 Python 脚本快捷方式 alias runmyapp='python3 /home/user/my_project/main.py --debug'
保存并退出 (
Ctrl+O,Enter,Ctrl+X在 nano 中)。 - 如果你使用的是 Bash (Ubuntu, Debian, CentOS 等默认 Shell),请编辑
-
重新加载配置文件: 让配置立即生效,而不需要重启终端:
source ~/.bashrc # 或者 source ~/.zshrc
优点:
- 非常简单,一行命令搞定。
- 适合个人日常使用。
缺点:
- 别名只在定义它的 Shell 环境中有效。
- 如果脚本路径或参数需要改变,必须修改配置文件。
创建 Shell 脚本 (.sh 文件) - 更灵活、更推荐
这种方法创建一个独立的可执行脚本文件,它比 alias 更强大、更灵活,也更易于分享。
场景:你的 Python 脚本需要特定的环境变量、复杂的参数,或者你想封装一些前置操作。
操作步骤:
-
创建脚本文件: 在你的项目目录下创建一个新的文件,
run.sh。touch /home/user/my_project/run.sh
-
编写脚本内容: 用文本编辑器打开
run.sh并写入以下内容:#!/bin/bash # 可选:设置环境变量 export MY_APP_ENV="production" # 可选:进入脚本所在目录 cd "$(dirname "$0")" # 执行你的 Python 脚本 python3 main.py --debug
#!/bin/bash:Shebang,告诉系统这个文件需要用 Bash 来执行。cd "$(dirname "$0")":这是一个很好的实践,它会切换到脚本所在的目录,这样你的 Python 脚本中的相对路径(如./data)就能正确工作。
-
赋予执行权限: 为了能够直接运行这个脚本,你需要给它添加执行权限。
chmod +x /home/user/my_project/run.sh
-
运行脚本: 现在你可以通过以下两种方式运行它:
- 绝对路径:
/home/user/my_project/run.sh - 相对路径:
./run.sh(如果你当前就在/home/user/my_project目录下)
- 绝对路径:
-
(可选) 将脚本添加到 PATH: 为了能像系统命令一样,在任何目录下直接通过
runmyapp运行,可以将这个脚本所在的目录添加到系统的PATH环境变量中。- 假设你把
run.sh放在了/home/user/bin/目录下(如果没有,可以自己创建mkdir -p ~/bin)。 - 将
~/bin目录添加到PATH,同样,编辑~/.bashrc或~/.zshrc,添加下面这行:export PATH="$PATH:$HOME/bin"
- 重新加载配置文件 (
source ~/.bashrc)。 - 你只需要将
run.sh重命名为你想要的命令名,runmyapp:mv /home/user/my_project/run.sh /home/user/bin/runmyapp
- 之后,你就可以在任何地方直接输入
runmyapp来运行它了。
- 假设你把
优点:
- 非常灵活,可以处理复杂的逻辑和环境设置。
- 脚本文件是独立的,易于分享和管理。
- 通过添加到
PATH,可以创建自定义命令。
缺点:
- 比创建
alias多几个步骤。
创建桌面快捷方式 (GUI)
如果你在图形界面 (GNOME, KDE, XFCE 等) 下工作,可以为你的 Python 脚本创建一个桌面图标,双击即可运行。
场景:你希望用户通过双击桌面图标来启动一个图形界面的 Python 应用程序。
操作步骤:
-
创建
.desktop文件: 在桌面或~/.local/share/applications/目录下创建一个文件(后者更规范,会出现在应用程序菜单中),命名为my_app.desktop。# 推荐方法,放入应用程序菜单 nano ~/.local/share/applications/my_app.desktop # 或者直接放在桌面 # nano ~/Desktop/my_app.desktop
-
编写
.desktop文件内容: 文件内容格式如下:[Desktop Entry] Version=1.0 Type=Application Name=My Awesome Python App Comment=This is my fantastic application written in Python. Exec=/usr/bin/python3 /home/user/my_project/main.py Icon=applications-python Terminal=false Categories=Development;Python;
[Desktop Entry]:固定头。Name:快捷方式的显示名称。Exec:最关键的一行,这里是你要执行的完整命令,必须是绝对路径。/usr/bin/python3是 Python 解释器的常见路径,你可以用which python3命令来确认。Icon:图标的名称,可以是系统图标名(如applications-python,gnome-terminal),也可以是图标的完整路径(如/home/user/my_app_icon.png)。Terminal:true:双击后会打开一个终端窗口来运行程序,适合命令行脚本。false:直接运行程序,适合带 GUI 的程序。
-
赋予执行权限:
.desktop文件本身需要可执行权限。chmod +x ~/.local/share/applications/my_app.desktop
你可以在应用程序菜单中找到它,或者将它从菜单拖到桌面,双击即可运行。
优点:
- 提供了图形化的用户体验。
- 非常适合最终用户使用。
缺点:
- 主要面向图形界面。
Exec字段中的路径必须是绝对路径。
总结与推荐
| 方法 | 适用场景 | 优点 | 缺点 |
|---|---|---|---|
alias |
个人日常命令行使用,快速、临时使用 | 极其简单,无需创建文件 | 仅限当前 Shell,不易分享,修改需改配置文件 |
| Shell 脚本 | 强烈推荐,需要复杂逻辑、环境设置,或想创建可分享的自定义命令 | 灵活、强大、可维护性好,可封装复杂逻辑 | 比别名多几个步骤 |
.desktop |
图形界面下,为最终用户提供便捷的启动方式 | 图形化操作,用户体验好 | 仅限 GUI,需要绝对路径 |
给你的建议:
- 如果你只是想在命令行里偷个懒:用 方法一 (
alias)。 - 如果你写的是一个稍微复杂点的项目,或者想让脚本更健壮、更易于管理:用 方法二 (Shell 脚本),这是最通用和专业的做法。
- 如果你的 Python 程序有图形界面,或者你想让不熟悉命令行的同事也能轻松运行:用 方法三 (
.desktop文件)。
