On Fri, Jun 29, 2007 at 12:08:22PM +0200, Robert Millan [ackstorm] wrote:
> On Fri, Jun 29, 2007 at 10:16:18AM +0100, Stephane Chazelas wrote:
> >
> > Do you mean that for instance, you'd like a third command to be
> > executed if either but not both of two commands succeed?
> >
> > cmd1; a=$?
> > cmd2; b=$?
> > (( !a != !b )) && cmd3
> >
> > should do.
>
> Thank you, that works. Although I think ^^ would be more intuitive. Let me
> know if you want a patch for that.
[...]
You could do something like:
xor() {
previous_status=$?
"$@"
return "$((!$previous_status == !$?))"
}
cmd1; xor cmd2 && cmd3
--
Stéphane
_______________________________________________
Bug-bash mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/bug-bash