Поле | Описание |
---|---|
dev | Номер устройства в файловой системе |
ino | Номер индексного дескриптора |
mode | Режим файла (тип и права доступа) |
nlink | Количество жестких ссылок на файл (в отсутствии ссылок равно 1) |
uid | Числовой идентификатор владельца файла |
gid | Числовой идентификатор группы владельца файла |
rdev | Идентификатор устройства (только для специальных файлов) |
size | Размер файла в байтах |
atime | Время последнего обращения к файлу с начала эпохи |
mtime | Время последнего изменения файла с начала эпохи |
ctime | Время изменения индексного дескриптора с начала эпохи |
blksize | Предпочтительный размер блока для операций ввода-вывода |
blocks | Фактическое количество выделенных блоков для размещения файла |
($dev,$ino,$mode,$nlink,$uid,$gid,$rdev,$size,$atime, $mtime,$ctime,$blksize,$blocks) = stat($filename);
$mode = (stat("out.dat"))[2]; printf "Permissions are %04o\n", $mode & 07777:
print ДЕСКРИПТОР sprintf (CTPOКА_ФOPMATOB, СПИСОК);
-X ОПЕРАНД -Х(ОПЕРАНД)
-r | Файл доступен для чтения под текущим uid/gid | -w | Файл доступен для записи под текущим uid/gid |
-x | Файл доступен для выполнения под текущим uid/gid | -o | Текущий uid является владельцем файла |
-R | Файл доступен для чтения реальному uid/gid | -W | Файл доступен для записи реальному uid/gid |
-X | Файл доступен для выполнения реальному uid/gid | -O | Реальный uid является владельцем файла |
-e | Файл существует | -z | Файл имеет нулевой размер |
-s | Файл имеет ненулевой размер (возвращает длину файла) | -f | Это простой файл? |
-l | Это символьная ссылка? | -d | Это каталог? |
-S | Это гнездо? | -p | Это именованный канал (FIFO) |
-c | Это специальный символьно-ориентированный файл? | -b | Это специальный блок-ориентированный файл? |
-u | Установлен бит setuid? | -t | Указатель файла связан с tty |
-k | Установлен бит липучки? | -g | Установлен бит setgid? |
-T | Это текстовый файл? | -B | Это двоичный файл? (противоположность -Т) |
-M | Возраст файла в днях на момент запуска программы | -A | То же, но для времени доступа к файлу |
-C | То же, для времени изменения inode |
foreach $filename (@ARGV) { if( -e($filename) && -T _) { # Обрабатываем текстовые файлы ненулевого размера. print "$filename\n"; } }
Следующая страница | Содержание главы |
Нет комментариев. Оставить комментарий: |