Foreach erreur de manipulation en Powershell
Est-il un moyen de les attraper et de les enregistrer de mauvais noms dans une boucle foreach? J'ai le texte suivant:
$CollectionName = "Import Test"
$PCName = Import-Csv "C:\Powershell\import_test.csv"
foreach($computer in $PCName) {
Add-CMDeviceCollectionDirectMembershipRule -CollectionName $CollectionName -ResourceID $(Get- CMDevice -Name $computer.computername).ResourceID
}
Ce que je voudrais faire est que si il y a une mauvaise réputation dans le csv au lieu d'afficher le message "Impossible de valider l'argument de" l'erreur que j'ai actuellement, tout juste sortie de l'échec du nom d'un fichier texte.
Grâce
Avez-vous joué avec
-ErrorAction
? Aussi, voici une page sur le rattrapage des exceptions dans powershell: stackoverflow.com/questions/4691874/...OriginalL'auteur Michael | 2013-07-22
Vous devez vous connecter pour publier un commentaire.
Oui. Mettre la déclaration(s) à l'intérieur de la boucle dans une
try..catch
bloc:Si l'erreur est un non-terminaison d'erreur (c'est à dire affiche un message d'erreur, mais n'est pas pris en
try..catch
), vous pouvez la transformer en une terminaison d'erreur en ajoutant-ErrorAction Stop
à la commande ou par la mise en$ErrorActionPreference = "Stop"
.OriginalL'auteur Ansgar Wiechers