Как вы можете загрузить файл / zip из командной строки с помощью putty?

Я пытаюсь написать пакетный скрипт (CMD @ Windows XP Pro), который будет автоматически загружать и распаковывать пакеты с помощью 7zip и putty / psftp

Если у меня есть URL-адрес пакета для загрузки, http://somesite.org/packages/package.zip как мне загрузить его в командной строке с помощью шпатлевки?

Также, если у вас есть лучший способ сделать это, это тоже будет полезно.


person qodeninja    schedule 23.10.2009    source источник


Ответы (6)


wget, конечно, очевидное решение, но я также предлагаю взглянуть на cURL. Со своего веб-сайта:

curl - это инструмент командной строки для передачи файлов с синтаксисом URL, поддерживающий FTP, FTPS, HTTP, HTTPS, SCP, SFTP, TFTP, TELNET, DICT, LDAP, LDAPS и FILE. curl поддерживает сертификаты SSL, HTTP POST, HTTP PUT, загрузку по FTP, загрузку на основе формы HTTP, прокси, файлы cookie, аутентификацию пользователя + пароль (базовая, дайджест, NTLM, согласование, керберос ...), возобновление передачи файлов, туннелирование прокси и куча других полезных трюков.

Конечно, бесплатный и с открытым исходным кодом, и, несмотря на огромный список поддерживаемых протоколов, его так же просто использовать, как и wget, поэтому используйте ваш пример

curl -O http://somesite.org/packages/package.zip 

загружает package.zip в локальный файл с тем же именем

curl -o myname.zip http://somesite.org/packages/package.zip 

загружает package.zip как myname.zip

curl http://somesite.org/packages/package.zip > package.zip 

перенаправляет стандартный вывод curl на package.zip

РЕДАКТИРОВАТЬ - пример исправлен, спасибо @PrabhakarKasi

person fvu    schedule 23.10.2009
comment
+1 за локон. Те из нас, кто использует linux / unix, часто склонны использовать то, что мы знаем, но это не всегда означает, что это лучшее решение для сред Windows. - person Stefan Kendall; 24.10.2009
comment
@Stefan cURL существует и под Linux / Unix, на самом деле я начал использовать его под HP / UX, чтобы решить некоторые сложные проблемы с обменом ftp через shellscript. Впоследствии я обнаружил, что он существует и для Windows :-) - person fvu; 24.10.2009

Win32 версия wget:

http://pages.interlog.com/~tcharron/wgetwin.html

person Stefan Kendall    schedule 23.10.2009

Putty на самом деле не является инструментом для загрузки. Если вы не хотите что-то скачивать через SCP / SFTP. Так что да, wget здесь более полезен.

person Joey    schedule 23.10.2009

Не знаю, как шпатлевать, но точно умеет wget. Если вы работаете в Windows, вы можете получить его с помощью cygwin или просто погуглить версию win32.

person Codism    schedule 23.10.2009

pscp.exe -pw yourpassword [email protected]: /packages/package.zip. \

Путь к /packages/package.zip должен соответствовать пути к общедоступным веб-файлам на сервере. Так, например, на каком-то старом сервере apache это может быть:

pscp.exe -pw yourpassword [email protected]: /users/httpd/vhosts/default/packages/package.zip. \

person Clay Fowler    schedule 23.10.2009

Используйте pscp, который поставляется с PuTTY:

pscp user@host:/path/to/file.7z .
7z e file.7z

Если вы настроите это с помощью ключей SSH, pscp не будет запрашивать пароль.

person Warren Young    schedule 23.10.2009