Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/312.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何处理多次调用python通知脚本?_Python_Bash - Fatal编程技术网

如何处理多次调用python通知脚本?

如何处理多次调用python通知脚本?,python,bash,Python,Bash,我正在尝试编写一个脚本,以在linux下自动执行备份,我希望有某种类型的系统托盘通知(KDE),即备份正在运行 在阅读了其他SE帖子并做了一些研究之后,我似乎找不到bash的DBUS库,因此我想从他的答案中调整python脚本,并通过让我的bash备份脚本反复调用python通知脚本来创建、更新,并在备份完成时删除通知 但是,我不太确定如何在python端实现这一点,因为如果我只是从bash调用python3 notify.py argument1 argument2,每次都会创建一个新的pyt

我正在尝试编写一个脚本,以在linux下自动执行备份,我希望有某种类型的系统托盘通知(KDE),即备份正在运行

在阅读了其他SE帖子并做了一些研究之后,我似乎找不到bash的DBUS库,因此我想从他的答案中调整python脚本,并通过让我的bash备份脚本反复调用python通知脚本来创建、更新,并在备份完成时删除通知

但是,我不太确定如何在python端实现这一点,因为如果我只是从bash调用
python3 notify.py argument1 argument2
,每次都会创建一个新的python脚本实例

基本上,以下是我在bash脚本中要做的:

#awesome backup script
./notification.py startbackup #this creates a new instance of the python script and sets up the KDE progress bar, possibly returning some kind of ID that is reused later?

#do backup things here.....

#periodically
./notification.py updateProgress 10%
./notification.py updateProgress 20%
#etc...

#finish the backup...

./notification.py endbackup #set the progressbar to complete and do cleanup
因为我以前没有做过类似的事情,也不确定要搜索什么,所以我想知道我现在在python/bash设置中如何实现类似的东西?


i、 e.如果我要创建一个bash变量来存储从第一次调用python脚本返回的实例ID,并在每次后续调用时将其传回,那么我必须如何编写python脚本才能处理这个问题,并对最初创建的相同通知执行操作,而不是创建新的实例?

保持进程运行并通过管道发送命令,或者使用文件存储实例ID。

所以我会使用类似的方法?对请记住,这可能更优雅,但使用文件要简单得多。为什么我需要使用文件来存储ID?我想我可以把它存储在一个bash变量中,然后在以后的每次调用中重用它。我的问题是,如果它确实是最好的解决方案,那么如何在python中实现它?如果您是正确的,您可以在命令行上将ID传递给脚本。这比我建议的要简单,但是我该如何实现python端呢?python脚本如何跟踪实例并知道如何修改现有实例?