Paramètres

  • Param permet de passer des arguments nommés, par contre il n’est utilisable qu’en première ligne de commande.

Erreur : Param : Le terme « Param » n’est pas reconnu comme nom d’applet de commande, fonction, fichier de script ou programme

  • Mandatory=True oblige la présence du paramètre.
  • A [switch] parameter doesn’t take a value like regular parameters. You normally set it to true or false respectively by providing or omitting the parameter :

-* Paramètres courts : PowerShell doesn’t have "short parameters", so there’s nothing to disable. PowerShell recognizes parameters by the shortest unique match, meaning -title, -t, or -ti are the same parameter. If you have 2 parameters like -title and -tag then the shortest unique match would be -ti and -ta respectively, and using -t would throw an ambiguous parameter error.

Environnement

  • get-variable permet de connaître l’état de l’ensemble des variables actuellement déclarées.
  • $env:PSModulePath : chemin de recherche des modules PowerShell.

Debug

  • $WhatIfPreference : cette variable d’environnement permet au PowerShell de dire ce qu’il va exécuter et non l’exécuter.
    PS C:\WINDOWS\system32> $WhatIfPreference=$True
    PS C:\WINDOWS\system32> echo $null > monfichier.txt
    WhatIf : Opération « Envoyer la sortie dans un fichier » en cours sur la cible « monfichier.txt ».
  • Afficher tous les éléments d’un objet :
commande | fl * 
commande | fl -pro * 
    • fl : format list -
    • fl * : affiche l’ensemble des propriétés
    • -pro : properties

Exécution

  • Exécuter un script sans modifier les paramètres de sécurité PowerShell :
Set-ExecutionPolicy -Scope Process remotesigned

Interface

  • Afficher une fenêtre de formulaire pour une commande powershell :
    show-command <commande>
Show-Comman Get-Process

Astuces

  • Somme de contrôle :
    Get-FileHash .\moniso.iso -Algorithm SHA256 | Format-List
  • Arrêt redémarrage démarrage de l’ordinateur
     Get-EventLog System -Newest 10000 | Where EventId -in 41,1074,1076,6005,6006,6008,6009,6013 | Format-Table TimeGenerated,EventId,UserName,Message -AutoSize -wrap

Source : ShellHacks.com

Liens

Outils

Accueil > Notes Techniques > Windows > [PowerShell] Aide [-mémoire]