如何使用perl将SVN stderrs重定向到/ dev / null

时间:2009-08-25 13:35:35

标签: perl svn

我有一个脚本来检查svn repo路径上是否有任何数据可用,但是没有添加到svn中。它适用于我,但这给stderr添加和发送如下文件;

Adding         1/a
Sending        1/a
Transmitting file data ...........
Committed revision 529.

代码:

use strict;
use warnings;

sub notAdded {
        my @svnstatus = `svn st`;
        foreach my $status (@svnstatus) {
                chomp($status);
                if ($status =~ m/^?/) {
                        my ($symble, $left) = split(' ', $status);
                        system("svn add $left");
                }
        }
}

&notAdded();
system("svn commit -m 'comment'");

任何人都可以建议我如何将此错误重定向到脚本中的/ dev / null。

2 个答案:

答案 0 :(得分:4)

使用SVN隐藏不需要的输出的常规方法是使用-q(quiet)标志:

svn -q add nothere

什么也没有显示。

答案 1 :(得分:1)

或者非常简单的方法:

system("svn add $left 2>/dev/null");