[英]Perl reading STDIN via inetd on windows error “Bad file descriptor”
[英]perl: get a new file descriptor to redirect stdin to
my $EXE = FileHandle->new;
my $fd = 3; # <-------- doest work
open $EXE, q{-|},
"$myexe make 2>&1 <%=$fd"
or die('Cannot open EXE');
$err = !(close $EXE);
我想將stdin重定向到一些虛擬文件描述符(最好不必打開文件)。
有什么建議我在2>&1
如何重定向stdin?
2>&1 # Dups fd 1 onto fd 2
所以
0<&3 # Dups fd 3 onto fd 0
<&3 # "<" affects fd 0 by default
所以
open(my $from_child, '-|', "foo 2>&1 <&$fd")
我不禁要問為什么要這么做。 它是使用IPC :: Run3或IPC :: Run可以更好地完成的事情的一部分嗎?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.