Server for Information Technologies ������ ��������������
������� �������������� ����������
(095) 932-9212, 932-9213, 939-0783
E-mail: [email protected]
������ �������� ����(!) ������������� ���������� CIT Forum CD-ROM

STAT(2)

��������
stat, fstat - ��������� ������� �����

���������

        #include <sys/types.h>
        #include <sys/stat.h>
        
        int stat (path, buf)
        char *path;
        struct stat *buf;
        
        int fstat (fildes, buf)
        int fildes;
        struct stat *buf;

��������
�������� path ��������� �� ���������� ��� �����. �� ��������� ������� ���� ������� �� ������, ������ � ���������� ��������� �����, �� ��� ��������, ������������� ����� ������ ����� � ���������� �����, ������ ���� �������� �� �����. ��������� ����� stat ������������� ���������� � ������������� �����.

��������� ����� fstat ������������� ���������� �� �������� �����, ���������� � ������� ����������� ����� fildes, ������� ������������ ������� ������������ ���������� �������� open, creat, dup, fcntl ��� pipe.

�������� buf �������� ���������� �� �������� ���� stat, � ������� ���������� ���������� � �����.

���������, �� ������� ��������� buf, �������� ��������� ����:

        ushort st_mode;  /* ����� ����� [��. mknod(2)] */
        ino_t  st_ino;   /* ����� ��������� ����� */
        dev_t  st_dev;   /* �����. ����������, �����������
                            ������� � ������ � ���� ���� */
        dev_t  st_rdev;  /* �����.  ����������. ���� ����������
                            ������ ��� ����������� ���������� �
                            ������� ������ */
        short  st_nlink; /* ���������� ������ */
        ushort st_uid;   /* �����. ��������� ����� */
        ushort st_gid;   /* �����. ������ ��������� ����� */
        off_t  st_size;  /* ������ ����� � ������ */
        time_t st_atime; /* ����� ���������� ������� � ����� */
        time_t st_mtime; /* ����� ��������� ������ � ���� */
        time_t st_ctime; /* �����  ���������� ��������� �������
                            ����� */
               /* ����� ���������� � �������� �� 00:00:00
                  1 ������ 1970�. �� �������� */
st_mode
����� ����� �������� �����������, ������� ��� �������� ���������� ������ mknod(2).
st_ino
��� ���� ���������� ���������� ���� � ������ �������� �������. ���� (st_ino, st_dev) ���������� ���������� ������� �����.
st_dev
��� ���� ���������� ���������� �������� �������, ���������� ����. �������� ���� ����� �������������� � �������� �������� ��������� ���������� ������ ustat(2) ��� ��������� �������������� ���������� �� ���� �������� �������. �������� ������� ������ ��� ���� �� �����.
st_rdev
��� ���� ������� ������������ ������ ��� ������ ��������������. ��� ����� ����� ���� ��� ����������� ������� � ���������� ������ � ������ � ��� �������, ��� ���� ��� ���������������.
st_nlink
��� ���� ������� ������������ ������ ��� ������ ��������������.
st_uid
������������� ��������� �����.
st_gid
������������� ������ ��������� �����.
st_size
��� ������� ������ ��� ����� ����� �����. ��� ������� ��� ������� ���������� ������ � �����. ��� ����������� ������� � ���������� ������ �������� ���� �� ����������.
st_atime
����� ���������� ������� � ������. ��� ���� ���������� ���������� ���������� ��������: creat(2), mknod(2), pipe(2), utime(2)read(2).
st_mtime
����� ��������� ����������� ������. ��� ���� ���������� ���������� ���������� ��������: creat(2), mknod(2), pipe(2), utime(2)write(2).
st_ctime
����� ���������� ��������� ������� �����. ��� ���� ���������� ���������� ���������� ��������: chmod(2), chown(2), creat(2), link(2), mknod(2), pipe(2), unlink(2), utime(2)write(2).

��������� ����� stat ����������� ��������, ���� ��������� ���� �� ���� �� ��������� �������:

[ENOTDIR]
��������� �������� �� �������� ���������.
[ENOENT]
�������� ���� �� ����������.
[EACCES]
��� ����� �� ����� ��� ���������� ��������.
[EFAULT]
��������� buf ��� path ��������� �� ������� ����������� �������� ��������� ������������.
[EINTR]
�� ����� ���������� ���������� ������ ���������� ������.
[ENOLINK]
���������� ��� path ��������� �� ��������� ���������, ����� � ������� � ������ ������ ���.
[EMULTIHOP] ���������� path ������� ������������� ��������� � ��������� �����������.

��������� ����� fstat ����������� ��������, ���� ��������� ���� �� ���� �� ��������� �������:

[EBADF]
�������� fildes �� �������� ���������� ������������ ��������� �����.
[EFAULT]
��������� buf ��� path ��������� �� ������� ����������� �������� ��������� ������������.
[ENOLINK]
���������� ����� fildes ��������� �� ��������� ���������, ����� � ������� � ������ ������ ���.

��. �����
chmod(2), chown(2), creat(2), link(2), mknod(2), pipe(2), read(2), time(2), unlink(2), utime(2), write(2).

�����������
��� �������� ���������� ��������� ����� 0; � ������ ������ ������������ -1, � ���������� errno ������������� ��� ������.
Comments: [email protected]
Designed by Andrey Novikov
Copyright © CIT