Question
Execution de scripts externes dans boucle
- sonic
- Auteur du sujet
- Hors Ligne
- Membre senior
Réduire
Plus d'informations
- Messages : 65
- Remerciements reçus 0
il y a 15 ans 9 mois #2511
par sonic
Execution de scripts externes dans boucle a été créé par sonic
Bonjour,
Voila je voudrais lancer les scripts que me remontes un script central.
Ca donne:
[code:1]$tache=gci *.ps1 -r -path C:\APPL\admin |format-table fullname -autosize -hideTableHeaders
$tache | out-file \"C:\APPL\admin\temp.txt\" -width 9999
$script=get-content \"C:\APPL\admin\temp.txt\"
echo \"**********************************\" >> C:\APPL\admin\log.txt
foreach ($texe in $script)
{
if ($texe -ne $NULL)
{
.$texe
}
}
[/code:1]
Comme on peu le voir je n'ai pas solutionné le fait de devoir passer par un fichier texte pour traité les noms (j'ai ce problème ailleurs) . Si je fait pas comme ca ca fonctionne pas . Je peu pas chercher dans toutes les directions en même temps .
Sinon mon problème actuel est:
Dans la boucle j'ai beau essayer .\$texe, powershell $texe , et un peu tout ce que je trouve, toujours le meme problème . Ca fonctionne mais j'ai un message d'erreur qui me dit que \".\" est invalide dans le pipeline . Si je le met pas ca fonctionne pas, ou ouvre mes fichiers dans notepad, ou lance juste un nouveau powershell, si je met que la variable non plu .(j'ai du tout essayé sauf ce qu'il faut)
En résumé donc: Ca lance bien les scripts mais avec un message d'erreur dût au \".\" . Comment supprimer ce problème .
A terme je compte lancer des scripts qui configurerons un script moteur central .
Merci
Voila je voudrais lancer les scripts que me remontes un script central.
Ca donne:
[code:1]$tache=gci *.ps1 -r -path C:\APPL\admin |format-table fullname -autosize -hideTableHeaders
$tache | out-file \"C:\APPL\admin\temp.txt\" -width 9999
$script=get-content \"C:\APPL\admin\temp.txt\"
echo \"**********************************\" >> C:\APPL\admin\log.txt
foreach ($texe in $script)
{
if ($texe -ne $NULL)
{
.$texe
}
}
[/code:1]
Comme on peu le voir je n'ai pas solutionné le fait de devoir passer par un fichier texte pour traité les noms (j'ai ce problème ailleurs) . Si je fait pas comme ca ca fonctionne pas . Je peu pas chercher dans toutes les directions en même temps .
Sinon mon problème actuel est:
Dans la boucle j'ai beau essayer .\$texe, powershell $texe , et un peu tout ce que je trouve, toujours le meme problème . Ca fonctionne mais j'ai un message d'erreur qui me dit que \".\" est invalide dans le pipeline . Si je le met pas ca fonctionne pas, ou ouvre mes fichiers dans notepad, ou lance juste un nouveau powershell, si je met que la variable non plu .(j'ai du tout essayé sauf ce qu'il faut)
En résumé donc: Ca lance bien les scripts mais avec un message d'erreur dût au \".\" . Comment supprimer ce problème .
A terme je compte lancer des scripts qui configurerons un script moteur central .
Merci
Connexion ou Créer un compte pour participer à la conversation.
- Laurent Dardenne
- Hors Ligne
- Modérateur
Réduire
Plus d'informations
- Messages : 6302
- Remerciements reçus 68
il y a 15 ans 9 mois #2512
par Laurent Dardenne
Tutoriels PowerShell
Réponse de Laurent Dardenne sur le sujet Re:Execution de scripts externes dans boucle
sonic31 écrit:
Une autre approche, sans fichier intermédiaire:
[code:1]
gci *.ps1 -r -path C:\APPL\admin |%{&$($_.fullname)}
[/code:1]
Pour approfondir le principe du pipeline, tu peux lire ce tuto :
laurent-dardenne.developpez.com/articles...werShell/Pipelining/
Bonn lecture
Ton fichier contient des lignes vide c'est pour ça que la ligne \".$texe\" est interprété comme \".\" qui est donc envoyé dans le pipe directement.$script=get-content \"C:\APPL\admin\temp.txt\"
Une autre approche, sans fichier intermédiaire:
[code:1]
gci *.ps1 -r -path C:\APPL\admin |%{&$($_.fullname)}
[/code:1]
Pour approfondir le principe du pipeline, tu peux lire ce tuto :
laurent-dardenne.developpez.com/articles...werShell/Pipelining/
Bonn lecture
Tutoriels PowerShell
Connexion ou Créer un compte pour participer à la conversation.
Temps de génération de la page : 0.083 secondes
- Vous êtes ici :
- Accueil
- forum
- PowerShell
- Entraide pour les débutants
- Execution de scripts externes dans boucle