Author Topic: Какой прогой или командой закинуть файл на фтп?  (Read 29452 times)

0 Members and 1 Guest are viewing this topic.

Offline visual

  • Hero Member
  • *****
  • Posts: 714
  • Karma: +0/-0
    • http://
Quote
А если прокси используется?
[snapback]4634[/snapback]
посмотри на wput (это аналог wget, но в обратную сторону). под винды есть портированная версия.

Code: [Select]
Usage: wput [options] [file]... [url]...
  url        ftp://[username[:password]@]hostname[:port][/[path/][file]]

Startup:
  -V, --version         Display the version of wput and exit.
  -h, --help            Print this help-screen

Logging and input file:
  -o,  --output-file=FILE      log messages to FILE
  -a,  --append-output=FILE    append log messages to FILE
  -q,  --quiet                 quiet (no output)
  -v,  --verbose               be verbose
  -d,  --debug                 debug output
  -nv, --less-verbose          be less verbose
  -i,  --input-file=FILE       read the URLs from FILE
  -s,  --sort                  sorts all input URLs by server-ip and path
  -I,  --input-pipe=COMMAND    take the output of COMMAND as data-source
  -R,  --remove-source-files   unlink files upon successful upload

Upload:
       --bind-address=ADDR     bind to ADDR (hostname or IP) on local host
  -t,  --tries=NUMBER          set retry count to NUMBER (-1 means infinite)
  -nc, --dont-continue         do not resume partially-uploaded files
  -u,  --reupload              do not skip already completed files
       --skip-larger           do not upload files if remote size is larger
       --skip-existing         do not upload files that exist remotely
  -N,  --timestamping          don't re-upload files unless newer than remote
  -T,  --timeout=10th-SECONDS  set various timeouts to 10th-SECONDS
  -w,  --wait=10th-SECONDS     wait 10th-SECONDS between uploads. (default: 0)
       --random-wait           wait from 0...2*WAIT secs between uploads.
       --waitretry=SECONDS     wait SECONDS between retries of an upload
  -l,  --limit-rate=RATE       limit upload rate to RATE
  -Y,  --proxy=http/socks/off  set proxy type or turn off
       --proxy-user=NAME       set the proxy-username to NAME
       --proxy-pass=PASS       set the proxy-password to PASS

FTP-Options:
  -p,  --port-mode             no-passive, turn on port mode ftp (def. pasv)
  -A,  --ascii                 force ASCII  mode-transfer
  -B,  --binary                force BINARY mode-transfer
       --relative              only use relative CWDs
  -f,  --peace                 force wput not to be aggressive

Offline demiurg

  • Hero Member
  • *****
  • Posts: 1014
  • Karma: +0/-0
    • http://larin.tomsk.ru
Quote
посмотри на wput (это аналог wget, но в обратную сторону). под винды есть портированная версия.

[snapback]4690[/snapback]

В Томске есть здесь ftp://apollo.chtd.tpu.ru/pub/net/ftp/clients/wput/

Alladar

  • Guest
Спасибо всем за помощь, щас попробую wput использовать  под свои нужды.

Alladar

  • Guest
