Ubuntu 12.04 管理员如何编写命令以在没有终端的情况下启动运行 py 文件?

Ubuntu 12.04 管理员如何编写命令以在没有终端的情况下启动运行 py 文件?

我是管理员用户,不是root用户。目前我需要采取以下步骤每次我进入Ubuntu:

1.进入/home/nan/goagent/local

2.双击proxy.py,出现如下对话框: 在此处输入图片描述

3.点击“运行”

4.结束。

但这真的很麻烦。我尝试在启动程序中写入命令“python /home/nan/goagent/local/proxy.py”。但它不起作用。 在此处输入图片描述

那么,作为非 root 用户,我应该怎么做才能在启动 Ubuntu 时自动运行 proxy.py(不在终端中)?提前致谢。

更新,这是 py 文件的属性: 在此处输入图片描述 INFO - [Dec 25 02:20:05] 将 common.IPLIST_MAP names=['google_cn', 'google_hk', 'google_ipv6', 'talk.google.com', 'talk.l.google.com', 'talkx.l.google.com'] 解析为 iplist INFO - [Dec 25 02:21:01] 将 name=google_hk host 解析为 iplist=['173.194.32.21', '74.125.134.83', '173.194.32.22', '173.194.37.85', '173.194.37.86', '74.125.232.117', '74.125.232.118', '74.125.134.19', '74.125.134.18', '74.125.128.103', '74.125.128.105', '74.125.128.104', '74.125.128.106', '74.125.128.147', '74.125.134.17', '173.194.72.94', '173.194.40.245', '173.194.40.246', '173.194.32.54', '74.125.128.199', '173.194.32.53', '74.125.128.83', '74.125.128.94', '173.194.37.53', '74.125.128.99', '173.194.37.54', '74.125.128.18', '74.125.128.19', '74.125.31.94', '74.125.128.17'] INFO - [Dec 25 02:21:01] 将 name=talk.google.com 主机解析为 iplist=['74.125.128.125']

答案1

确保您的脚本以此脚本开头#!/usr/bin/env python(以便 shell 知道如何解释它),然后您就可以直接调用您的脚本而无需 python 可执行文件。

否则,一些可执行文件(如启动文件)的环境会很奇怪。您可以尝试将其全部包装在 bash 中,以确保一切按预期方式设置:

bash -c "python /path/to/script"

由于您仍然遇到问题,请考虑记录 python 命令的输出,如下所示:

bash -c "python /path/to/script >> /path/to/logfile 2>&1"

如果 Python 出了问题,至少这样您还有机会调试和修复它。

相关内容