gpt4 book ai didi

linux - 如何通过 perl 脚本以交互方式访问 Linux 子目录?

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:17:26 25 4
gpt4 key购买 nike

这是我的示例代码:

#!/usr/bin/perl
use strict;

print "Enter the name of the input file and its relevant path:\n";
my $file1 = <STDIN>;
chomp $file1;

open (DOC,"$file1") || die "Could not open $file1, $!";

是否有更好的方式来交互指定文件名及其路径?

类似于 Linux 命令行界面,用户可以通过这种方式:

  • 使用 tab 来自动完成路径?
  • 查看当前目录的内容,按Ctrl+D?

最佳答案

您可以使用 perl 模块 Term::Complete允许用户自动完成路径。
Term::Complete 需要一个包含自动完成的单词的数组,因此您需要读取当前目录的内容并将其保存到数组中。
示例:

#!/usr/bin/perl

use Term::Complete;
use File::Find qw(finddepth);

finddepth(sub {
return if ($_ eq '.' || $_ eq '..');
push @files, $File::Find::name;
}, '/');
$input = Complete('File: ', \@files);

关于linux - 如何通过 perl 脚本以交互方式访问 Linux 子目录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28085099/

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