使用perl重命名多个文件夹

使用perl重命名多个文件夹,perl,perl-module,file-handling,Perl,Perl Module,File Handling,我有一个文本文件file.txt,它逐行包含100个单词。 我需要在file.txt中为这些单词创建100个目录。 每个目录名应与一行中的每个单词匹配。 我需要使用perl为上述查询创建代码 我做了如下尝试: system("mkdir $_") for qw(tuber sp smeg para); 一般来说,您不应该使用system在Perl中执行基本的文件操作,比如mkdir。Perl为此提供了内置功能。与调用外部可执行文件相比,它们通常速度更快,警告更少 use v5.10; use

我有一个文本文件file.txt,它逐行包含100个单词。 我需要在file.txt中为这些单词创建100个目录。 每个目录名应与一行中的每个单词匹配。 我需要使用perl为上述查询创建代码

我做了如下尝试:

system("mkdir $_") for qw(tuber sp smeg  para);

一般来说,您不应该使用
system
在Perl中执行基本的文件操作,比如mkdir。Perl为此提供了内置功能。与调用外部可执行文件相比,它们通常速度更快,警告更少

use v5.10;
use strict;
use warnings;

# This will make file operations throw exceptions so we don't
# have to write "or die" on everything.
use autodie;

open my $fh, "whatever-your-file-is";
while( my $line = <$fh> ) {
    chomp $line;
    mkdir $line;
}
使用v5.10;
严格使用;
使用警告;
#这将使文件操作抛出异常,因此我们不会
#必须在每件事上写上“或死”。
使用自动模具;
打开我的$fh,“无论你的文件是什么”;
while(我的$line=){
chomp$行;
mkdir$行;
}

如果文件包含像
some/sub/directory
这样的行,您将希望使用
mkpath
from而不是mkdir。

显示您尝试过的整个程序。我尝试了这一行,我不知道如何使用100个字的行尝试使用while循环读取文件,并在循环中调用
mkdir
。如果您对代码有问题(一条错误消息)然后带着一个真正的问题返回到SO。