Команда ftp nlst запускается в Python, но не в командной строке WindowsPython

Программы на Python
Anonymous
Команда ftp nlst запускается в Python, но не в командной строке Windows

Сообщение Anonymous »

Я предоставил API через Python, который подключается к моему ftp-серверу через ftplib:

Код: Выделить всё

from ftplib import FTP

@app.route('/api/ftp/list', methods=['GET'])
def ftp_list():
remote_dir = request.args.get('remote_dir', '/')

try:
ftp = ftp_connect()
#ftp.cwd(remote_dir)
files = ftp.nlst()
ftp.quit()
return jsonify({'files': files}), 200
except Exception as e:
return jsonify({'error': str(e)}), 500
Он успешно извлекает список файлов с помощью метода NLST.
Когда я подключаюсь к своему ftp-серверу через командную строку Windows, я не могу запустите метод NLST:

Код: Выделить всё

ftp> dir
200 'PORT' OK.
125 Data connection already open; starting 'BINARY' transfer.
-rw------- 1 tester users         95 Sep 19 20:34 testfile.txt
226 Transfer complete.
ftp: 67 bytes received in 0.00Seconds 67000.00Kbytes/sec.
ftp> nlst
Invalid command.
ftp>
  • Потому что ftplib и командная строка Windows — это, по сути, два разных ftp-клиента, в которых реализованы разные методы?
  • Если вышесказанное верно, что будет эквивалентом nlst в командной строке Windows?


Подробнее здесь: https://stackoverflow.com/questions/790 ... mmand-line

Вернуться в «Python»