| Поле | Описание |
|---|---|
| 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";
}
}
| Следующая страница | Содержание главы |
Нет комментариев. Оставить комментарий: |