Saya mencoba untuk membuat folder menggunakan klien baris perintah ftp, tapi sejauh ini saya hanya bisa menggunakan 'get' untuk mendapatkan file individual.
linux
command-line
ftp
Charles Ma
sumber
sumber
mget
, itu tidak rekursif sama sekali. jawaban dari 22 Sep '08 di 9:01 Thibaut Barrère lebih mudah dimengerti tetapi harus menambahkan opsi-l 0
seperti yang disebutkan dalam komentarJawaban:
Anda bisa mengandalkan wget yang biasanya menangani ftp dengan benar (setidaknya dalam pengalaman saya sendiri). Sebagai contoh:
Anda juga bisa menggunakan
-m
mana yang cocok untuk mirroring. Saat ini setara dengan-r -N -l inf
.Jika Anda memiliki beberapa karakter khusus dalam detail kredensial, Anda dapat menentukan
--user
dan--password
argumen untuk membuatnya berfungsi. Contoh dengan login khusus dengan karakter tertentu:EDIT Seperti yang ditunjukkan oleh @asmaier, perhatikan bahwa meskipun
-r
hanya untuk rekursi, ia memiliki level maksimum 5:Jika Anda tidak ingin kehilangan subdirs, lebih baik menggunakan opsi mirroring,
-m
:sumber
wget -m
(--mirror
).wget -r
terbatas pada kedalaman rekursi 5 secara default.--user
dan--password
juga pada Red Hat. Wget saya adalah:GNU Wget 1.11.4 Red Hat modified
Saya ingin tahu apakah itu versi versi atau distro ...-l 0
, jadi tidak perlu menggunakan--mirror
yang mungkin memiliki beberapa efek samping yang tidak diinginkan seperti .listing fileswget --ask-password -rl 99 ftp://[email protected]
. Dengan cara ini kata sandi tidak terlihat denganps
dan tidak tetap dalam sejarah. Tentu saja, dengan sifat ftp itu dikirim tidak terenkripsi ke server.$
), misalnya--user='user' --password='pa$$word'
Sekadar melengkapi jawaban yang diberikan oleh Thibaut Barrère.
Saya menggunakan
Perhatikan garis miring ganda setelah nama server. Jika Anda tidak melakukan tebasan ekstra, jalurnya relatif ke direktori home pengguna.
-nH
menghindari pembuatan direktori bernama setelah nama server-nc
menghindari membuat file baru jika sudah ada di tujuan (hanya dilewati)--cut-dirs=5
memungkinkan untuk mengambil konten dari direktori / absolute / path / ke / dan untuk meletakkannya di direktori tempat Anda memulai wget. Angka 5 digunakan untuk menyaring 5 komponen jalur. Double slash berarti komponen tambahan.sumber
--ftp-user=USER
dan--ask-password
.sumber
open ftp://USERNAME:PASSWORD@HOST
setelah memulai ncftp ...wget
, dan lebih cepat juga dalam mode TAR. Terima kasih!Jika
lftp
diinstal pada mesin Anda, gunakanmirror dir
. Dan kamu sudah selesai. Lihat komentar oleh Ciro di bawah ini jika Anda ingin mengunduh direktori secara rekursif.sumber
mirror -R dir
apakah pengunggahan / pembaruan direktori rekursifmirror ./
untuk mengunduh semua file dan folder secara rekursif di jalur saat ini.mirror
, untuk direktori saat ini dan subfoldernya.Jika Anda dapat menggunakannya
scp
sebagai gantinyaftp
,-r
opsi akan melakukan ini untuk Anda. Saya akan memeriksa untuk melihat apakah Anda dapat menggunakan mekanisme transfer file yang lebih modern daripada FTP.sumber
scp
masih akan mencoba menggunakan ssh, yang tidak akan berfungsi jika Anda hanya memiliki kredensial FTP. Terasa aneh menanggapi komentar dari 2008 yang mengatakan bahwa teknologi yang saya pakai tidak modern :( Selamat tua 2008, saya berusia 18 tahun saat Anda memposting komentar Anda.Gunakan WGet sebagai gantinya. Ini mendukung protokol HTTP dan FTP.
Semoga berhasil!
referensi: http://linux.about.com/od/commands/l/blcmdl1_wget.htm
sumber
Ada 'ncftp' yang tersedia untuk instalasi di linux. Ini berfungsi pada protokol FTP dan dapat digunakan untuk mengunduh file dan folder secara rekursif. bekerja di linux. Telah digunakan dan berfungsi dengan baik untuk transfer folder / file rekursif.
Periksa tautan ini ... http://www.ncftp.com/
sumber
Jika Anda bisa, saya sangat menyarankan Anda
tar
danbzip
(ataugzip
, apa pun yang mengapung perahu Anda) direktori pada mesin jarak jauh — untuk direktori dengan ukuran signifikan apa pun, penghematan bandwidth mungkin sepadan dengan waktu untuk zip / unzip.sumber
Jika Anda ingin tetap menggunakan FTP baris perintah, Anda harus mencoba NcFTP. Kemudian Anda bisa menggunakan get -R untuk mendapatkan folder secara rekursif. Anda juga akan mendapatkan penyelesaian.
sumber
wget -r ftp://url
Bekerja dengan sempurna untuk Redhat dan Ubuntu
sumber
Anda seharusnya tidak menggunakan
ftp
. Sepertitelnet
tidak menggunakan protokol aman, dan kata sandi dikirimkan dalam teks yang jelas. Ini memudahkan pihak ketiga untuk menangkap nama pengguna dan kata sandi Anda.Untuk menyalin direktori jarak jauh, opsi-opsi ini lebih baik:
rsync
adalah alat yang paling cocok jika Anda dapat masuk melaluissh
, karena hanya menyalin perbedaan, dan dapat dengan mudah restart di tengah jika koneksi terputus.ssh -r
adalah pilihan terbaik kedua untuk menyalin struktur direktori secara rekursif.Lihat:
halaman manual rsync
halaman manual ssh
sumber
beralih prompt dengan perintah PROMPT.
Pemakaian:
sumber