Есть ли способ скопировать файл через telnet? - PullRequest
0 голосов
/ 21 июня 2011

желательно с использованием python или shell.не должен использовать программу telnet, но должен использовать протокол, так как в моем случае это самый простой способ (для передачи файлов не нужно устанавливать что-либо на «сервере»)

Обратите внимание, что это не связано напрямую с внешним миром, и безопасность не имеет большого значения.

Ответы [ 2 ]

4 голосов
/ 21 июня 2011

Если вы можете использовать протокол telnet, то единственный способ, который я могу предложить, - это использовать uuencode на стороне источника для вывода файла в виде обычного текста на стандартный вывод.

Затем попроситеэмулятор терминала захватывает вывод в файл и использует uudecode на локальном ящике для его декодирования.

Преимущество этого состоит в том, что uudecode хорошо используется для удаления взлома со стороны зашифрованных документов.

Стенограмма:

pax$ cat qq.c | uuencode qq.c
begin 644 qq.c
m(venxvqux&x@/x-tx&ex+f@^xb-i;f-l=xxe(xqt:xue+f@^xfen=x!mxxen
m*xd@>ph@(xx@:xyt(&d[xbx@(x!t:xuexwx@>xl*(xx@(xxr.ph@(xx@xf]r
m(xai(xt@,xl@:xx\(x$p,xxp,xxp.r!i*rlixbx@(xx@(xx@>xx](&=e=&xa
h=&x@*x(r,x$q,xxq,x$p,c@p,x(i.ph@(xx@<fxt=x)n(xx[xgt*x@xx
x
end

pax$ ( echo carp ; cat qq.c | uuencode newqq.c ; echo more carp ) | uudecode

pax$ diff qq.c newqq.c

pax$ _

Вы можете видеть, что файл успешно извлечен даже с присутствием определенного типа рыбы (я не хотелрискните кого-нибудь обидеть) в потоке вывода - uudecode безопасно игнорирует это, так как это не относится к файлу.

0 голосов
/ 21 июня 2011

Как насчет использования scp?

scp someuser@somehost.somedomain.com:/path/to/file :.
...