Назад | Перейти на главную страницу

удалить файл на ftp-сервере с помощью команд bash

используя команды bash и ftp-соединение, мне нужно выполнить две задачи:

  1. удалить самый старый файл в каком-либо каталоге на ftp-сервере. имя файла, который необходимо удалить, начинается с backup_
  2. удалить самый старый подкаталог (на ftp-сервере) в каком-либо каталоге

вы можете помочь мне в достижении?

Мне нужно интегрировать эти функции в существующий файл, поэтому у меня не будет проблем, как создать ftp-соединение и т. д.

Ты можешь использовать lftp как неинтерактивный ftp-клиент из сценариев bash.

Или, предположив, что у вас довольно нормальный и современный дистрибутив, вы можете использовать curlftpfs Файловая система FUSE для монтирования папки ftp-сервера в качестве локальной папки, затем используйте bash для выполнения необходимых логических операций, а затем размонтируйте ftp-сервер.

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

Существует множество примеров того, как удалять файлы по имени или дате, и есть пример на сайте curlftpfs о том, как монтировать и размонтировать файловые системы в скриптах.

Я обращаюсь к вам за одним из тех отличных руководств в IBM,
NcFTP: гибкий FTP-клиент;
смотреть на Использование командных строк

Три клиента ncftpls, ncftpget, и ncftpput несомненно, будет использоваться больше, чем NcFTP. Эти утилиты очень полезны, когда вам нужно выполнить пакетную передачу или передачу по сценарию ad hoc.