view bin/quine2 @ 10288:2914125a0a85

<oerjan> le/rn tmp//tmp/ is a directory for files that are not worth saving in HackEgo history, but which should still survive a single command. Note that it interacts funnily with HackEgo\'s lock and re-run commit check: files can disappear if you don\'t know what you\'re doing. Basically, don\'t modify files inside and outside tmp/ in the same HackEgo command.
author HackBot
date Thu, 16 Feb 2017 17:28:09 +0000
parents f2f65a1fa363
children
line wrap: on
line source

#!/bin/sh
a() { p=$(echo -n $(ps -p $1 -oppid | tail -1)); if ps -p $p -ocmd | tail -1 | egrep -q "^sh -c .* \| cat\$"; then ps -p $1 -ocmd | tail -1; else a $p; fi }
q=$(a $$); if echo "$q" | grep -q "^bash -c"; then echo "$q" | sed "s/^bash -c/\`run/"; elif echo "$q" | grep -q "^/bin/sh /hackenv/bin/"; then echo "$q" | sed "s,^/bin/sh /hackenv/bin/,\`,"; else echo \`"$q"; fi