On 3/10/23 18:46, aapost wrote:
main.pids.update({"messages" :subprocess.Popen(["tail", "-n",
"1", "-f", "/var/log/messages"])}),
main.pids.update({"syslog" :subprocess.Popen(["tail", "-n",
"1", "-f", "/var/log/syslog"])}),
main.pids.update({"kern" :subprocess.Popen(["tail", "-n", "1",
"-f", "/var/log/kern.log"])}),
main.pids.update({"user" :subprocess.Popen(["tail", "-n", "1",
"-f", "/var/log/user.log"])}),
),
To pre-emptively address the bug there it would need to be:
main.pids.update({"messages" :subprocess.Popen(["tail", "-n", "1", "-f",
"/var/log/messages"])}) if not main.pids["messages"] else None,
main.pids.update({"syslog" :subprocess.Popen(["tail", "-n", "1", "-f",
"/var/log/syslog"])}) if not main.pids["syslog"] else None,
main.pids.update({"kern" :subprocess.Popen(["tail", "-n", "1", "-f",
"/var/log/kern.log"])}) if not main.pids["kern"] else None,
main.pids.update({"user" :subprocess.Popen(["tail", "-n", "1", "-f",
"/var/log/user.log"])}) if not main.pids["user"] else None,
which does start to break down readability due to line length, as there
isn't really an indention rule set for something uncommonly used.
but some renaming makes the pattern clearer
pids.update({"messages" :subprocess.Popen(["cmd1"])}) if not
pids["messages"] else None,
pids.update({"syslog" :subprocess.Popen(["cmd2"])}) if not
pids["syslog"] else None,
pids.update({"kern" :subprocess.Popen(["cmd3"])}) if not pids["kern"]
else None,
pids.update({"user" :subprocess.Popen(["cmd4"])}) if not pids["user"]
else None,
and adding a comment to say something like
# starting a series of processes via lambda tuple sequence if process
not running
#pattern: p.update({"name":sp.Popen(cmd)}) if not p["name"] else None,
--
https://mail.python.org/mailman/listinfo/python-list