Tabulation

Windows PowerShell

Pour une introduction complète à Windows PowerShell, n'oubliez pas d'afficher les webcasts sur demande de Windows PowerShell Week

Tabulation

L'un des plus gros avantages de Windows PowerShell vient du fait qu'il vous permet de vous asseoir devant l'invite de commande et de taper tout ce que vous voulez ; vous n'avez pas besoin de boîtes de dialogue, de clics de souris ou d'interface graphique. En revanche, l'un des inconvénients majeurs de Windows PowerShell est que vous devez vous asseoir devant l'invite de commande et tout taper : Vous ne pouvez pas profiter des boîtes de dialogue ou des clics de souris ou autres raccourcis d'interface graphique.

En d'autres termes, si vous êtes de ceux qui aiment taper des commandes à l'invite de commande, vous adorerez Windows PowerShell. Et si vous n'aimez pas taper ou que vous trouvez ça plutôt difficile ? Dans ce cas, vous n'avez pas de chance, diriez-vous ?

Eh bien non, pas tout à fait ! Il est vrai que vous devez utiliser le clavier pour taper des commandes dans Windows PowerShell. Toutefois, Windows PowerShell inclut également des fonctionnalités qui peuvent réduire de façon spectaculaire la quantité de frappe requise. Parmi ces fonctionnalités, l'une des plus remarquables est la tabulation.

La tabulation n'est pas une fonctionnalité nouvelle ; en fait beaucoup d'entre vous êtes probablement familiers avec les capacités de tabulation intégrées à Cmd.exe. Par exemple, supposons que vous vouliez passer au dossier C:\Documents and Settings. Pour ce faire, vous devriez taper la commande toute entière, n'est-ce pas ?

        cd "c:\documents and settings"
      

Bien sûr, si vous le voulez ! Mais vous pouvez aussi taper uniquement les caractères suivants et appuyer sur la touche TAB :

        cd c:\d
      

Si le dossier Documents and Settings est le seul dossier se trouvant dans la racine du lecteur C dont le nom commence par la lettre D, le tour est joué : Appuyez sur ENTRÉE et la commande d'environnement remplira automatiquement le reste du chemin pour vous (et, qui mieux est, insèrera également les guillemets doubles). Et s'il y avait trois ou quatre dossiers dont les noms commencent par la lettre D ? Pas de problème : Continuez à appuyer sur la touche TAB et la commande d'environnement parcourra toute la série de dossiers dont les noms commencent par la lettre D. Lorsque vous trouvez votre dossier, appuyez sur ENTRÉE et la commande d'environnement s'occupera du reste.

Windows PowerShell possède exactement les mêmes capacités pour les chemins de fichiers et dossiers. Vous souhaitez passer au dossier C:\Documents and Settings ? Il vous suffit de taper les caractères suivants et d'appuyer sur la touche TAB :

        cd c:\d
      

Le cas échéant, maintenez la touche TAB enfoncée jusqu'à ce que le chemin C:\Documents and Settings apparaisse. Appuyez ensuite sur ENTRÉE et, comme par magie, vous serez immédiatement transporté au dossier Documents and Settings.

N'applaudissez pas, vous n'avez encore rien vu ! Supposons que vous souhaitiez utiliser la Cmdlet Get-AuthenticodeSignature. Si vous êtes jeune et en bonne condition physique, vous pouvez taper toute la Cmdlet vous-même. Si vous êtes riche, vous pouvez sous-traiter cette tâche et laisser quelqu'un d'autre faire le travail pour vous. Mais si vous êtes paresseux, il vous suffit de taper les caractères suivants et d'appuyer sur la touche TAB :

        get-au
      

C'est cela : Dans PowerShell de Windows, la tabulation fonctionne non seulement avec les chemins de fichiers et dossiers mais aussi avec les noms Cmdlet. Et en parlant de Cmdlets, s'agirait-il de Cmdlet Get-PSSnap-in ? Ou serait-ce plutôt Get-PSSnapin ? Ou encore Get-PowerShellSnapin ? En toute honnêteté, nous ne nous en souvenons pas. Mais peu importe. Il vous suffit de taper les caractères suivants et de commencer à appuyer sur la touche TAB :

        get-p
      

En un de rien de temps, vous trouverez la bonne réponse : Get-PSSnapin.

La tabulation fonctionne également avec les paramètres Cmdlet. Par exemple, la Cmdlet Get-Help inclut un paramètre appelé -detailed qui renvoie une aide détaillée sur une rubrique (avec des exemples). Vous aimez l'aide détaillée mais vous détestez le fait d'avoir à taper –detailed ? Dans ce cas, essayez cette combine pour obtenir une aide détaillée sur la Cmdlet Get-ChildItem :

  1. Tapez get-h et appuyez sur TAB.

  2. Appuyez sur la barre d'espacement et tapez get-ch puis appuyez sur TAB.

  3. Appuyez sur la barre d'espacement et tapez puis appuyez sur TAB. Continuez à appuyez sur la touche TAB jusqu'à ce que vous voyez apparaître –Detailed et appuyez sur ENTRÉE.

Plutôt cool, non ?

Et voici un autre raccourci pour vous. En ce qui concerne les paramètres Cmdlet, il vous suffit de taper une partie du nom du paramètre dont Windows PowerShell a besoin pour savoir exactement le paramètre auquel vous faites allusion. Par exemple, la Cmdlet Get-ChildItem inclut les paramètres suivants :

  • -codeSigningCert

  • -Debug

  • -ErrorAction

  • -ErrorVariable

  • -exclude

  • -filter

  • -force

  • -include

  • -literalPath

  • -name

  • -OutVariable

  • -path

  • -recurse

  • -Verbose

Avez-vous besoin d'utiliser le paramètre –codeSigningCert ? Si vous le voulez, vous pouvez taper le nom du paramètre tout entier comme suit :

        get-childitem cert:\. -recurse -codesigningcert
      

Par contre, vu que le paramètre –codeSigningCert est le seul paramètre Get-ChildItem dont le nom commence par la lettre C, vous pouvez ajouter ce paramètre en tapant simplement -c :

        get-childitem cert:\. -recurse -c
      

Cool, non ? Ah, et nous n'avons pas mentionné le fait que la tabulation fonctionnait aussi pour les noms de variables ! Supposons que vous soyez un peu tête en l'air et que vous appeliez une variable $TheMainVariableThatGetsUsedInMyScript. Cela représente beaucoup de caractères à taper, surtout pour un nom de variable. Par bonheur, vous n'êtes pas obligé d'entrer tout ça. Il vous suffit de taper les caractères suivants et d'appuyer sur TAB à chaque fois que vous avez besoin de faire référence à cette variable :

        $th
      

Impressionnant ! Et en voici une dernière ! Supposons que vous utilisiez la Cmdlet New-Object pour créer une instance de Microsoft Excel :

        $a = new-object -comobject excel.application
      

Tapez les caractères suivants puis commencez à appuyer sur la touche TAB et voyez ce qui se passe :

        $a.
      

Maintenant vous pouvez applaudir !