From: Robert Klemme Date: 2010-07-13T17:46:45+09:00 Subject: Re: Silencing Standard Error 2010/7/8 David Calvin : > > Hello, > > I am new here, so I apologize if this is a lame question. I have googled > for quite awhile trying to find out the answer to my question to no > avail. > > In a script, I am issuing this line: > > >    returnAddress = `defaults read > /path/to/conappsqa.bundle/serverconfig serverAddress` > > Which reads a plist entry on my computer. If the plist entry is not > present then I get the following spew on the command line when I run the > script: > > > 2010-07-08 09:32:37.273 defaults[29326:40b] > The domain/default pair of (/path/to/conappsqa.bundle/serverconfig, > serverAddress) does not exist > > Is there a way I can eliminate this kind of spew? I just want to execute > the code and handle the error. I don't want all the mess. > > Any  tips? If you want to silence all error output and you run on some form of *nix you can do: $stderr.reopen '/dev/null' Example: $ ruby19 -e 'x=`sh -c "echo foo >&2"`' foo $ ruby19 -e '$stderr.reopen("/dev/null");x=`sh -c "echo foo >&2"`' $ Otherwise you need open3 as Brian said or do the fork exec yourself. Kind regards robert -- remember.guy do |as, often| as.you_can - without end http://blog.rubybestpractices.com/