Differences

This shows you the differences between the selected revisions of the page.

library_example_watch_for_changes 2017-12-21 library_example_watch_for_changes 2022-06-16 (current)
Line 1: Line 1:
====== Watching for changes in SFTP/FTP server ====== ====== Watching for changes in SFTP/FTP server ======
-Neither SFTP nor FTP protocol have any mechanism to notify a client about changes in a remote folder. The only solution to detect changes is to periodically enumerate remote directory tree and find differences. It's easy to implement with use of ''[[library_session_enumerateremotefiles|Session.EnumerateRemoteFiles]]'' method and ''[[ps>microsoft.powershell.utility/compare-object|Compare-Object]]'' cmdlet in PowerShell or ''[[msdn>system.linq.enumerable.except|Enumerable.Except]]'' LINQ method in C#/%%VB.NET%%.+Neither SFTP nor FTP protocol have any mechanism to notify a client about changes in a remote folder. The only solution to detect changes is to periodically enumerate remote directory tree and find differences. It's easy to implement with use of ''[[library_session_enumerateremotefiles|Session.EnumerateRemoteFiles]]'' method and ''[[ps>microsoft.powershell.utility/compare-object|Compare-Object]]'' cmdlet in PowerShell or ''[[dotnet>system.linq.enumerable.except|Enumerable.Except]]'' LINQ method in C#/%%VB.NET%%.
//Note that, if you want to download the changes, you do not need to check for changes yourself, just run ''[[library_session_synchronizedirectories|Session.SynchronizeDirectories]]'' in a loop. You can use the [[library_example_keep_local_directory_up_to_date|Keep local directory up to date]] extension.// //Note that, if you want to download the changes, you do not need to check for changes yourself, just run ''[[library_session_synchronizedirectories|Session.SynchronizeDirectories]]'' in a loop. You can use the [[library_example_keep_local_directory_up_to_date|Keep local directory up to date]] extension.//
Line 10: Line 10:
param ( param (
    # Use Generate Session URL function to obtain a value for -sessionUrl parameter.     # Use Generate Session URL function to obtain a value for -sessionUrl parameter.
-    $sessionUrl = "sftp://user:mypassword;fingerprint=ssh-rsa-xx-xx-xx@example.com/",+    $sessionUrl = "sftp://user:mypassword;fingerprint=ssh-rsa-xxxxxxxxxxx...@example.com/",
    $remotePath = "/home/user"     $remotePath = "/home/user"
) )
Line 112: Line 112:
                UserName = "user",                 UserName = "user",
                Password = "password",                 Password = "password",
-                SshHostKeyFingerprint = "ssh-rsa 2048 xx:xx:xx:xx:xx:xx:xx:xx...",+                SshHostKeyFingerprint = "ssh-rsa 2048 xxxxxxxxxxx...",
            };             };

Last modified: by martin