Народ, если кто юзал wput накидайте плз какой-нибудь элементарный скриптик и консоль вызова. Что-то не могу разобраться  :(

Offline sam

  • Full Member
  • ***
  • Posts: 239
  • Karma: +0/-0
в чем разобраться то не можешь? не заливает?

Alladar

  • Guest
Quote
в чем разобраться то не можешь? не заливает?
[snapback]4705[/snapback]

 Да нет, как консольку написать? вот для ftp: ftp -s:файл-скрипт ......
 
 А для wput какой параметр вызова? Если можешь, накидай. (и сам скрипт примерный, особенно как прокси-сервер правильно указать) Я уж там по аналогии разберусь.

 Например: wput --proxy=myproxy:myport  c:/mydir/myfile.txt ftp://user:pass@ftpservname:21/ftpdir/ftpfile.txt
 
 Верно?
« Last Edit: October 11, 2005, 16:48:42 by Alladar »

Offline sam

  • Full Member
  • ***
  • Posts: 239
  • Karma: +0/-0
Quote

 Верно?
[snapback]4706[/snapback]
скорее всего да, если прокси безпарольный
лучше проверить  :D
а насчет параметра --proxy не уверен, там был выбор из http, socks, off
c другой стороны: где указывать тогда адрес прокси - на сайте и в хелпе ничего про это не сказано
ну еще можно имя файла на фтп не указывать, тогда имя залитого файла останется прежним

Alladar

  • Guest
Quote
скорее всего да, если прокси безпарольный
лучше проверить  :D
а насчет параметра --proxy не уверен, там был выбор из http, socks, off
c другой стороны: где указывать тогда адрес прокси - на сайте и в хелпе ничего про это не сказано
ну еще можно имя файла на фтп не указывать, тогда имя залитого файла останется прежним
[snapback]4709[/snapback]

 Мла, скорее всего он прокси-сервер не поддердивает :(( Тип прокси, логин, пароль есть. а толку.

Offline sam

  • Full Member
  • ***
  • Posts: 239
  • Karma: +0/-0
Quote
Мла, скорее всего он прокси-сервер не поддердивает :(( Тип прокси, логин, пароль есть. а толку.
[snapback]4710[/snapback]
делай в cmd или батнике перед запуском wput
Code: [Select]
set ftp_proxy=http://<адрес прокси>(можно через двоеточие порт указать, по аналогии с фтп)либо бери wput/doc/wputrc из ftp://apollo.chtd.tpu.ru/pub/net/ftp/clie...wput-pre0.6.tgz
вместо --proxy=<адрес прокси> пиши --proxy=http
прочел в USAGE в таре с исходниками
« Last Edit: October 11, 2005, 19:15:27 by sam »

Offline sam

  • Full Member
  • ***
  • Posts: 239
  • Karma: +0/-0
опять цитирование нажал  :)
« Last Edit: October 11, 2005, 19:14:57 by sam »

Alladar

  • Guest

 Большое спасибо, всё заработало :))

 Использовал перед запуском set ...  а в wput --proxy=http я уже пробовал, оно у меня не запахало.. )

Offline stranger

  • Hero Member
  • *****
  • Posts: 922
  • Karma: +0/-0
    • http://
Quote
Большое спасибо, всё заработало :))

 Использовал перед запуском set ...  а в wput --proxy=http я уже пробовал, оно у меня не запахало.. )
[snapback]4715[/snapback]
Дык там вроде еще команда должна было быть, которая грила, что прокси нужно включить.
Покрайней мере под ляликсом в wgetrc было указание на адрес прокси и строка на то, что прокси включен.
[span style='font-family:Geneva'][span style='font-size:8pt;line-height:100%'][span style='color:gray']Единственное условие, от которого зависит успех, есть терпение.   Л.Н.Толстой
[/span][/span][/span]

Alladar

  • Guest
Quote
Дык там вроде еще команда должна было быть, которая грила, что прокси нужно включить.
Покрайней мере под ляликсом в wgetrc было указание на адрес прокси и строка на то, что прокси включен.
[snapback]4719[/snapback]


 Может плохо копался но ничего не обнаружил путём, всё что мог  перепробовал.

Offline sam

  • Full Member
  • ***
  • Posts: 239
  • Karma: +0/-0
Quote
Может плохо копался но ничего не обнаружил путём, всё что мог  перепробовал.
[snapback]4737[/snapback]
Quote
### Proxy

# Wput is able to use socks (v5) as well as http-proxys
# proxy-settings can be overridden/specified by the env-variable ftp_proxy
# e.g. export ftp_proxy=http://user:pass@hostname:port
# or for socks5: export ftp_proxy=user:pass@hostname:port

# proxy = http | socks | off
;proxy = http
;proxy_host = somehost.org
;proxy_port = 3128
# When using http-proxies you can supply a username and password.
# Wput will encode them using the basic-authentication cheme
;proxy_user = username
;proxy_pass = password
# Some socks proxies support listen requests. e.g. they will listen
# for an incoming connection. This is useful for port-mode ftp
# using a proxy. However this is not supported / allowed by every
# proxy and you might want to disable it.
;proxy_bind = on


