Utilisation de $_ et des filtres en PowerShell

Le problème exposé dans ce sujet a été résolu.

Bonsoir,

j’ai une problèmatique très simple en PowerShell que je ne connaît que très superficiellement.

Afin de créer des liens symboliques en PowerShell, il faut utiliser la commande suivante :

New-Item -Path C:\temp\myLink -Target  C:\Users\{me}\Documents\target.txt -ItemType SymbolicLink

Je voudrais créer une syntaxe simplifiée comme suit :

"C:\temp\myLink", "C:\Users\{me}\Documents\target.txt" | Ln

Ln est un filtre définie ainsi :

filter Ln {
     New-Item -Path $_[0] -Target  $_[1] -ItemType SymbolicLink
}

Mais cela ne fonctionne pas… Le problème vient de $_, je n’arrive pas à accéder à chaque input séparément, c’est-à-dire C:\temp\myLink et C:\Users\{me}\Documents\target.txt.

Si vous avez une idée, je suis intéressé. Merci !

En ajoutant des guillemets doubles autour de $_[0] et $_[1] ?

SpaceFox

Ah bah je m’attendais pas du tout à une pareille solution. Je m’étais embarqué dans des histoires de foreach… Mais non ça ne fonctionne pas du tout. :D

Je pense que c’est dû au fait que $_ est un objet et non un tableau… Je me renseigne…

C’est un classique en shell, donc j’espérais que ça fonctionne avec PowerShell :D

SpaceFox

Ouai c’est un peu l’enfer avec PowerShell. Il faudrait que je reprenne la doc depuis le début et que je la lise calmement mais j’ai pas trop le temps, elle est trop fouillis. J’veux juste bidouiller un peu, moi.

+0 -0
Connectez-vous pour pouvoir poster un message.
Connexion

Pas encore membre ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte