私はこの行動を完全に理解していません。
非常に単純な Perl スクリプトがあります。
#!/usr/bin/perl
use strict;
use warnings;
print "line 1\n";
print STDERR "line 2\n";
コンソールから実行すると、期待どおりの結果が得られます。
$ perl a.pl
line 1
line 2
しかし、ファイルにリダイレクトすると、逆の順序で行が取得されます。
$ perl a.pl &> a
$ cat a
line 2
line 1
コンソールで取得したのと同じ順序で、すべての出力 STDOUT+STDERR をファイルにキャプチャするにはどうすればよいですか?