Re: A feature request regarding redirection to variables
On Mon, Dec 18, 2023 at 7:39 AM Luke Tidd wrote: > > A very common thing I need to do when writing bash is to collect both > the stdout and stderr of a command. This can be done relatively > reasonably with files but it would be very attractive to be able to > redirect these directly to a variable some how. The new no-fork command substitution feature already allows this: $ f(){ echo foo; echo bar >&2;} $ a=${ { b=${ f;};} 2>&1;} $ declare -p a b declare -- a="bar" declare -- b="foo" You just need to wait for the next release
A feature request regarding redirection to variables
A very common thing I need to do when writing bash is to collect both the stdout and stderr of a command. This can be done relatively reasonably with files but it would be very attractive to be able to redirect these directly to a variable some how. cmd >@stdout 2>@stderr exit_code=$? where "stdout" and "stderr" here are variables. This or equivalent would be very nice. currently I find myself reusing this pattern over and over: err_file="$(mktemp)" var_stdout="$(cmd 2>"$err_file)" exit_code=$? var_stderr="$(<"$err_file")" rm "$err_file" and it just doesn't have the same ring to it! Is there a snowballs chance? Thanks for your time!