@가 포함 된 비밀번호를 사용하여 ftp 용 wget


15

커맨드 라인에서 내 ftp 서버에서 일부 파일을 가져 오려고합니다. wget을 사용하여 전체 폴더를 한 번에 다운로드하고 있습니다. 명령은 다음과 같습니다.

wget -m ftp://username:password@ftp.hostname.com:/path/to/folder

그러나 문제는 내 비밀번호에 '@'기호가 포함되어 있다는 것입니다. 따라서 명령은

wget -m ftp://username:foo@bar@ftp.hostname.com:/.. 

이로 인해 wget은 bar@ftp.hostname.com을 호스트로 다시 이동 시키려고 시도합니다. 도와주세요!

답변:


30

user:pass@hostname구문 대신 스위치를 사용하십시오. 보낸 사람 wget --help:

--ftp-user=USER         set ftp user to USER.
--ftp-password=PASS     set ftp password to PASS.

예:

wget -m --ftp-user=username --ftp-password=foo@bar ftp://ftp.hostname.com/file

7

사용자 이름 및 / 또는 비밀번호를 URL 인코딩 할 수도 있습니다. 그만큼@상징이된다%40

예를 들면 다음과 같습니다.

wget -m ftp://username:foo@bar@ftp.hostname.com:/.. 

로 쓸 수 있습니다

wget -m ftp://username:foo%40bar@ftp.hostname.com:/.. 

나는이 질문이 오래 전에 해결되었다는 것을 알고 있지만 내 눈앞에서 이것을 보았고 해결책을 던질 것이라고 생각했다. 이것은 URI를 사용하거나 지원하는 모든 것과 작동해야하기 때문에 실제로 유용하다 FileZilla 또는 웹 브라우저)


당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.