wget for ftp menggunakan kata sandi yang berisi @


14

Saya mencoba untuk mendapatkan beberapa file dari server ftp saya dari baris perintah. Saya menggunakan wget untuk mengunduh seluruh folder sekaligus. Perintahnya adalah:

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

Tetapi masalahnya adalah, kata sandi saya mengandung simbol '@'. Karena itu Perintah itu menjadi

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

karena itu, wget mencoba untuk mengganti bar@ftp.hostname.com sebagai tuan rumah, yang tidak dapat dilakukan. Tolong bantu!

Jawaban:


29

Alih-alih user:pass@hostnamesintaks, gunakan sakelar. Dari wget --help:

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

Contoh:

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

7

Anda juga dapat menyandikan URL nama pengguna dan / atau kata sandi. The @simbol menjadi%40

Sebagai contoh:

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

dapat ditulis sebagai

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

Saya menyadari pertanyaan ini telah dipecahkan sejak lama, tetapi saya melihat ini di sudut mata saya dan berpikir saya akan memberikan solusi (ini sebenarnya berguna, karena itu harus bekerja dengan apa pun yang menggunakan atau mendukung menggunakan URI, seperti FileZilla atau browser web.)


Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.