FTP-команда для переноса каталога на сервер из локальной системы

#linux #shell #unix #ftp

#linux #оболочка #unix #ftp

Вопрос:

 put  filename  will put the file to cureent directory in server.
  

Какую команду я должен использовать для перемещения всей папки / каталога??

Ответ №1:

Вы можете использовать ncftp программное обеспечение для переноса дерева каталогов с локального на ftp-серверы. Вам необходимо установить это программное обеспечение ftp.

Команда загрузки будет:

 ncftpput -avR -u <user> -p<password> <ftpserver> <path to put> <local folder>
  

где,

a перенесите все файлы в режиме ASCII, а не в двоичном формате.

v для просмотра выходных данных в подробном режиме

R для копирования папок в рекурсивном режиме.

Комментарии:

1. Это было полезно. Для ncftp есть бутылка домашнего пива OSX.

Ответ №2:

 mput *
  

ftp не может напрямую размещать деревья каталогов, только файлы.

Комментарии:

1. Спасибо! я собираюсь принять ответ, что ответа нет !!]

Ответ №3:

Если у вас есть sshd в удаленной системе, вы, вероятно, можете использовать rsync .

В нем есть встроенное сжатие и всевозможные другие полезные функции:

 % rsync -chavz --partial --progress --stats test remotehost:
sending incremental file list
test/
test/test.c
         387 100%    0.00kB/s    0:00:00 (xfer#1, to-check=5/7)
test/test.cpp
         231 100%  225.59kB/s    0:00:00 (xfer#2, to-check=4/7)
test/test.new
         253 100%  123.54kB/s    0:00:00 (xfer#3, to-check=3/7)
test/test.php
         578 100%  282.23kB/s    0:00:00 (xfer#4, to-check=2/7)
test/test.py
         288 100%  140.62kB/s    0:00:00 (xfer#5, to-check=1/7)
test/test.sh
          81 100%   26.37kB/s    0:00:00 (xfer#6, to-check=0/7)

Number of files: 7
Number of files transferred: 6
Total file size: 1.82K bytes
Total transferred file size: 1.82K bytes
Literal data: 1.82K bytes
Matched data: 0 bytes
File list size: 193
File list generation time: 0.003 seconds
File list transfer time: 0.000 seconds
Total bytes sent: 1.54K
Total bytes received: 130

sent 1.54K bytes  received 130 bytes  159.43 bytes/sec
total size is 1.82K  speedup is 1.09
  

Посмотрите, что произойдет, если вы запустите его снова, и никакие файлы не изменились…

 % rsync -chavz --partial --progress --stats test remotehost:
sending incremental file list

Number of files: 7
Number of files transferred: 0
Total file size: 1.82K bytes
Total transferred file size: 0 bytes
Literal data: 0 bytes
Matched data: 0 bytes
File list size: 193
File list generation time: 0.003 seconds
File list transfer time: 0.000 seconds
Total bytes sent: 207
Total bytes received: 13

sent 207 bytes  received 13 bytes  23.16 bytes/sec
total size is 1.82K  speedup is 8.26
  

Ответ №4:

Ни в коем случае. вы должны загружать каждый файл отдельно. вы можете сначала обойти каталоги, а затем загрузить каждый файл. у вас также есть это ограничение для удаления каталога через ftp.