Быстро удалить много файлов с помощью FTP?

13

На данный момент я использую FileZilla для FTP на мой сайт. Иногда я хочу удалить большой каталог, полный множества других подкаталогов и файлов. Filezilla, кажется, проходит их все индивидуально, а это значит, что для удаления требуется абсолютный возраст!

Есть ли способ сделать это быстро / э?

Благодарность


источник
«Быстро» и «Удаление большого количества файлов» - две вещи, которые плохо сочетаются при использовании клиента FTP / SFTP для удаления большого количества файлов в глубокой структуре каталогов. Любой, кто должен поддерживать веб-сайт Magento для электронной коммерции, может подтвердить это.
Fiasco Labs
Используйте SSH, FTP не предназначен для этого.
Уильям Эдвардс

Ответы:

10

Я считаю, что FTP фактически не имеет рекурсивной операции удаления. Возможные варианты:

  1. Используйте ncftpпрограмму. Это еще одна FTP-программа с дополнительными опциями. Тем не менее, я думаю, что он работает только в командной строке и не имеет графического интерфейса.
  2. Если у вас есть SSHдоступ к серверу, используйте его вместо FTP и используйте rm -rкоманду.
  3. Напишите PHP или другой скрипт для удаления за вас.
Эван Хеминг
источник
Опция -r является рекурсивным удалением.
Iivel
3
ncftp - это просто еще один FTP-клиент. Он по-прежнему не сможет рекурсивно удалять подкаталоги одной командой и в большинстве случаев будет делать то, что делает FileZilla.
Lèse Majesté
Вы можете выполнить команду через FileZilla, в зависимости от вашего логина.
Мартейн
ncftpу меня не получилось
Суат Атан, доктор философии,
3

Пользователи, не имеющие «ssh», могут войти в cpanel, если их хост поддерживает это, и использовать там файловый менеджер. Это удалит файлы намного быстрее. В некоторых случаях загрузка файлов через http также кажется более быстрой.

kevllar
источник
Я должен был подумать об этом раньше.
Сякур Рахман
3

Вы можете быстро удалить каталог или файлы с FTP с помощью проводника Windows.

  1. Откройте окно проводника Windows; нажмите Win+E.
  2. Нажмите, чтобы выбрать адресную строку.
  3. Введите адрес FTP-сайта. (пример- ftp://ftp.example.com)
  4. Нажмите Enter.
  5. Введите свой идентификатор FTP и PWD.
  6. Нажмите Ввод.
  7. Теперь вы можете получить доступ ко всем файлам и каталогам. Найти и удалить быстро.

введите описание изображения здесь

Судип Чаттерджи
источник
Этот метод занимает столько же времени, сколько и ftp !!
bhavya_w
2

Здесь действительно стоит упомянуть, что вы можете мгновенно переименовывать целые каталоги и переименовывать их в разные пути, что обычно является достаточно хорошим решением.

Создайте каталог с именем «мусор» в корневой папке, затем перетащите / переместите (переименуйте) все каталоги, от которых вы хотите избавиться. Выполнение этого происходит мгновенно, поэтому вы можете продолжить работу, а в фоновом режиме разрешить установку ручного удаления.

Даниил
источник
1

чит: используйте winscp в режиме ftp. он преобразует простой запрос и выполнит все необходимые задачи. это не «командная строка» ftp, но она все равно ftp и может использоваться с теми же учетными данными ftp для легкого выполнения задачи (и настолько быстро, насколько это может выполнить ftp)

TheSatinKnight
источник
и так быстро, как это может сделать ftp <ухмылка>
Fiasco Labs
1

Вот простой способ удалить файлы в подпапках без командной строки. Файл Zilla :)FileZilla Поиск

Kal Elsehsah
источник
1
Это быстрее, чем просто удалить папку?
Tasawer Khan
0

Я ранее ответил на аналогичный вопрос на SO:

/programming/4387151/how-to-delete-folders-with-wildcard-via-cmd-ftp-windows-server-2008/4445705#4445705

Короче говоря: вы также можете удалить каталог и всех его родителей с помощью ключа -p [using rmdir]. Ключ -r рекурсивно удаляет каталоги, указанные в пути аргументов:

http://www.computerhope.com/unix/urm.htm

iivel
источник