A cross-platform tool/library allowing to inject python code into a running python process. Based on kmaork/pyinjector.
If you are trying to debug a python process, check out kmaork/madbg.
pip install hypno
Both source distributions, manylinux, musslinux, mac and windows wheels are uploaded to pypi for every release.
hypno <pid> <python_code>
from hypno import inject_py
inject_py(pid, python_code)
This example runs a python program that prints its pid, and then attaches to the newly created process and
injects it with another print statement using hypno. Mac users will need to use sudo
for the second command.
python -c "import os, time; print('Hello from', os.getpid()); time.sleep(0.5)" &\
hypno $! "import os; print('Hello again from', os.getpid())"
Hypno briefly generates a temporary file containing the requested python code.
This file is given 644 permissions by default, which means all users can read it.
To use custom permissions, you can pass the permissions
argument to inject_py()
.