Question Powershell 5 Module WINSCP
- Sebastien Maltais
- Auteur du sujet
- Hors Ligne
- Nouveau membre
-
Réduire
Plus d'informations
- Messages : 9
- Remerciements reçus 0
il y a 4 ans 8 mois #28012
par Sebastien Maltais
Powershell 5 Module WINSCP a été créé par Sebastien Maltais
Bonjour,
Voici un script qui explique comment utiliser le nouveau module WINSCP avec powershell 5.1.
1 - Installer powershell 5.1 www.microsoft.com/en-us/download/details.aspx?id=54616
2- Installer le module WINSCP
[code:1]install-module -name winscp[/code:1]
Voici le script avec des exemple de upload et download en SFTP.
[code:1]##################################################################
##################################################################
######################## WINSCP ##################################
##################################################################
##################################################################
### Date formatter pour le nom du fichier journaux
$date_log = (get-date).tostring(\"ddMMyyyy\"«»)
### Journaux/log de la session
$log = \"c:\power\log_\" + $date_log + \".txt\"
### Dossier de telechargement
$download = \"C:\power\download\\"
### Dossier de televersement
$upload = \"C:\power\upload\\"
### Serveur SFTP
$srv = \"192.168.174.134\"
### Port de communication TCP/IP
$port = \"22\"
### Nom d'utilisateur et mot de passe
$utilisateur = \"test\"
$motdepasse = ConvertTo-SecureString \"password\" -AsPlainText -Force
$credential = New-Object -typename System.Management.Automation.PSCredential -argumentlist $utilisateur, $motdepasse
### Mode de connexion au FTP
$ftpmode = \"passive\"
### Cle SHH d'encryption de l'hote -- Elle ce trouve trouve dans les propriétés de la connexion dans WINSCP
### SSHHOSTKEYFINGERPRINT
$sshkeyfingerprint = \"ssh-ed25519 256 dXJkkP6V2VVmyfy1TxYQlbQsrhXbbayq/cws8jwMz2Q=\"
### Protocole utiliser SFTP
$protocole = \"SFTP\"
### Options session. Contient les informations de connexion
$session_options = New-WinSCPSessionOption -HostName $srv -Credential $credential -FtpMode $ftpmode -PortNumber $port -Protocol $protocole -SshHostKeyFingerprint $sshkeyfingerprint
### Connexion active au serveur SFTP
$connexion = New-WinSCPSession -SessionOption $session_options -SessionLogPath $log
##################################################################
### Transfert les fichiers du dossier upload vers le serveur SFTP#
##################################################################
$liste_fichiers = (Get-ChildItem -path $upload -Recurse).fullname
foreach($fichier in $liste_fichiers){
Send-WinSCPItem -LocalPath $fichier -WinSCPSession $connexion
}
####################################################################
### Fin du transfert des fichiers vers le serveur FTP #
####################################################################
####################################################################
### Téléchargement de fichiers à partir du serveur SFTP #
####################################################################
$liste_telechargement = (Get-WinSCPChildItem -WinSCPSession $connexion).FullName
foreach($DL in $liste_telechargement){
Receive-WinSCPItem -RemotePath $DL -WinSCPSession $connexion -LocalPath $download
}
####################################################################
### FIN Téléchargement de fichiers à partir du serveur SFTP #
####################################################################
[/code:1]
HAVE FUN
<br><br>Message édité par: iTork, à: 16/01/19 18:25
Voici un script qui explique comment utiliser le nouveau module WINSCP avec powershell 5.1.
1 - Installer powershell 5.1 www.microsoft.com/en-us/download/details.aspx?id=54616
2- Installer le module WINSCP
[code:1]install-module -name winscp[/code:1]
Voici le script avec des exemple de upload et download en SFTP.
[code:1]##################################################################
##################################################################
######################## WINSCP ##################################
##################################################################
##################################################################
### Date formatter pour le nom du fichier journaux
$date_log = (get-date).tostring(\"ddMMyyyy\"«»)
### Journaux/log de la session
$log = \"c:\power\log_\" + $date_log + \".txt\"
### Dossier de telechargement
$download = \"C:\power\download\\"
### Dossier de televersement
$upload = \"C:\power\upload\\"
### Serveur SFTP
$srv = \"192.168.174.134\"
### Port de communication TCP/IP
$port = \"22\"
### Nom d'utilisateur et mot de passe
$utilisateur = \"test\"
$motdepasse = ConvertTo-SecureString \"password\" -AsPlainText -Force
$credential = New-Object -typename System.Management.Automation.PSCredential -argumentlist $utilisateur, $motdepasse
### Mode de connexion au FTP
$ftpmode = \"passive\"
### Cle SHH d'encryption de l'hote -- Elle ce trouve trouve dans les propriétés de la connexion dans WINSCP
### SSHHOSTKEYFINGERPRINT
$sshkeyfingerprint = \"ssh-ed25519 256 dXJkkP6V2VVmyfy1TxYQlbQsrhXbbayq/cws8jwMz2Q=\"
### Protocole utiliser SFTP
$protocole = \"SFTP\"
### Options session. Contient les informations de connexion
$session_options = New-WinSCPSessionOption -HostName $srv -Credential $credential -FtpMode $ftpmode -PortNumber $port -Protocol $protocole -SshHostKeyFingerprint $sshkeyfingerprint
### Connexion active au serveur SFTP
$connexion = New-WinSCPSession -SessionOption $session_options -SessionLogPath $log
##################################################################
### Transfert les fichiers du dossier upload vers le serveur SFTP#
##################################################################
$liste_fichiers = (Get-ChildItem -path $upload -Recurse).fullname
foreach($fichier in $liste_fichiers){
Send-WinSCPItem -LocalPath $fichier -WinSCPSession $connexion
}
####################################################################
### Fin du transfert des fichiers vers le serveur FTP #
####################################################################
####################################################################
### Téléchargement de fichiers à partir du serveur SFTP #
####################################################################
$liste_telechargement = (Get-WinSCPChildItem -WinSCPSession $connexion).FullName
foreach($DL in $liste_telechargement){
Receive-WinSCPItem -RemotePath $DL -WinSCPSession $connexion -LocalPath $download
}
####################################################################
### FIN Téléchargement de fichiers à partir du serveur SFTP #
####################################################################
[/code:1]
HAVE FUN


Connexion ou Créer un compte pour participer à la conversation.
- Philippe
- Hors Ligne
- Modérateur
-
Réduire
Plus d'informations
- Messages : 1778
- Remerciements reçus 21
il y a 4 ans 8 mois #28051
par Philippe
Réponse de Philippe sur le sujet Re:Powershell 5 Module WINSCP
Connexion ou Créer un compte pour participer à la conversation.
Temps de génération de la page : 0.042 secondes
- Vous êtes ici :
-
Accueil
-
forum
-
PowerShell
-
Contributions à la communauté
- Powershell 5 Module WINSCP