Рекомендуемые консольные ftp клиенты

16

Существуют ли полнофункциональные консольные (командная строка) FTP-клиенты?

Я перемещаю части сайта с одного хоста на другой. Один сервер имеет доступ к оболочке ssh (и, следовательно, scp, sftp и т. Д.), Другой - только ftp.

Мой домашний компьютер - рабочий стол Ubuntu. До сих пор я использовал Filezilla для загрузки на свой рабочий стол, а затем оттуда загружал на новый сервер. Это медленно и неэффективно, все передается дважды, и скорость моей домашней сети ограничена, и, кроме того, ежемесячная квота пропускной способности. Эти два сервера имеют быстрое соединение между ними. Я бы предпочел просто подключиться по ssh к одному серверу и получить нужные мне файлы напрямую.

Так что я ищу консольный ftp-клиент с набором функций, аналогичным Filezilla (мне нужно выбрать, что перенести, а что оставить). Существует ли такое существо?

Мэтт Уилки
источник
сумасшедшая идея: возможно ли, чтобы filezilla или подобное подключалось к двум удаленным серверам одновременно? т.е. не показывать «Локальный сайт» и «Удаленный сайт», а «Сайт А» и «Сайт Б»? а трансфер прямой между?
Мэтт Вилки
Это возможно, если вы используете FTP-сервер с поддержкой FXP: en.wikipedia.org/wiki/File_eXchange_Protocol
Жоау Пинту,
Стоит рассмотреть веб-клиент FTP / SFTP, такой как Monsta FTP, поскольку вам просто нужно некоторое веб-пространство (для его размещения) и браузер. Бесплатно скачать на monstaftp.com (отказ от ответственности: я участвую в этом проекте)
Даниэль Уильямс

Ответы:

20

Проверьте, установлен ли Midnight Commander ( mc). Если это так, вы можете сделать ftp оттуда.

Chipaca
источник
21

На мой взгляд, самый мощный ftp-клиент командной строки, несомненно, является lftp .

  1. это позволяет использовать стандартную команду оболочки по проводу ftp
  2. Предоставляет очередь вверх / вниз для длительных операций
Riduidel
источник
+1 лфтп это круто. Кроме того, lftp действительно вступает в свои права при использовании в качестве неинтерактивного клиента в сценариях оболочки или сценариях резервного копирования, когда ftp - единственный вариант.
Ричард Холлоуэй
1
lftp не работает со всеми FTP-серверами, с которыми мне приходится иметь дело - это те случаи, когда я использую yafc
Lester Cheung
1
Еще один голос за lftp- особенно для sftp, я нашел это очень хорошо, используя такие команды, как open sftp://username@sftp_server_address. Это быстро и просто.
Космин Савяну
отличное предложение; он отлично работает и на Mac OS, и полностью поддерживает локальную конфигурацию ssh из коробки (например, для sftp)
Riccardo
16

Вы можете сделать жизнь по-настоящему легкой для себя, используя файловую систему fuse.

На машине вы можете ssh в, установить curlftpfs

sudo apt-get install curlftpfs

Затем добавьте себя в группу предохранителей

sudo usermod  -aG fuse <username>

Выйдите из системы и войдите снова, чтобы изменения вступили в силу.

Создайте каталог для точки монтирования

mkdir ~/ftp

Затем смонтируйте ftp-сервер как локальную файловую систему

curlftpfs ftp.server.com ~/ftp -o user=<ftp_username>

Введите пароль при появлении запроса.

Затем вы можете использовать файлы удаленных FTP-серверов, как если бы они появлялись на локальном сервере. Позволяет вам использовать cp, rsync и т. Д. Без хлопот обработки ftp.

Прочитайте справочную страницу для получения дополнительной информации

Особенно полезно, если вы делаете много такого рода вещей.

Ричард Холлоуэй
источник
Ох, и размонтировать его снова сделаемfusermount -u ~/ftp
Ричард Холлоуэй
1

На всякий случай это кому-то еще нужно :)

Мне удалось перенести большой веб-сайт из виртуальной машины Linux (из командной строки SSH) в облачную службу веб-сайта Azure ПРЯМО (через ftp) с помощью клиента ncftp, как описано здесь.

Наконец, не забудьте удалить клиент ftp из вашего vm впоследствии.

веселит.

Сайлас Оквоче
источник