Dir (Lua)
Версия от 10:25, 28 августа 2019; Tatikoma (обсуждение | вклад)
Содержание
Описание
dir - команда вывода дерева каталогов. Возвращает дерево в указанный массив, с разбивкой по столбцам. Имя файла можно не указывать. При указании в качестве параметров только имени массива, возвращает текущий каталог.
Поддерживается поиск файлов по маске.
Синтаксис
Привязка к окну: Нет.
Работа со свернутым окном: Да.
resultarray, count = dir ([Path, [Filemask]] [, norecursion])
Где:
resultarray - массив, в который будет записан результат.
count - количество найденных элементов.
Возвращает по столбцам: 1) Полный корректный адрес с "\", именем файла, расширением. 2) Адрес. Полный адрес слепленный в нормальную строку с "\". 3) Имя файла без расширения. 4) Расширение файла. 5) Размер. 6) Атрибуты. 7) Дата. 8) Время. 9) Уровень вложенности для пункта 10. 10) Путь с разбивкой 1 папка 1 столбец (для вложенных папок и файлов)
Path - необязательный параметр. Путь к директории.
Filemask - необязательный параметр. Расширение для поиска по маске. Регистронезависимо:
*.ini;*.wav - соответствует любым файлам с расширениями 'ini' или 'wav' *.*|*.exe - соответствует любым файлам, кроме файлов с расширением 'EXE' *.mp3;*.wav|?.*;??.* - соответствует любым файлам с расширениями 'mp3' и 'wav', за исключением файлов у которых имя состоит из одного или двух символов.
Примеры
--lua log "clear" log "mode compact" local path = [[C:\Windows\media]] -- путь к папке local resultarray, count = dir (path) -- получить список всех файлов, включая файлы в подпапках log ("Найдено файлов: " .. count) if count then -- если файлы найдены for i=1, #resultarray do log (resultarray[i][1]) -- показать в логе список end end
--lua log "clear" log "mode compact" local path = [[C:\Windows\media]] -- путь к папке local resultarray, count = dir (path, "*.wav", "norecursion") -- получить список всех файлов в формате 'wav', не включая файлы в подпапках log ("Найдено файлов: " .. count) if count then -- если файлы найдены for i=1, #resultarray do log (resultarray[i][1]) -- показать в логе список end end
--lua log "clear" log "mode compact" local path = [[C:\Windows\media]] -- путь к папке local resultarray, count = dir (path, "*.wav") -- получить список всех файлов в формате 'wav', включая файлы в подпапках log ("Найдено файлов: " .. count) if count then -- если файлы найдены for i=1, #resultarray do log (resultarray[i][1]) -- показать в логе список end end
Смотрите также
Dircreate (Lua)
Dirremove (Lua)
Filecopy (Lua)
Filedelete (Lua)
Filerename (Lua)