gpt4 book ai didi

linux - 使用 perl 检查 Linux 中的目录是否存在

转载 作者:太空宇宙 更新时间:2023-11-04 05:58:27 27 4
gpt4 key购买 nike

subroutine: searchFileFromDirec

我正在 Linux 中使用 Perl 进行编程。我正在创建一个程序,用户可以在其中输入目录和文件名。然后,程序将检查给定目录是否存在,并在该目录中搜索给定文件名。但我的问题是验证输入的目录是否有效。

最佳答案

您必须指定目录路径是绝对路径还是相对路径。如果它是绝对的,您可以使用 -e 检查它是否存在,并使用 -d 检查给定的输入是否是目录。

if ( -e $dir and -d $dir) {
print "\nyour folder exists";
}

如果路径是相对路径,则必须创建绝对路径。为此,您必须将驱动器用作 $base (您需要为每个驱动器执行此操作),然后使用 rel2abs 查找给定相对路径的绝对路径。如果文件夹存在,$abs_path 将包含绝对路径,否则其值为 undef。下面是使用驱动器上的相对路径搜索文件夹的示例 c:\:

$base = 'c:\';
$abs_path = File::Spec->rel2abs( $relative_path ) ;
$abs_path = File::Spec->rel2abs( $relative_path, $base ) ;
if ( defined $abs_path ) {
print "\n folder exists ";
}

有关更多选项,请参阅perldoc -f -X

关于linux - 使用 perl 检查 Linux 中的目录是否存在,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38692927/

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