在我在Perl脚本中执行的以下命令中,如何捕获stderr?
my $output = `ssh login.com git clone --bare user@login.com:/nfs/repo/ /nfs/repo//4124/`;
if ($? ne '0')
{
$stderr = $output;
print $stderr;
}
else
{
$stdout = $output;
print $stdout;
}
Run Code Online (Sandbox Code Playgroud)
my $output = `ssh login.com git clone --bare user@login.com:/nfs/repo/ /nfs/repo//4124/ 2>&1`;
Run Code Online (Sandbox Code Playgroud)
所述2>&1在端发送标准误差到同一位置作为标准输出,这是由反引号捕获.