Титульная страница
ISO 9000 ISO 14000 Forum
Титульная страница
Цель системы качества
Управление качеством
ISO
ISO 9000
ISO 13485
ISO 14000
ISO 17025
OHSAS 18001
ISO 19011
Total Quality Management
Project Management
Фармацевтика
Отраслевые стандарты
Информационные технологии
Оформление документации
Ссылки 
Поиск на сайте
Forum
Реклама на сайте





Доступ к каталогам.

Доступ к каталогам.

Пример:
chdir("/etc") || die "cannot cd to /etc ($!)";
print "where do you want to go? ";
chomp($where = <STDIN>);
if(chdir $where) {
	# OK
} else {
	# NOT
}

Развертывание.

Преобразование аргументов вроде * или /etc/host* - в список имен файлов называется развертыванием (globbing). В PERL подлежащий развертыванию образец заключается в угловые скобки или используется функция glob().
@a = </etc/host*>
@a = glob("/etc/host*");
В списочном контексте результатом является список, в скалярном - следущее совпадаущее имя.
while(defined($nextname = </etc/host*>)) {
	print "one of the files is $nextname\n";
}
В аргументе glob производится интерполяция:
if(-d "/usr/etc") {
	$where = "/usr/etc";
} else {
	$where = "/etc";
}
@files = <$where/*>

Открытие и закрытие дескриптора каталога.

opendir(ETC, "/etc") || die "cannot opendir /etc:$!";

closedir(ETC);

Чтение дескриптора каталога.

Используется вызов readdir, который возвращает следующее имя файла или undef
opendir(ETC, "/etc") || die "cannot opendir /etc:$!";
while(defined($name = readdir(ETC))) {
	print "$name\n";
}
closedir(ETC);
Или в отсортированном порядке
opendir(ETC, "/etc") || die "cannot opendir /etc:$!";
foreach $name (sort readdir(ETC)) {
	print "$name\n";
}
closedir(ETC);
Rambler's Top100
Hosted by uCoz