문제

내 호스트는 SSH 및 Linux 명령에 제한된 액세스를 허용합니다. 그러나 나는 사용할 수 없습니다 wget 믿거 나 말거나.

다른 서버에서 파일 (.flv)을 다운로드하기를 바랐습니다. 내가 시도 할 수있는 또 다른 명령이 있습니까?

그렇지 않은 경우 파이썬, Perl 또는 PHP (좋아하는)를 사용하여 파일 다운로드를 달성 할 수 있습니다. 가능합니까?

도움이 되었습니까?

해결책

다음 명령을 사용할 수 있습니다.

curl -O http://www.domain.com/file.flv

다른 팁

echo -ne "GET /path/to/file HTTP/1.0\r\nHost: www.somesite.com\r\n\r\n" | nc www.somesite.com 80 | perl -pe 'BEGIN { while (<>) { last if $_ eq "\r\n"; } }'

세게 때리다 편집 --enable-net-redirections 꽤 강력합니다. (ZSH 비슷한 기능이 있습니다.) 도대체, HTTP 기본 인증도 여기에 던질 것입니다.

물론, 그것은 매우 좋은 HTTP/1.1 클라이언트가 아닙니다. 예를 들어 청크 인코딩을 지원하지 않습니다. 그러나 그것은 실제로 매우 드 rare니다.

read_http() {
    local url host path login port
    url="${1#http://}"
    host="${url%%/*}"
    path="${url#${host}}"
    login="${host%${host#*@}}"
    host="${host#${login}@}"
    port="${host#${host%:*}}"
    host="${host%:${port}}"
    (
        exec 3<>"/dev/tcp/${host}/${port:-80}" || exit $?
        >&3 echo -n "GET ${path:-/} HTTP/1.1"$'\r\n'
        >&3 echo -n "Host: ${host}"$'\r\n'
        [[ -n ${login} ]] &&
        >&3 echo -n "Authorization: Basic $(uuencode <<<"${login}")"$'\r\n'
        >&3 echo -n $'\r\n'
        while read line <&3; do
            line="${line%$'\r'}"
            echo "${line}" >&2
            [[ -z ${line} ]] && break
        done
        dd <&3
    )
}

Otoh, Perl이 있다면 LWP 설치, 이름이 지정된 샘플 바이너리로 배송해야합니다. 가져 오기

lynx -source

curl -C - -O http://www.url.com

파이썬 스크립트 :

#!/usr/bin/env python
import os,sys,urllib
f = open (os.path.basename (sys.argv[1]), 'w')
f.write (urllib.urlopen (sys.argv[1]).read ())
f.close ()

어디 sys.argv[1] 관심있는 URL입니다.

인증 된 호스트에서 파일을 다운로드하려는 경우 Access를 사용해보십시오. scp. 그것은 일반적인 사본과 같지만 SSH 터널을 통해 이루어집니다. "Limited SSH"를 허용하는 호스트는 종종 scp.

scp user@myhost.com:folder/file.flv ./

사용자 자격 증명을 제공해야합니다. 보다 scp 선적 서류 비치 자세한 내용은.

비슷한 일을하는 또 다른 도구는 snarf.

SCP를 사용하십시오.

사용법 : SCP [-1246BCPQRV] [-C Cipher] [-f SSH_CONFIG] [-i eventity_file
-l Limit] [-o ssh_option] [-p port] [-s program
[user@] host1 :] file1 ... [[[user@] host2 :] file2

다양한 방법,

  1. 파이썬 - HTTP보다 데이터를 가져 오지 않는 방법

또 다른 가능한 대안입니다 aria2.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top