8
votes

Est-il possible d'appeler PowerShell Cmalets de manière asynchrone?

disons que j'ai cmdlet1 et cmdlet2, les deux sont des tâches longues. Normalement, j'aurais un fichier de commandes qui appelle les deux cmdlets dans l'ordre suivant: xxx

est là quand même pour les libérer de manière asynchrone?


0 commentaires

3 Réponses :


0
votes

Essayez:

cmd.exe /c call powershell cmdlet1
cmd.exe /c call powershell cmdlet2


1 commentaires

Celles-ci seront toujours exécutées dans la fenêtre de la console actuelle l'une après l'autre. CMD / C START POWERSHELL cmdlet1 fonctionne, cependant.



9
votes

Si vous êtes sur PowerShell 2, vous pouvez utiliser des travaux d'arrière-plan.

de l'aide:

environ_jobs

Lorsque vous démarrez un travail d'arrière-plan, l'invite de commande retourne immédiatement, Même si le travail prend un temps prolongé pour compléter. Vous pouvez continuer à travailler dans la session sans interruption alors que le travail fonctionne.

Vous pouvez donc utiliser xxx

Cependant, vous devez disposer de PowerShell configuré pour être remote, même lors de l'exécution du travail localement.

J'ai aussi trébuché sur ceci:


1 commentaires

La nouvelle version de Split-Job semble être ici: github.com/ajansveld/split-job/blob/master/split-job.ps1



1
votes

Si vous devez rester sur PowerShell V1, voir si vous pouvez utiliser le PSEventting Snap-in .


0 commentaires