Comment copier un fichier sur un ordinateur local qui vient d’être téléversé ou téléchargé ?
Si vous devez copier un fichier dans un autre dossier sur l’ordinateur local après une opération de téléversement ou de téléchargement réussie, vous devez utiliser un déclencheur post-transfert.
Un déclencheur post-transfert est exécuté après un transfert de fichier réussi entre le serveur distant et l’ordinateur local et permet de lancer n’importe quel programme, script PowerShell ou fichier bat. Comme paramètres, vous pouvez utiliser des variables intégrées de FTPGetter, telles que la variable %local_file%, qui représente le chemin complet du fichier transféré sur l’ordinateur local, des variables liées aux dates, et d’autres encore.
Exemple #1 : Copier le fichier transféré dans un autre dossier sur l’ordinateur local.
Exemple #1 : Copier le fichier transféré dans un autre dossier sur l’ordinateur local.
Pour effectuer cette opération, créez un fichier bat avec le contenu suivant dans n’importe quel éditeur de texte.
SET "fullpath=%~dp2"
if not exist "%fullpath%" mkdir "%fullpath%"
copy /Y %1 %2Enregistrez ce fichier sous le nom my-copy.bat dans le dossier de votre choix.
Remarque importante ! Si vous utilisez FTPGetter en mode service Windows, assurez-vous que le compte sous lequel le service est exécuté dispose d’un accès complet à ce dossier.
Dans FTPGetter, ce fichier bat doit être appelé comme suit :
D:\my-bats\my-copy.bat
"%local_file%" "D:\path-to-copy-folder\"
Fonctionnement. Après un transfert de fichier réussi, FTPGetter exécute le fichier bat my-copy.bat avec deux paramètres. Le premier paramètre est la variable %local_file%, qui contient le chemin complet du fichier récemment transféré (sur l’ordinateur local). Le second paramètre est le chemin vers le dossier dans lequel le fichier doit être copié.
Vous trouverez ci-dessous des exemples de différents fichiers bat pour copier des fichiers :
Exemple #2 : Copier un fichier avec un nouveau nom.
Ajouter la date actuelle au nom du fichier :
D:\my-bats\my-copy.bat
"%local_file%" "D:\path-to-copy-folder\%local_file_name_only%_%c_yyyy%_%c_mm%_%c_dd%.%local_file_name_ext%"
Exemple #3 : Copier un fichier avec une nouvelle extension.
Ajouter l’extension .done
D:\my-bats\my-copy.bat
"%local_file%" "D:\path-to-copy-folder\%local_file_name%.done"
Exemple #4 : Copier un fichier dans un sous-dossier représentant la date actuelle
D:\my-bats\my-copy.bat
"%local_file%" "D:\path-to-copy-folder\%c_yyyy%-%c_mm%-%c_dd%\%local_file_name%"
Ensuite, nous verrons comment renommer, déplacer ou décompresser un fichier récemment transféré.
Vous devez copier un fichier sur le serveur SFTP après le transfert ?


