Найти - Пользователи
Полная версия: Помощь /подсказка по pysftp
Начало » Python для новичков » Помощь /подсказка по pysftp
1
EugeneK
Всем привет.
Пытаюсь сделать скрип отправки бекапа на sftp сервер. Часть уже сделана это создание архива и загрузка его на сам sftp, создание и запись в лог файл на самом sftp. Но встал вопрос как можно взять с уже с загруженных файлов “дату создания” для удаления самого старого(глубина хранения 5 дней). Может кто-то подскажите или натолкнет на мысль как можно получить эту дату.
Черновые примеры кода могу запостить но они не “алле”


EugeneK
Разобрался
строка строка подкл.
 cnopts = pysftp.CnOpts()
cnopts.hostkeys = None
sftp = pysftp.Connection(host, username='user', password='c3^98fiXS&', cnopts=cnopts)

вот код поиска
 def delete_old_files(path_del_files, copies_for_delete, extension_for_files):
    #
    # Delete old archives copies in log_dir and path.
    #
    min_del_dict = ''
    if copies_for_delete > saved_archive_copies:
        while copies_for_delete > saved_archive_copies:
            del_dict = {}
            sftp.chdir(path_del_files)
            dir_list_folder = sftp.listdir()
            for files in dir_list_folder:
                if sftp.isfile(files):
                    if fnmatch.fnmatch(files, extension_for_files) or fnmatch.fnmatch(files, extension_for_files):
                        date = sftp.stat(files).st_mtime
                        del_dict[files] = date
            min_del_dict = min(del_dict, key=del_dict.get)
            copies_for_delete -= 1
            sftp.remove(min_del_dict)
            sftp.chdir('/')
        return min_del_dict
    return 'Logs and backups files less or equal 5'

Может пригодится кому-то. Или кто более опытен поможет сократить саму функцию
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB