相关疑难解决方法(0)

在Python中获取临时目录的跨平台方式

是否有跨平台的方式获取tempPython 2.6中的目录路径?

例如,在Linux /tmp下,在XP下C:\Documents and settings\[user]\Application settings\Temp.

python cross-platform temporary-directory

227
推荐指数
4
解决办法
9万
查看次数

Python:用于创建基于PID的锁文件的模块?

我正在写一个Python脚本,可能会或可能不会(取决于一堆东西)运行很长时间,我想确保多个实例(通过cron启动)不会踩到彼此脚趾.这样做的逻辑方法似乎是基于PID的锁文件...但是如果已经有代码执行此操作,我不想重新发明轮子.

那么,是否有一个Python模块可以管理基于PID的锁文件的细节?

python lockfile pid

24
推荐指数
4
解决办法
2万
查看次数

只允许一个python脚本实例?

我有一个python脚本,我想只允许在一台机器上运行一次.我希望它打印像"错误,已经运行"的东西,如果它已经在运行,无论是在后台运行还是在不同的ssh会话中运行.我该怎么做?这是我的剧本.

import urllib, urllib2, sys
num = sys.argv[1]
print 'Calling'
phones = [
'http://phone1/index.htm',
'http://phone2/index.htm',
'https://phone3/index.htm',
'https://phone4/index.htm',
'https://phone5/index.htm'
]
data = urllib.urlencode({"NUMBER":num, "DIAL":"Dial", "active_line":1})
while 1: 
    for phone in phones:
        try:
            urllib2.urlopen(phone,data) # make call
            urllib2.urlopen(phone+"?dialeddel=0") # clear logs
        except: pass
Run Code Online (Sandbox Code Playgroud)

PS如果重要,我正在使用CentOS 5.

python linux singleton locking centos

8
推荐指数
1
解决办法
7231
查看次数

检查Python脚本是否已在运行

我希望我的Python脚本检查,如果它已经运行,如果是,则杀死旧进程.我试过这个,但它确实不起作用......

import os
import subprocess
import signal

process_name = "python " + os.path.abspath(__file__)
proc = subprocess.Popen(["pgrep", process_name], stdout=subprocess.PIPE)

# Kill process.
for pid in proc.stdout:
    os.kill(int(pid), signal.SIGTERM)
    # Check if the process that we killed is alive.
    try:
        os.kill(int(pid), 0)
        raise Exception("""wasn't able to kill the process
                          HINT:use signal.SIGKILL or signal.SIGABORT""")
    except OSError as ex:
        continue
Run Code Online (Sandbox Code Playgroud)

它不会杀死旧进程并且现在运行多次.

python linux kill process

7
推荐指数
2
解决办法
1万
查看次数

从另一个python脚本终止python脚本

我有一个长期运行的python脚本,我希望能够从另一个python脚本结束.理想情况下,我正在寻找的是一种方法,将进程ID设置为第一个脚本,并能够通过第二个脚本中的ID识别它是否正在运行.此外,我希望能够终止这个长时间运行的进程.

是否存在任何很酷的捷径来实现这一目标?

此外,我在Windows环境中工作.

我刚刚在这里找到了另一个答案:检查python脚本是否正在运行

python process terminate

6
推荐指数
2
解决办法
1万
查看次数

检查 Python 脚本是否正在运行

我有一个名为 update.py 的 python 脚本,我想使用另一个 python 脚本来检查该脚本是否正在运行。如果 update.py 未运行或出错,则脚本将运行 update.py。

我可以做吗?如果有例子那就非常感谢了。

python bash raspberry-pi3

1
推荐指数
1
解决办法
1万
查看次数