基础运行方法
使用Python解释器直接运行
python3 脚本名.py
- 说明:
python3
指定使用Python 3.x版本(避免与Python 2混淆),若系统默认Python版本为3.x,可简写为python
。 - 示例:
python3 /home/user/hello.py # 运行指定路径的脚本
添加可执行权限后运行
- 步骤:
- 在脚本首行添加Shebang声明(指定解释器路径):
#!/usr/bin/env python3 # 推荐:自动查找Python3路径 # 或 #!/usr/bin/python3 # 直接指定路径
- 赋予脚本可执行权限:
chmod +x hello.py
- 直接运行:
./hello.py # 当前目录执行 /path/to/hello.py # 绝对路径执行
- 在脚本首行添加Shebang声明(指定解释器路径):
- 优势:无需每次输入
python3
命令,适合常用脚本。
高级场景与工具
使用虚拟环境(推荐)
作用:隔离项目依赖,避免包冲突。
# 安装虚拟环境工具 sudo apt install python3-venv # Debian/Ubuntu sudo yum install python3-virtualenv # CentOS/RHEL # 创建并激活环境 python3 -m venv myenv # 创建虚拟环境 source myenv/bin/activate # 激活环境 # 在虚拟环境中运行脚本 (myenv) python3 hello.py
后台运行 & 日志记录
- 后台运行(不占用终端):
nohup python3 hello.py > output.log 2>&1 &
nohup
:防止进程因终端关闭而终止。> output.log
:重定向标准输出到日志文件。2>&1
:将错误输出合并到标准输出。
- 查看进程:
ps aux | grep hello.py
定时任务(Cron)
步骤:
- 编辑Cron任务表:
crontab -e
- 添加定时任务(例如每天9:30运行):
30 9 * * * /usr/bin/python3 /path/to/hello.py
- 保存退出,Cron会自动执行。
调试与错误处理
常见问题排查
- 权限不足:
bash: ./hello.py: Permission denied
解决:执行
chmod +x hello.py
。 - Python版本错误:
解决:明确使用python3
或通过which python3
确认解释器路径。 - 依赖缺失:
解决:在虚拟环境中用pip install -r requirements.txt
安装依赖。
调试模式
python3 -m pdb hello.py # 启动交互式调试器
安全与最佳实践
- 避免使用Root权限:
除非必要,勿以sudo
运行脚本,防止系统误操作。 - 依赖管理:
始终使用requirements.txt
记录依赖:pip freeze > requirements.txt
- 代码验证:
运行前用pylint
或flake8
进行静态检查,减少运行时错误。 - 路径规范:
在脚本中使用绝对路径访问文件,避免因工作目录变化导致的错误。
Linux运行Python脚本的核心方法包括直接调用解释器、添加可执行权限,结合虚拟环境、后台任务和Cron可满足复杂需求,遵循以下原则确保高效安全:
- 明确Python版本(优先使用
python3
)。 - 关键脚本添加Shebang和可执行权限。
- 生产环境务必使用虚拟环境隔离依赖。
- 长期运行的任务需配合日志和进程管理。
引用说明: 基于Python官方文档的命令行与环境指南、Linux man-pages的shebang解释,以及开源社区最佳实践(如PEP 394 – Python on Unix-like Systems),虚拟环境部分参考Python venv文档,安全建议遵循OWASP Python安全指南。
原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/7310.html