gpt4 book ai didi

Perl:有没有办法以编程方式设置文件测试运算符? (即-X)

转载 作者:行者123 更新时间:2023-12-03 22:52:57 25 4
gpt4 key购买 nike

我经常做复杂的文件/目录/符号链接(symbolic link)测试,并且正在编写一个子程序来做到这一点。
例如,而不是if (-x $file)

my $test = '-x';
if ($x $file)
我可以改变 $x成为 -f -r -e管他呢。
我已经彻底阅读了文件测试文档, https://perldoc.perl.org/functions/-X
并且似乎没有任何技巧可以做到这一点。
我已阅读 File::Find https://perldoc.perl.org/File::Find但是我不想每次搜索时都写一个单独的子程序,这样会使代码很丑很长。
我错过了什么或任何技巧吗?

最佳答案

这是使用调度表的另一种方法:

my $file = 'test.txt';
my %ftest = (
'-x' => sub {-x $_[0]},
'-f' => sub {-f $_[0]}
);
my $test = '-x';
if ($ftest{$test}->($file)) {
say "Executable";
}
else {
say "Not executable";
}

关于Perl:有没有办法以编程方式设置文件测试运算符? (即-X),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64160306/

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