Формат данных, возвращаемых командой FTP LIST? - PullRequest
8 голосов
/ 30 декабря 2010

Я нахожусь в процессе написания FTP-сервера, но меня немного смущает вопрос, в каком формате отправлять список файлов.

Используя 2 терминала и клиент FTP, я смог запустить простой обмен FTP. Однако я не был уверен, в каком формате отправлять списки файлов.

Есть какой-нибудь принятый формат? Какие столбцы я должен использовать?

Ответы [ 3 ]

3 голосов
/ 30 декабря 2010

Стандарт не определяет формат списка каталогов, отправленного / полученного с помощью команды LIST. Большинство серверов используют формат списка Unix (не знаю, определен ли он в каком-либо документе, но его довольно просто генерировать и анализировать), некоторые используют формат DOS / Windows. Другие форматы (более 400, насколько я знаю) используются во всем мире, но де-факто Unix стал стандартом.

Теперь есть важная вещь для реализации: команды расширения MLST и LMSD, определенные в RFC 3659 . Они определяют способ создания и получения машиночитаемого списка, что очень приветствуется на любом современном FTP-сервере.

3 голосов
/ 30 декабря 2010

Вот что говорит RFC :

Передача данных осуществляется через соединение для передачи данных типа ASCII или типа EBCDIC.(Пользователь должен убедиться, что ТИП соответствует ASCII или EBCDIC).Поскольку информация о файле может сильно различаться в зависимости от системы, эта информация может быть трудно автоматически использоваться в программе, но может быть весьма полезна для пользователя.

Итак, результат not , как ожидается, будет автоматически проанализирован.

0 голосов
/ 30 сентября 2016

RFC там плохой, но есть несколько хороших ссылок:

https://files.stairways.com/other/ftp-list-specs-info.txt

http://cr.yp.to/ftp/list/binls.html

...