Cara termudah untuk menggandakan direktori melalui FTP

9

Saya ingin menduplikasi direktori pada server FTP tempat saya terhubung dari Mac saya melalui command-line

Katakanlah saya punya file. Saya ingin memiliki files2semua filesubdirektori dan file, dalam direktori yang sama dengan aslinya. Apa cara paling sederhana untuk mencapai ini?

EDIT:

Dengan mgetdan mputAnda dapat mengunduh semua file dan mengunggahnya lagi ke folder yang berbeda, tetapi ini jelas BUKAN apa yang saya inginkan / butuhkan (saya memulai pertanyaan ini mencoba menghindari duplikasi dengan metode unggah unduhan ini dari klien dektop)

Trufa
sumber

Jawaban:

8

Apa yang Anda miliki bukan baris perintah unix, apa yang Anda miliki adalah sesi FTP. FTP dirancang terutama untuk mengunggah dan mengunduh file, ini tidak dirancang untuk manajemen file umum, dan tidak memungkinkan Anda menjalankan perintah sewenang-wenang di server. Secara khusus, sejauh yang saya tahu, tidak ada cara untuk memicu salinan file di server: yang dapat Anda lakukan adalah mengunduh file kemudian mengunggahnya dengan nama yang berbeda.

Beberapa server mendukung ekstensi ke protokol FTP, dan sangat mungkin salah satu dari ekstensi ini memungkinkan Anda menyalin file jarak jauh. Coba help siteatauremotehelp untuk melihat ekstensi apa yang didukung server.

Jika Anda ingin baris perintah unix, Anda memerlukan akses shell jarak jauh, melalui rsh ( r emote sh ell) atau lebih umum di abad ke-21 ssh ( s ecure sh ell). Jika ini adalah host web, periksa apakah menyediakan akses ssh. Jika tidak, hubungi administrator sistem. Tapi jangan kaget jika jawabannya tidak: akses baris perintah akan menjadi pelanggaran keamanan di beberapa pengaturan multi-pengguna, jadi mungkin ada alasan yang sah mengapa itu tidak ditawarkan.

Gilles 'SANGAT berhenti menjadi jahat'
sumber
Saya akan memeriksanya, saya pikir ini merangkum seluruh masalah dengan sangat baik !! Terima kasih banyak!!
Trufa
Hanya untuk memperjelas, Hostgator menawarkan ssh yang dipenjara di akun bersama.
Trufa
4

Inilah cara melakukannya dengan lFTP :

# lftp ftp_host
user ftp_user ftp_pass
mirror source target (download entire directory tree)
mirror -R source target (reverse mirror; upload entire directory tree)
mbrixner
sumber
1

Ini salah sekarang, tetapi tetap tidak terhapus sehingga pohon komentar tidak hilang

cpmenyalin file dan direktori; Anda dapat memberikannya -rbendera untuk membuatnya menyalin semuanya secara rekursif. Dari folder yang berisi file:

$ cp -r file files2

Michael Mrozek
sumber
Tampaknya tidak berfungsi, saya gagal menyebutkan (karena saya pikir itu akan sama) bahwa saya mencoba melakukan ini melalui koneksi FTP yang dibuat dari terminal mac. Ini memberi saya kesalahan ini: 'cp' makro tidak ditemukan. Terima kasih
Trufa
2
@ Trufa Oh! Tidak, itu sangat berbeda; FTP dan baris perintah benar-benar terpisah. Saya mengedit pertanyaan Anda untuk mudah-mudahan klarifikasi
Michael Mrozek
Maaf, saya tidak keberatan karena "Saya menggunakan baris perintah UNIX melalui FTP", ini jelas bukan masalahnya! Terima kasih untuk hasil edit !!
Trufa
apakah ini pertanyaan untuk stackoverflow? mungkin lebih merupakan pertanyaan pemrograman daripada yang UNIX, saya tidak yakin.
Trufa
2
@ Trufa Jelas bukan SO. Mungkin SU, tapi saya pikir tidak apa-apa di sini
Michael Mrozek
1

LFTP mendukung perintah tingkat yang lebih tinggi di atas apa yang disediakan oleh protokol FTP, misalnya mirrorperintahnya menyediakan apa yang Anda inginkan.

Ada program lain dengan fitur serupa; sitecopy adalah contoh lain.

singkat
sumber
Terima kasih "" terlihat bagus, lihatlah! Satu pertanyaan lagi, ketika saya mengakses cPanel ke administrator file? Apa yang saya lakukan, karena sepertinya lebih cepat melakukan beberapa hal daripada melalui ftp.
Trufa