Один из вариантов - использовать метод listdir
объекта SFTPClient
, возвращаемый c.sftp()
, чтобы получить список всех удаленных файлов, а затем применить fnmatch.filter
с вашим выражением glob:
fnmatch.filter(c.sftp().listdir(), '*.py')
Результат: В следующем удаленном каталоге
$ ls
1.log 2.txt 3.py 4.csv 5.py
сначала перечисляет весь каталог, затем с помощью glob:
>>> c.sftp().listdir()
['5.py', '3.py', '4.csv', '2.txt', '1.log']
>>> fnmatch.filter(c.sftp().listdir(), '*.py')
['5.py', '3.py']