In Pike 8.1, Process.run() will accept functions for stdout and stderr, as was discussed here a while ago. I just tweaked that to check for *callables* rather than specifically functions, which allows easy tee'ing of the output:
Process.run( ({"some_command","with","args"}), (["stdout":({write,Stdio.File("output.txt","wct")->write}) ]) );
Maybe my idea of coolness is disrupted by the 36 degree weather we're having here at the moment, but I just love the idea of putting multiple outputs simply as multiple functions!
ChrisA
pike-devel@lists.lysator.liu.se