Испытания

Список файлов и директорий

JS: Асинхронное программирование

ls.js

Реализуйте и экспортируйте по умолчанию функцию, которая принимает на вход путь (абсолютный или относительный) и возвращает информацию о файлах и директориях расположенных по этому пути. Данные возвращаются в виде массива объектов, где каждый элемент это информация о конкретном файле: его путь и описание доступов (stat.mode). Объекты в массиве должны быть отсортированы по имени файла.

Примеры

1
2
3
4
5
6
7
8
9
10
11
12
13
14
import ls from '../ls';

await ls('/var');
// [
//   { filepath: '/var/local', mode: 17917 },
//   { filepath: '/var/lock', mode: 17407 },
//   { filepath: '/var/log', mode: 16877 },
// ];

await ls('/etc/passwd');
// [{ filepath: '/etc/passwd', mode: 33188 }];

await ls('../../../../etc/passwd');
// [{ filepath: '/etc/passwd', mode: 33188 }];

Эта функция должна уметь обрабатывать не только директории, но и файлы. В таком случае отдается массив с одним объектом - информацией по текущему файлу.

Подсказки

  • readdir() - чтение директории
  • stat() - информация о файле. isFile() - является ли файлом, mode - описание доступа.
Успешных завершений: 88%

Последние код-ревью

Автор Дата обновления Версий
slava80 11 дек., 15:07 1
quaker 10 дек., 18:26 1
vitslepukhin 07 дек., 19:29 1
bigban 07 дек., 14:47 1
anton_potemkin 20 нояб., 10:26 2