Функциональный блок FS_STAT

Функциональный блок FS_STAT возвращает статус пути файловой системы.

Файловая система должна быть предварительно инициализирована с помощью FS_INIT. Все операции выполняются асинхронно для каждого созданного носителя.

Вход GET

При положительном фронте определяется статус указанного пути.

Вход DEV

Определяет устройство, с которого следует получить доступ к файлам. Устройство используется в проекте и может быть управляемо в контекстном меню под Проект Внешнее хранилище.

Вход PATH

Указывает путь к файлу или каталогу на носителе. Путь соответствует пути файла Unix в формате UTF-8, если он поддерживается. Путь представлен следующим образом:

Папка/Подпапка/Файл.txt

Вход LINK

Указывает, следует ли за ссылкой и оценивать цель.

Выход DONE

Выход возвращает импульс при успехе, чтобы выполнить следующую операцию. Импульс происходит по завершении операции, даже если произошла ошибка.

Выход DEVID

Возвращает номер устройства, если он мог быть определен.

Выход INODE

Возвращает номер inode.

Выход MODE

Возвращает режим доступа. Режим возвращает значение TYPE и PERM в виде восьмеричного числа. При этом последние три цифры соответствуют разрешениям.

Выход TYPE

Выход может принимать следующие значения:

Значение Описание
"link" Символическая ссылка
"file" Файл
"block" Блок
"dir" Каталог
"fifo" FIFO
"0##" Другой тип

Выход PERM

Разрешение файла в формате UNIX. Например, "0644".

Выход NLINK

Возвращает количество ссылок.

Выход UID

Возвращает идентификатор пользователя.

Выход GID

Возвращает идентификатор группы.

Выход RDEV

Возвращает тип устройства, если это устройство inode.

Выход SIZE

Возвращает размер файла в байтах.

Выход ATIME

Возвращает временную метку в формате DT# последнего доступа. Если значение отсутствует, возвращается 0, или -1, если протокол не поддерживает это значение.

Выход MTIME

Возвращает временную метку в формате DT# последнего изменения. Если значение отсутствует, возвращается 0, или -1, если протокол не поддерживает это значение.

Выход CTIME

Возвращает временную метку в формате DT# последнего изменения inode. Если значение отсутствует, возвращается 0, или -1, если протокол не поддерживает это значение.

Выход BLKSIZE

Возвращает размер блока файловой системы. Если значение отсутствует, возвращается 0, или -1, если протокол не поддерживает это значение.

Выход BLOCKS

Возвращает количество используемых блоков файловой системы. Если значение отсутствует, возвращается 0, или -1, если протокол не поддерживает это значение.

Выход ERROR

В случае ошибки возвращает текст с сообщением об ошибке. Он равен FALSE, если ошибка не возникла. Состояние сохраняется для последующего использования.

Возможные причины:

  • Сервис носителя не был запущен.
  • Хранилище не было инициализировано.
  • Данные для входа недействительны.
  • Удаленный сервер недоступен.
  • Носитель не существует.
  • Указанный путь недействителен.