Zsh Mailing List Archive
Messages sorted by: Reverse Date, Date, Thread, Author

Re: Silent shell but not silent script



    Hi Bart :)

 * Bart Schaefer <schaefer@xxxxxxxxxxxxxxxx> dixit:
> On Sep 2,  1:09pm, DervishD wrote:
> }     Sometimes the command I have to run won't exist, so zsh will
> } issue that error. How the heck can I make zsh not to spill the error
> } message but at the same time let the command to use stderr and
> } stdout?
> As far as I can tell, it's impossible.

    That's what I suppose :(
 
> Redirections are done *before* the command execution is attempted,
> which is why this ...

    Yes, I've noticed from the shell error message suppression.
 
> }     The only solution I've found so far is to pipe stderr thru a sed
> } script and get rid of any shell message
> I'd have suggested 'grep -v "^zsh:"', or egrep with a more specific
> set of messages to suppress.

    Is it faster than sed? Anyway, I don't know under which kind of
shell my script will run (that's the main problem, because I'm sure
there is a way of 'shutting up' zsh), so it's almost impossible to
distinguish between valid lines from the command and the shell error
message, I can only do assumptions and that's not a good idea... That
said, there is no point in using neither grep nor sed :(

    The whole point of all this mess is my 'mobs' project, a building
system. The main program is a (portable) script, but I allow a 'hook'
to be run in order to extend the main script capabilities (for
example to do autoconf-like checks, etc.). Currently I force the
'hook' to be a shell script and it is run like this:

    [ -f "0.hook" ] && {
        # Things
        sh -c ". ./0.hook" || exit $?
        # More things
    }

    I want to allow the hook to be any kind of binary, no matter if a
script-with-a-bangpath or a real binary, but then the problem is the
one I explained in my first message: it's impossible to know if the
command execution failed or if the command returned with an error
(the worst case is when the command returns with 126 or 127, of
course). I'm afraid I'm not going to be able to remove the current
limitation :((( Any idea is welcome, of course ;)

    Thanks for your explanation.

    Raúl Núñez de Arenas Coronado

-- 
Linux Registered User 88736 | http://www.dervishd.net
http://www.pleyades.net & http://www.gotesdelluna.net
It's my PC and I'll cry if I want to...



Messages sorted by: Reverse Date, Date, Thread, Author