sftp
tem recursos limitados. A maneira mais fácil de fazer coisas complexas sobre o SFTP é usar SSHFS . O SSHFS é um sistema de arquivos que usa SFTP para fazer um sistema de arquivos remoto aparecer como um filessytem local. No cliente, o SSHFS requer o FUSE , que está disponível na maioria dos unices modernos. No servidor, o SSHFS requer SFTP; Se o servidor permitir SFTP, você poderá usar o SSHFS com ele.
Por exemplo, para copiar os arquivos modificados nos últimos 30 minutos, primeiro monte o diretório remoto por SFTP com sshfs
. Use sshpass se você tiver que usar uma senha para o SSH. Em seguida, use o comando que você usaria localmente (aqui, eu uso os utilitários GNU, mas dependendo do que você está fazendo, rsync -a mnt/ /local/path/
pode ser melhor). Desmonte o sistema de arquivos SSHFS quando terminar.
mkdir mnt
sshpass -f password.txt sshfs user@host: mnt
find mnt -mmin -30 -exec cp -t /local/path/ {} +
fusermount -u mnt