Prev: instructor solution manual for Signals, Systems & Transforms 4 ED by Phillips, Parr & Riskin
Next: Ruby Expect
From: David Calvin on 8 Jul 2010 12:45 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? Thanks. -- Posted via http://www.ruby-forum.com/.
From: James Harrison on 8 Jul 2010 15:33 Have you tried just simply stderr? You could either run the script and have 2>/dev/null be the redirect, or inside the backticks I think you can safely use the same redirect. You can do it more ruby specific by redefining $STDERR, but that's probably overkill if it's a simple script. James On Jul 8, 2010, at 10:45 AM 7/8/10, David Calvin wrote: > > 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? > > Thanks. > -- > Posted via http://www.ruby-forum.com/. >
From: Brian Candler on 8 Jul 2010 15:35 David Calvin wrote: > Any tips? If you're running under some Unix-like O/S, then try returnAddress = `defaults read /path/to/conappsqa.bundle/serverconfig serverAddress 2>/dev/null` Otherwise look at open3.rb in the standard library. -- Posted via http://www.ruby-forum.com/.
From: Robert Klemme on 13 Jul 2010 04:46
2010/7/8 David Calvin <babybluebeach(a)gmail.com>: > > 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/ |