J'ai vu le symbole @ utilisé dans PowerShell pour initialiser les tableaux. Que signifie exactement le symbole @ et où puis-je en savoir plus?
syntax
powershell
GrahamMc
la source
la source
Dans PowerShell V2, @ est également l' opérateur Splat .
la source
Bien que les réponses ci-dessus fournissent la plupart de la réponse, il est utile - même si tard à la question - de fournir la réponse complète, à savoir:
Sous-expression de tableau (voir about_arrays )
Force la valeur à être un tableau, même si un singleton ou un nul, par exemple
$a = @(ps | where name -like 'foo')
Initialiseur de hachage (voir about_hash_tables )
Initialise une table de hachage avec des paires clé-valeur, par exemple
$HashArguments = @{ Path = "test.txt"; Destination = "test2.txt"; WhatIf = $true }
Splatting (voir about_splatting )
Appelons une applet de commande avec des paramètres d'un tableau ou d'une table de hachage plutôt que les paramètres énumérés individuellement plus habituels, par exemple en utilisant la table de hachage juste au-dessus,
Copy-Item @HashArguments
Ici les chaînes (voir about_quoting_rules )
Créons des chaînes avec des guillemets facilement incorporés, généralement utilisées pour les chaînes multilignes, par exemple:
Parce que ce type de question ( que signifie la notation `` x '' dans PowerShell? ) Est si courant ici sur StackOverflow ainsi que dans de nombreux commentaires de lecteurs, j'ai rassemblé un lexique de la ponctuation PowerShell, juste publié sur Simple-Talk.com. Lisez tout sur @ ainsi que sur% et # et $ _ et? et plus encore sur le Guide complet de la ponctuation PowerShell . Attaché à l'article se trouve ce tableau mural qui vous donne tout sur une seule feuille:
la source
Vous pouvez également encapsuler la sortie d'une applet de commande (ou d'un pipeline)
@()
pour vous assurer que ce que vous récupérez est un tableau plutôt qu'un seul élément.Par exemple, dir renvoie généralement une liste, mais selon les options, il peut renvoyer un seul objet. Si vous prévoyez de parcourir les résultats avec un objet foreach, vous devez vous assurer de récupérer une liste. Voici un exemple artificiel:
Encore une chose ... un tableau vide (comme pour initialiser une variable) est noté
@()
.la source
L'opérateur d'éclaboussures
Pour créer un tableau, nous créons une variable et assignons le tableau. Les tableaux sont signalés par le symbole «@». Prenons la discussion ci-dessus et utilisons un tableau pour se connecter à plusieurs ordinateurs distants:
Ils sont utilisés pour les tableaux et les hachages.
Tutoriel PowerShell 7: Accumuler, rappeler et modifier des données
Littéraux de tableau dans PowerShell
la source