JaSFtp is a file transfer automation program for Windows, macOS and Linux/Unix. It handles SFTP, FTP and FTPS connections, with tools for turning repeated uploads and downloads into saved tasks. Alongside its interactive file browser, JaSFtp provides scheduling, directory monitoring and conditional task sequences for transfers that need to run without repeated manual selection.
JaSFtp transfer tasks and the SFTP browser
A transfer task combines a saved server profile with an operation and its source and destination folders. Get retrieves files from the server, Put uploads local files, and Delete removes selected remote files. SFTP connections require an SSH server that provides the SFTP subsystem; authentication can use a password or public key. HTTP and SOCKS proxies are supported for connections through those gateways.
The interactive SFTP browser displays local and remote directories side by side. Multiple browser windows let you work with different sites, and an open connection can supply settings when creating a new transfer task.
File selection
JaSFtp can process groups of files through filename wildcards and folder filters, including subdirectories. Modified-date filters narrow a task to files within an age range. Another option transfers a file only when its source copy is newer than the destination copy, avoiding a complete resend on every run.
Transfer logging provides a further selection method: the task can compare a source file’s date with its previous entry in the log. Files absent from that log are transferred. Dynamic variables let task parameters follow changing values, while date and time additions can create distinct filenames or destination subdirectories for successive batches.
Temporary extensions and staging folders
Automated transfers often feed another application that watches a folder. JaSFtp offers a temporary-extension option that changes a file to its intended name only after the transfer finishes. A receiving process looking for that final extension can therefore distinguish completed files from transfers still in progress.
Staging offers a folder-based alternative. A task transfers the file to a staging location, then moves it to the final destination after completion. This option places files directly in the destination without recreating their subdirectory structure. JaSFtp can also keep a backup copy or delete the source after a successful transfer; a failed transfer does not trigger that source deletion.
Directory monitors
Local and remote directory monitors can initiate work when files change. Remote SFTP monitoring can respond to file sizes, file counts and modification dates, then trigger transfer, ZIP, copy or deletion tasks.
The local directory monitor keeps a record of file modification dates and compares it with the directory on its next run. It can include subdirectories and return the changed filenames in a variable. A following transfer or copy task can use that list to process the affected files instead of selecting the whole folder again.
Task sequences
JaSFtp links saved tasks into ordered sequences. A sequence can prepare a ZIP archive, transfer it and perform a subsequent file operation. Exit-code conditions control whether it continues, skips to another step or stops, and rerun settings can limit how many times a step is attempted again.
Tasks can be added, reordered or disabled within the sequence. Email notifications can respond to the sequence’s result, with an additional option for notifications from its individual tasks.
Transfer scheduling
Saved jobs can run manually or recur by seconds, minutes, hours, days, weeks or months. Calendar filters determine the relevant run times, including a monthly run on the last day. The task engine can operate as a background service, while Task Runner lets another program invoke an existing JaSFtp task from the command line.





