El mejor tutorial de las operaciones de directorio Perl en 2024. En este tutorial podrás aprender Mostrar todos los archivos,Crear un nuevo directorio,eliminar el directorio,Cambie el directorio,

las operaciones de directorio Perl

A continuación se enumeran algunas de directorio de operación de la función estándar:

opendir DIRHANDLE, EXPR  # 打开目录
readdir DIRHANDLE        # 读取目录
rewinddir DIRHANDLE      # 定位指针到开头
telldir DIRHANDLE        # 返回目录的当前位置
seekdir DIRHANDLE, POS   # 定位指定到目录的 POS 位置
closedir DIRHANDLE       # 关闭目录

Mostrar todos los archivos

Todos los archivos se muestran directorio, el ejemplo siguiente se utiliza el operador pegote para demostrar lo siguiente:

#!/usr/bin/perl

# 显示 /tmp 目录下的所有文件
$dir = "/tmp/*";
my @files = glob( $dir );

foreach (@files ){
   print $_ . "\n";
}

# 显示 /tmp 目录下所有以 .c 结尾的文件
$dir = "/tmp/*.c";
@files = glob( $dir );

foreach (@files ){
   print $_ . "\n";
}

# 显示所有隐藏文件
$dir = "/tmp/.*";
@files = glob( $dir );
foreach (@files ){
   print $_ . "\n";
}

# 显示 /tmp 和 /home 目录下的所有文件
$dir = "/tmp/* /home/*";
@files = glob( $dir );

foreach (@files ){
   print $_ . "\n";
}

Los siguientes ejemplos pueden listar todos los archivos en el directorio actual:

#!/usr/bin/perl

opendir (DIR, '.') or die "无法打开目录, $!";
while ($file = readdir DIR) {
  print "$file\n";
}
closedir DIR;

Si desea mostrar todos los archivos con la extensión .c del directorio / tmp, utilice el siguiente código:

#!/usr/bin/perl

opendir(DIR, '.') or die "无法打开目录, $!";
foreach (sort grep(/^.*\.c$/,readdir(DIR))){
   print "$_\n";
}
closedir DIR;

Crear un nuevo directorio

Podemos utilizar la funciónmkdir para crear un nuevo directorio, lo que necesita para llevar a cabo antes de tener permisos suficientes para crear el directorio:

#!/usr/bin/perl

$dir = "/tmp/perl";

# 在 /tmp 目录下创建 perl 目录
mkdir( $dir ) or die "无法创建 $dir 目录, $!";
print "目录创建成功\n";

eliminar el directorio

Podemos utilizar la funciónrmdir para borrar un directorio, realice la operación requiere permisos suficientes.También desea eliminar el directorio debe vaciar el directorio:

#!/usr/bin/perl

$dir = "/tmp/perl";

# 删除 /tmp 目录下的 perl 目录
rmdir( $dir ) or die "无法删除 $dir 目录, $!";
print "目录删除成功\n";

Cambie el directorio

Podemos utilizar la funciónchdir para cambiar el directorio actual, realice la operación requiere permisos suficientes.Ejemplos son los siguientes:

#!/usr/bin/perl

$dir = "/home";

# 将当期目录移动到 /home 目录下
chdir( $dir ) or die "无法切换目录到 $dir , $!";
print "你现在所在的目录为 $dir\n";

El programa anterior, la salida es:

你现在所在的目录为 /home
las operaciones de directorio Perl
10/30