Directories का उपयोग
opendir, readdir, और mkdir आपको folders बनाने और list करने देते हैं।
In this page:
Directories
mkdir एक directory बनाता है और rmdir एक empty वाली remove करता है। opendir एक directory handle देता है, और readdir इसकी entries return करता है, special names . और .. समेत जिन्हें आप आमतौर पर skip करते हैं। readdir results का order defined नहीं है, इसलिए predictable output के लिए इन्हें sort करें।
Note:
glob function, जैसे glob("*.txt"), एक directory handle खोले बिना matching file names return करता है।
उदाहरण: Directories
use strict;
use warnings;
my $dir = "demo_dir";
mkdir $dir or die "Cannot mkdir: $!" unless -d $dir;
for my $name (qw(b.txt a.txt c.log)) {
open(my $fh, '>', "$dir/$name") or die "Cannot create $name: $!";
print $fh "x\n";
close $fh;
}
opendir(my $dh, $dir) or die "Cannot open dir: $!";
my @entries = sort grep { $_ ne '.' && $_ ne '..' } readdir($dh);
closedir $dh;
print "entries: @entries\n";
my @txt = map { s{^\Q$dir\E/}{}r } sort glob("$dir/*.txt");
print "txt files: @txt\n";
unlink glob("$dir/*");
rmdir $dir or die "Cannot rmdir: $!";
print "directory removed: ", (-d $dir ? "no" : "yes"), "\n";
# Output:
# entries: a.txt b.txt c.log
# txt files: a.txt b.txt
# directory removed: yes
Login to try C/C++/Java/PHP code in the editor
आम गलतियां
- यह भूल जाना कि readdir . और .. भी return करता है
- यह मान लेना कि readdir sorted order में names return करता है
- एक directory पर rmdir करने की कोशिश करना जो empty नहीं है
चैप्टर सारांश
- mkdir और rmdir directories बनाते और remove करते हैं
- opendir और readdir entries list करते हैं
- . और .. skip करें
- stable order के लिए names sort करें
🔒
Chapter Quiz — Complete all 7 topics to unlock
0/7 topics done
Complete these topics first: