Perl-디렉토리

다음은 디렉토리로 재생하는 데 사용되는 표준 기능입니다.

opendir DIRHANDLE, EXPR  # To open a directory
readdir DIRHANDLE        # To read a directory
rewinddir DIRHANDLE      # Positioning pointer to the begining
telldir DIRHANDLE        # Returns current position of the dir
seekdir DIRHANDLE, POS   # Pointing pointer to POS inside dir
closedir DIRHANDLE       # Closing a directory.

모든 파일 표시

특정 디렉토리에서 사용 가능한 모든 파일을 나열하는 방법에는 여러 가지가 있습니다. 먼저 다음을 사용하여 모든 파일을 가져오고 나열하는 간단한 방법을 사용하겠습니다.glob 연산자-

#!/usr/bin/perl

# Display all the files in /tmp directory.
$dir = "/tmp/*";
my @files = glob( $dir );

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

# Display all the C source files in /tmp directory.
$dir = "/tmp/*.c";
@files = glob( $dir );

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

# Display all the hidden files.
$dir = "/tmp/.*";
@files = glob( $dir );
foreach (@files ) {
   print $_ . "\n";
}

# Display all the files from /tmp and /home directories.
$dir = "/tmp/* /home/*";
@files = glob( $dir );

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

다음은 디렉토리를 열고이 디렉토리에서 사용할 수있는 모든 파일을 나열하는 또 다른 예입니다.

#!/usr/bin/perl

opendir (DIR, '.') or die "Couldn't open directory, $!";
while ($file = readdir DIR) {
   print "$file\n";
}
closedir DIR;

사용할 수있는 C 소스 파일 목록을 인쇄하는 또 다른 예는 다음과 같습니다.

#!/usr/bin/perl

opendir(DIR, '.') or die "Couldn't open directory, $!";
foreach (sort grep(/^.*\.c$/,readdir(DIR))) {
   print "$_\n";
}
closedir DIR;

새 디렉토리 생성

당신이 사용할 수있는 mkdir새 디렉토리를 만드는 기능. 디렉토리를 생성하려면 필요한 권한이 있어야합니다.

#!/usr/bin/perl

$dir = "/tmp/perl";

# This creates perl directory in /tmp directory.
mkdir( $dir ) or die "Couldn't create $dir directory, $!";
print "Directory created successfully\n";

디렉토리 제거

당신이 사용할 수있는 rmdir디렉토리를 제거하는 기능. 디렉토리를 제거하려면 필요한 권한이 있어야합니다. 또한이 디렉터리를 제거하기 전에 비어 있어야합니다.

#!/usr/bin/perl

$dir = "/tmp/perl";

# This removes perl directory from /tmp directory.
rmdir( $dir ) or die "Couldn't remove $dir directory, $!";
print "Directory removed successfully\n";

디렉토리 변경

당신이 사용할 수있는 chdir디렉토리를 변경하고 새 위치로 이동하는 기능. 디렉토리를 변경하고 새 디렉토리로 이동하려면 필요한 권한이 있어야합니다.

#!/usr/bin/perl

$dir = "/home";

# This changes perl directory  and moves you inside /home directory.
chdir( $dir ) or die "Couldn't go inside $dir directory, $!";
print "Your new location is $dir\n";