Является ли формат (P) SFTP стандартом dir/ls?
-
13-09-2020 - |
Вопрос
Я собираю кое-что для загрузки некоторых файлов по SFTP.Я использую шпатлевку psftp.exe
команда.
Когда я делаю dir
/ls
в PSFTP стандартизирован ли формат выходных данных либо SFTP, либо самим PSFTP?Или это просто любой текст в произвольной форме, который сервер отправляет в ответ?
Я спрашиваю, потому что я верю в FTP (давным-давно!), он вообще не был стандартизирован, и у меня здесь есть только один SFTP-сервер для тестирования.
Решение
В отличие от FTP (который использовал текст LIST
вывод), протокол SFTP основан на двоичных структурах, поэтому все форматирование выполняет Putty.В частности, он использует SSH_FXP_READDIR команда для чтения записей каталога, которые возвращаются в формате, указанном ИМЯ SSH_FXP_NAME.
В идеале вы бы использовали API, а не psftp.Но если вы решите разобрать текст, вам придется беспокоиться о PuTTY и только о PuTTY.
Моя ошибка. Новый проект Я посмотрел, нет ли такого текста longname
поле.Однако, более старые версии делать.
Другие советы
Мэтью, местный клиент может выбрать отображение информации на длинное имя прорези от ИМЯ SSH_FXP_NAME ответ вместо того, чтобы генерировать его локально из имя файла и атрибуты игровые автоматы.
Даже если посмотреть на то, как psftp делает это внутренне, вы не можете быть полностью уверены, что его формат не изменится при подключении к другому серверу.