summaryrefslogtreecommitdiff
path: root/tools/dev_env_setup/templates/run_app_in_context_of.sh
diff options
context:
space:
mode:
Diffstat (limited to 'tools/dev_env_setup/templates/run_app_in_context_of.sh')
-rw-r--r--tools/dev_env_setup/templates/run_app_in_context_of.sh14
1 files changed, 14 insertions, 0 deletions
diff --git a/tools/dev_env_setup/templates/run_app_in_context_of.sh b/tools/dev_env_setup/templates/run_app_in_context_of.sh
new file mode 100644
index 0000000..ae9facb
--- /dev/null
+++ b/tools/dev_env_setup/templates/run_app_in_context_of.sh
@@ -0,0 +1,14 @@
+#!/bin/bash
+PID="$(pgrep -o -f -u $(id -u) $1)"
+[ -z "$PID" ] && echo "No such process" > /dev/stderr && exit 1
+
+eval `strings /proc/$PID/environ | while read line; do
+ KEY="$(echo $line | sed -n 's/\([[:upper:]_]*\)=.*/\1/p')"
+ VALUE="$(echo $line | sed -n 's/[[:upper:]_]*=\([^"]*\)/\1/p')"
+ [ -z "$KEY" ] && continue;
+ [ -z "$VALUE" ] && continue;
+ echo "export $KEY='$VALUE'"
+done`
+
+echo "Now in same session as $PID. Running $2"
+$2