Alladar

  • Guest
Quote
### Proxy

# Wput is able to use socks (v5) as well as http-proxys
# proxy-settings can be overridden/specified by the env-variable ftp_proxy
# e.g. export ftp_proxy=http://user:pass@hostname:port
# or for socks5: export ftp_proxy=user:pass@hostname:port

# proxy = http | socks | off
;proxy = http
;proxy_host = somehost.org
;proxy_port = 3128
# When using http-proxies you can supply a username and password.
# Wput will encode them using the basic-authentication cheme
;proxy_user = username
;proxy_pass = password
# Some socks proxies support listen requests. e.g. they will listen
# for an incoming connection. This is useful for port-mode ftp
# using a proxy. However this is not supported / allowed by every
# proxy and you might want to disable it.
;proxy_bind = on



 Не хотелось бы показаться глупым, но как эти параметры в ком. строке указываются??
 


 Пользовался:
set ftp_proxy=http://myproxy.serv:3128
wput --reupload --timeout=180 --binary c:/temp/file.txt ftp://log:pass@mysite:21/dir/file.txt
 
 Но возникла проблемма, файл пишется но не полностью, а иногда и вместо текстовых символов ставит пробелы  :angry:
 Вот я и думаю может с настройками чего.. или wput глючит???
 
Нужно чтобы файл выкладываясь на фтп перезаписывался поновой. Вроде всё правильно указал?
« Last Edit: October 28, 2005, 11:35:42 by Alladar »

Offline visual

  • Hero Member
  • *****
  • Posts: 714
  • Karma: +0/-0
    • http://
Quote
Не хотелось бы показаться глупым, но как эти параметры в ком. строке указываются??
какие эти? то что написано в конфиге, пусть в конфиге и лежит. укажи wput-у где искать этот конфиг, и все.
 
Quote
Пользовался:
set ftp_proxy=http://myproxy.serv:3128
wput --reupload --timeout=180 --ascii --binary c:/temp/file.txt ftp://log:pass@mysite:21/dir/file.txt
опции -ascii и --binary взаимоисключающие. используй --binary (хотя это и так по-дефолту).
 
Quote
Но возникла проблемма, файл пишется но не полностью  :angry:
 Вот я и думаю может с настройками чего.. или wput глючит???

логи покажи. лучше оба, от wput и от ftp сервера.

Alladar

  • Guest
Wput, версия pre0.6-w32

 И как ему на конфиг файл указать? Я и с бинари и с аскии делал, по барабану. Случайным образом недописывает файл, а иногда ещё и вместо нужных символов пробелы вставляет.

set ftp_proxy=http://myproxy.serv:3128
wput --debug --reupload --timeout=180 --binary c:/temp/file.txt ftp://user:[email protected]:21/www/file.txt



 Лог WPUT:


