Mon script de transfert FTP en Batch ne fonctionne plus

Dans le cas où votre script de transfert FTP en batch cesse de fonctionner, le script en PowerShell peut être utilisé comme alternative.

Voici l'exemple qui pourrait vous aider dans la création du script PowerShell :

# Définir les informations de connexion FTP
$ftpServer = "ftp.example.com"
$username = "your_username"
$password = "your_password"

# Chemin du répertoire distant sur le serveur FTP
$remotePath = "/FTP/"

# Chemin local des fichiers que vous souhaitez télécharger
$localFiles = "D:\Documents testes\_SAV\*.*"  # Vous pouvez spécifier un fichier spécifique ou un modèle de fichier (par exemple, "*.txt" pour tous les fichiers texte)

# Créer une session FTP
$ftpSession = New-Object System.Net.WebClient
$ftpSession.Credentials = New-Object System.Net.NetworkCredential($username, $password)

# Parcourir les fichiers locaux et les télécharger vers le serveur FTP
Get-ChildItem -Path $localFiles | ForEach-Object {
   $fileName = $_.Name
   $ftpUri = "ftp://$ftpServer$remotePath$fileName"
   $localFilePath = $_.FullName
   $ftpSession.UploadFile($ftpUri, $localFilePath)
   Write-Host "Le fichier $fileName a été téléchargé avec succès vers $ftpUri"
}

# Fermer la session FTP
$ftpSession.Dispose()

Dans ce script :

  • Remplacez*"ftp.example.com","your_username", et"your_password"* par les informations de connexion à votre serveur FTP.
  • Modifiez les chemins $remotePath pour spécifier le répertoire distant où vous souhaitez télécharger les fichiers et $localFiles pour spécifier les fichiers locaux que vous souhaitez télécharger.
  • Le script parcourt ensuite les fichiers locaux spécifiés ($localFiles) à l'aide de Get-ChildItem, puis utilise la méthode UploadFile pour télécharger chaque fichier vers le répertoire distant spécifié sur le serveur FTP.