Comment puis-je passer des arguments ou des variables d'un script powershell à l'autre?

Dans cmd, je pouvais passer des arguments à partir d'une chauve-souris à l'autre en les inscrivant dans le après les à-être-exécuter le fichier bat a été dit. Puis l'exécuter en bat les a reçus en tant que %1, %2, %3, etc. Peut-on le faire en Powershell?

J'ai un script ps1,script1, qui invite l'utilisateur à un emplacement. Ce script a été pris en charge. Cet emplacement est stocké dans une variable; $loc. Dans le premier script, il y a un point que l'utilisateur peut choisir une option qui permettra d'exécuter un autre script ps1, script2, qui a lui-même plus d'options. Je veux passer $loc à la script2 de script1.

Dans script1, j'ai essayé les suivantes:

param ($loc)
start-process "\script2.ps1" -ArgumentList $loc
start-process "\script2.ps1" -$loc
start-process "\script2.ps1"

Alors est-script 2

args[0]
$loc

Je sais que je suis probablement juste de ne pas comprendre les arguments de passage. C'est que l'autre des options d'appels d'une chauve-souris de script. Que me sert -ArgumentList $loc et il passe très bien. - Je choisir que l'argument de la chauve-souris script à l'aide de "Set loc = %1"

J'ai oublié d'ajouter, je suis en cours d'exécution avec des start-processus, parce que je veux l'exécuter dans une fenêtre séparée. Est-il une meilleure façon de faire, qui transmet des variables, qui démarre le script dans une fenêtre distincte de celle déjà en cours d'exécution.
Double Possible de Charger des variables à partir d'un autre script powershell

OriginalL'auteur user3377627 | 2014-11-04