[span style=\'font-size:8pt;line-height:100%\']Added file `c:/temp/file.txt' to queue.
Added URL `ftp://user:[email protected]:21/www/file.txt' to queue.
processing queue:
File: `c:/temp/file.txt'
URL : `ftp://user:[email protected]:21/www/file.txt'
IP of `mysite.net' is `21x.29.8x.2xx'
PRE_GUESS: local_file: c:/temp/file.txt
remote_path: www   remote_file: file.txt (420450)
POST_GUESS: local_file: c:/temp/file.txt
remote_path: www   remote_file: file.txt
Searching for skip_entry ftp://user:[email protected]:21/www/
--11:03:32-- `c:/temp/file.txt'
    => ftp://user:[email protected]:21/www/file.txt
starting again
Connecting to 21x.29.8x.2xx:21... Doing proxy connection
c_sock: 78c
initiating timeout connect (180)
Checking whether 1932 is writable... 1 (0:No error)
proxy-connect: 'CONNECT 21x.29.8x.2xx:21 HTTP/1.0

' (IP eb571dd9)
connected[220] 'web.tomsk.net FTP server (Version wu-2.6.2(1) Wed Jan 9 13:13:29 KRAT 2002) ready.'
!
==> AUTH TLS ... ---->AUTH TLS

[530] 'Please login with USER and PASS.'
failed (Please login with USER and PASS.).
Logging in as user ... ---->USER user

[331] 'Password required for user.'
[230] 'User user logged in.  Access restrictions apply.'
Logged in!
previous directory:    target: www
==> CWD www---->CWD www

[250] 'CWD command successful.'

==> SIZE file.txt ... ---->SIZE file.txt

[213] '1027'
done (1027 bytes)
local_fsize: 1383
target_fsize: 1027
resume_table: 1,1,2
==> TYPE I ... ---->TYPE I

[200] 'Type set to I.'
done.
Portmode: 0
==> PASV ... ---->PASV

[227] 'Entering Passive Mode (21x,29,8x,2xx,92,64)'
done.
Remote server data port: 21x.29.8x.2xx:23616
Doing proxy connection
c_sock: 770
initiating timeout connect (180)
Checking whether 1904 is writable... 1 (0:No error)
proxy-connect: 'CONNECT 21x.29.8x.2xx:23616 HTTP/1.0



' (IP eb571dd9)
==> REST 1027 ... ---->REST 1027

[350] 'Restarting at 1027. Send STORE or RETRIEVE to initiate transfer.'
done.
==> STOR file.txt ... ---->STOR file.txt

[150] 'Opening BINARY mode data connection for file.txt.'
done.
Length: 1,383 [356 to go]
       [ skipped 1K ]
    0K ,,Closing socket 4202f0

[226] 'Transfer complete.'
11:03:35 (file.txt) - ` 3.70K/s' [1383]

processing queue:
Connection ended. (4204c0)
Checking whether 1932 is writable... 1 (0:No error)
---->QUIT

# You have transferred 356 bytes in 1 files.
# Total traffic for this session was 965 bytes in 1 transfers.
# Thank you for using the FTP service on web.tomsk.net.
[221] 'Goodbye.'
Closing socket 4204c0
FINISHED --11:03:35--
Transfered 356 bytes in 1 file at 110.0B/s[/span]
« Last Edit: October 28, 2005, 11:18:32 by Alladar »

Offline visual

  • Hero Member
  • *****
  • Posts: 714
  • Karma: +0/-0
    • http://
Quote
Wput, версия pre0.6-w32

 И как ему на конфиг файл указать? Я и с бинари и с аскии делал, по барабану. Случайным образом недописывает файл, а иногда ещё и вместо нужных символов пробелы вставляет.

Попозже лог скину.
[snapback]5076[/snapback]
а исходники ломы почитать? ;)
сделай переменную окружения с именем WPUTRC и присвой ей полный путь к файлу с конфигом. плюс логины и пароли можно не в параметрах wput-а писать, а в файле, путь к которому указан в переменной окружения PASSWORDFILE.

Alladar

  • Guest
Quote
а исходники ломы почитать? ;)
сделай переменную окружения с именем WPUTRC и присвой ей полный путь к файлу с конфигом. плюс логины и пароли можно не в параметрах wput-а писать, а в файле, путь к которому указан в переменной окружения PASSWORDFILE.
[snapback]5079[/snapback]


 Нету у меня исходников, есть только wput и его параметр --help и всё.  
 
 Лог выше находится.

В результе файл был размером: 1383 стал: 1390
В этот раз стёр несколько символов и заменил их пробелами, остальное идентично..

 Смотрю на логи, такое ощущение что он дописывает а не перезаписал.

« Last Edit: October 28, 2005, 11:44:28 by Alladar »

Offline sam

  • Full Member
  • ***
  • Posts: 239
  • Karma: +0/-0
Quote
Нету у меня исходников, есть только wput и его параметр --help и всё. 
 
[snapback]5080[/snapback]
ftp://apollo.chtd.tpu.ru/pub/net/ftp/clie...wput-pre0.6.tgz исходники
c --ascii параметром пробовал? без --binary
« Last Edit: October 29, 2005, 09:50:50 by sam »