[x3d-public] Bash function to catch return value
John Carlson
yottzumm at gmail.com
Sat Jul 22 19:22:32 PDT 2023
Thanks Leonard, i was hoping to use a function because i have a whole list
of pipelines to run in my script.
Something like:
catcher “oops” (sed ‘s/ //‘ | tr “\n” “ “ | ….)
catcher…
I don’t want a script for catcher. If a function won’t suffice, a
preprocessor will.
You probably want 2>> instead of 2> but I’m willing to hear your reasoning.
Thanks for your help!
On Sat, Jul 22, 2023 at 9:01 PM Leonard Daly <Leonard.Daly at realism.com>
wrote:
> Not sure why you would want a script as this is almost always done in-line.
>
> $? contains the exit status. 0 is almost always success (I don't know
> where it is not) and != 0 is failure. Error message is written to STDERR
> unless you direct a command to fail silently.
>
> So something like
>
> (A | B | C ...) 2> /tmp/pipe-$$.err
> if [ $? -ne 0 ]
> then
> exitCode=$?
> cat /tmp/pipe-$$.err
> exit $exitCode
> fi
>
> Passing the piped command to a function can be dangerous/difficult because
> of shell interpolation and quoting. Also note that the piped output
> (STDOUT) is printed on the default (at the time of the pipe) output
> (probably console), and pipe-$$.err is never cleaned up (deleted). That is
> not really bad because most systems delete files after 24-48 hours in /tmp.
> If there are no errors, then /tmp/pipe-$$.err is never created.
>
> Additional useful info:
> https://unix.stackexchange.com/questions/164482/pipe-redirect-a-group-of-commands
>
> Leonard Daly
>
>
>
> On 7/21/2023 10:15 PM, John Carlson wrote:
>
> Linux folks:
>
> Does anyone have a bash function (not a separate script) to check the exit
> status of the passed in pipeline or passed in exit status, print out the
> passed in error message, and exit the script if the exit status indicates
> failure?
>
> Thanks!
>
> Should be fairly easy to write?
>
> John
>
> _______________________________________________
> x3d-public mailing listx3d-public at web3d.orghttp://web3d.org/mailman/listinfo/x3d-public_web3d.org
>
> --
> *Leonard Daly*
> 3D Systems Engineering
> President, Daly Realism - *Creating the Future*
> _______________________________________________
> x3d-public mailing list
> x3d-public at web3d.org
> http://web3d.org/mailman/listinfo/x3d-public_web3d.org
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://web3d.org/pipermail/x3d-public_web3d.org/attachments/20230722/4d7ae897/attachment.html>
More information about the x3d-public
mailing list