Question
Utiliser une fonction perso. sur plusieurs scripts
- Luc
- Auteur du sujet
- Hors Ligne
- Nouveau membre
-
Réduire
Plus d'informations
- Messages : 12
- Remerciements reçus 0
il y a 10 ans 10 mois #19635
par Luc
Utiliser une fonction perso. sur plusieurs scripts a été créé par Luc
Bonjour,
Voici mon problème, j'ai créé un script qui en appelle un autre après un redémarrage et ainsi de suite 2-3 fois. Sauf que sur ces 4 scripts, j'ai une même fonction qui se trouve dans 3 scripts, je voulais donc mettre cette fonction dans un autre fichier et faire un appel dans chaque script, ce qui permettrait de rendre les scripts plus lisible et plus facile à modifier. Or, les différentes méthodes ne fonctionnent pas (Exécution du fichier pour que la fonction soit connue par Powershell, création d'une fonction, etc).
Je précise que j'utilise des workflows et que j'utilise un .bat pour lancer l'exécution du premier script.
J'espère avoir été assez clair
sinon je vous fournirai d'autres précisions.
Voici mon problème, j'ai créé un script qui en appelle un autre après un redémarrage et ainsi de suite 2-3 fois. Sauf que sur ces 4 scripts, j'ai une même fonction qui se trouve dans 3 scripts, je voulais donc mettre cette fonction dans un autre fichier et faire un appel dans chaque script, ce qui permettrait de rendre les scripts plus lisible et plus facile à modifier. Or, les différentes méthodes ne fonctionnent pas (Exécution du fichier pour que la fonction soit connue par Powershell, création d'une fonction, etc).
Je précise que j'utilise des workflows et que j'utilise un .bat pour lancer l'exécution du premier script.
J'espère avoir été assez clair
Connexion ou Créer un compte pour participer à la conversation.
- THIBURCE
- Hors Ligne
- Nouveau membre
-
Réduire
Plus d'informations
- Messages : 17
- Remerciements reçus 0
il y a 10 ans 10 mois #19638
par THIBURCE
Réponse de THIBURCE sur le sujet Re:Utiliser une fonction perso. sur plusieurs scripts
Bonjour,
Je le fait dans mes scripts de la manière suivante :
# On localise ou est le script de base
# Tu n'es pas obligé de faire ça
# Je le fais car tous mes scripts sont dans un même dossier
$path = split-path -parent $MyInvocation.MyCommand.Definition
# On déclare le script externe utilisé
.\"$path\xxx.ps1\"
# Pour y utiliser tu mets juste le nom de la fonction utilisé
# Exemple
split arg1 arg2 arg3
...
J'espère que ça va t'aider
Message édité par: Riza, à: 5/05/15 09:02
Message édité par: Riza, à: 5/05/15 09:06<br><br>Message édité par: Riza, à: 5/05/15 09:06
Je le fait dans mes scripts de la manière suivante :
# On localise ou est le script de base
# Tu n'es pas obligé de faire ça
# Je le fais car tous mes scripts sont dans un même dossier
$path = split-path -parent $MyInvocation.MyCommand.Definition
# On déclare le script externe utilisé
.\"$path\xxx.ps1\"
# Pour y utiliser tu mets juste le nom de la fonction utilisé
# Exemple
split arg1 arg2 arg3
...
J'espère que ça va t'aider
Message édité par: Riza, à: 5/05/15 09:02
Message édité par: Riza, à: 5/05/15 09:06<br><br>Message édité par: Riza, à: 5/05/15 09:06
Connexion ou Créer un compte pour participer à la conversation.
- Laurent Dardenne
- Hors Ligne
- Modérateur
-
Réduire
Plus d'informations
- Messages : 6311
- Remerciements reçus 68
il y a 10 ans 10 mois #19641
par Laurent Dardenne
Tutoriels PowerShell
Réponse de Laurent Dardenne sur le sujet Re:Utiliser une fonction perso. sur plusieurs scripts
Salut,
Riza écrit:
Riza écrit:
Avec les balises code ce serait plus lisibleJ'espère que ça va t'aider
Tutoriels PowerShell
Connexion ou Créer un compte pour participer à la conversation.
- THIBURCE
- Hors Ligne
- Nouveau membre
-
Réduire
Plus d'informations
- Messages : 17
- Remerciements reçus 0
il y a 10 ans 10 mois #19643
par THIBURCE
Réponse de THIBURCE sur le sujet Re:Utiliser une fonction perso. sur plusieurs scripts
Ah oui pardon 
[code:1]
# On localise ou est le script de base
# Tu n'es pas obligé de faire ça
# Je le fais car tous mes scripts sont dans un même dossier
$path = split-path -parent $MyInvocation.MyCommand.Definition
# On déclare le script externe utilisé
.\"$path\xxx.ps1\"
# Pour y utiliser tu mets juste le nom de la fonction utilisé
# Exemple
split arg1 arg2 arg3
...
[/code:1]
[code:1]
# On localise ou est le script de base
# Tu n'es pas obligé de faire ça
# Je le fais car tous mes scripts sont dans un même dossier
$path = split-path -parent $MyInvocation.MyCommand.Definition
# On déclare le script externe utilisé
.\"$path\xxx.ps1\"
# Pour y utiliser tu mets juste le nom de la fonction utilisé
# Exemple
split arg1 arg2 arg3
...
[/code:1]
Connexion ou Créer un compte pour participer à la conversation.
- Luc
- Auteur du sujet
- Hors Ligne
- Nouveau membre
-
Réduire
Plus d'informations
- Messages : 12
- Remerciements reçus 0
il y a 10 ans 10 mois #19644
par Luc
Réponse de Luc sur le sujet Re:Utiliser une fonction perso. sur plusieurs scripts
Merci ça a marché niquel
.
J'ai dû transformer mes workflows en function pour que le dot sourcing puissent fonctionner, c'était de la que venait mon problème finalement.
J'ai dû transformer mes workflows en function pour que le dot sourcing puissent fonctionner, c'était de la que venait mon problème finalement.
Connexion ou Créer un compte pour participer à la conversation.
Temps de génération de la page : 0.082 secondes
- Vous êtes ici :
-
Accueil
-
forum
-
PowerShell
-
Entraide pour les débutants
- Utiliser une fonction perso. sur plusieurs scripts