gpt4 book ai didi

perl - 在 perl 中创建多个临时文件

转载 作者:行者123 更新时间:2023-12-02 08:50:40 25 4
gpt4 key购买 nike

如何在 perl 中创建 6(六)个临时文件并获取它们的名称以调用 `system())?

我想优化这段伪代码:

my $TEMP0 = new File::Temp( UNLINK => 0 );
system("PROGRAM0 --output $TEMP0");
my $TEMP1 = new File::Temp( UNLINK => 0 );
system("PROGRAM1 --input $TEMP0 --output $TEMP1");
my $TEMP2 = new File::Temp( UNLINK => 0 );
system("PROGRAM2 --input $TEMP0 --output $TEMP2");
my $TEMP3 = new File::Temp( UNLINK => 0 );
system("PROGRAM3 --input $TEMP1 $TEMP2 --output $TEMP3");
my $TEMP4 = new File::Temp( UNLINK => 0 );
system("PROGRAM4 --input $TEMP3 --output $TEMP4");
my $TEMP5 = new File::Temp( UNLINK => 0 );
system("PROGRAM4 --input $TEMP4 --output $TEMP5");

最后取消所有临时文件的链接:

unlink($TEMP0);
unlink($TEMP1);
unlink($TEMP2);
unlink($TEMP3);
unlink($TEMP4);
unlink($TEMP5);

最佳答案

您可以使用带有范围的 map 来生成临时文件。例如。

my @tempfiles = map { new File::Temp( UNLINK => 0 ) } 1..6;

由于程序的调用方式没有固定模式,因此将它们作为对系统的单独调用似乎是合理的。

关于perl - 在 perl 中创建多个临时文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8742222/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com