grep 如何移除无用的error信息

我写了一个简单的bash程序,如下:
#/bin/bash
for i in `find /usr/lib -name "*.so"`
do
        nm "$i" | grep -s xdr_ypall | grep -v UNDEF
done
但是老报一些无用的错误信息,如下:
nm: /usr/lib/gcc/i386-redhat-linux/3.4.3/libgcj.so: no symbols
我在grep里用了-s选项,
也试着将输出重定向到/dev/null
(nm "$i" | grep -s xdr_ypall | grep -v UNDEF &>/dev/null)
但是还是报上面的错误,
请教各位大侠,如何才能在标准输出上不报上面的错误呢?

作者: guzhu888   发布时间: 2011-05-28

nm "$i" 2>/dev/null 这样行不

作者: shplpy   发布时间: 2011-05-28

grep -q呢

作者: zooyo   发布时间: 2011-05-28

  1. #/bin/bash
  2. for i in `find /usr/lib -name "*.so"`
  3. do
  4.         nm "$i" 2>/dev/null| grep -s xdr_ypall | grep -v UNDEF
  5. done
复制代码


我测试是没有问题的

作者: shplpy   发布时间: 2011-05-28

回复 shplpy


    多谢,问题解决了。我一直以为是grep的问题呢。

作者: guzhu888   发布时间: 2011-05-28

回复 zooyo


    这个也不管用,多谢。

作者: guzhu888   发布时间: 2011-05-28