Quelle est votre meilleure commande Powershell? Faisons une liste et votons pour les meilleurs!
Quelle est votre meilleure commande Powershell? Faisons une liste et votons pour les meilleurs!
Réponses:
Get-Member est le roi des applets de commande PowerShell.
Get-Member vous permet d'explorer de manière interactive les membres et types d'objets (avec le commutateur -static) des objets statiques.
J'aime avoir un script pour trouver des utilisateurs AD:
$strFilter = "(&(objectCategory=User)(sAMAccountName=[USERNAME]))";
$objSearcher = New-Object System.DirectoryServices.DirectorySearcher;
$objSearcher.SearchRoot = "LDAP://dc=[AD_Location]";
$objSearcher.Filter = $strFilter;
$objSearcher.SearchScope = "Subtree";
$objSearcher.FindALL()
Get-ADUser -filter 'Name -like "*"'
(remplacez "filter" par n'importe quoi)
En ce moment, je suis un grand fan de Get-WMIObject.
Aucune question à ce sujet - Get-Member. Je ne peux imaginer aucune session PowerShell sans l'utiliser. La découvrabilité est l'une des fonctionnalités les plus puissantes de Windows PowerShell.
C'est plus une technique qu'une applet de commande ou une fonction particulière, mais mon truc PS préféré est la construction d'objet:
$foo=""|select bar, baz, gronk|ft
vous donne
bar baz gronk
----- ----- ------
ce qui est pratique pour transformer des données non structurées en un ensemble d'objets pour un traitement ultérieur.
Un de mes favoris:
Get-Content "c: \ logfile.log" -wait
La version PowerShell du fichier journal 'tail -f'
Je vois Get-Member répertorié, ce que je dois accepter est le meilleur mais une seconde proche et tout aussi nécessaire pour moi est:
Format-List
La façon dont je l'utilise le plus souvent est après un tuyau pour me montrer toutes les valeurs des propriétés d'un objet:
$SomeObject | fl *
GM vous dira quel est l'objet et énumérera les noms et les types de ses propriétés, mais le plus souvent cela ne vous aide pas à vraiment comprendre la façon dont ces propriétés sont utilisées sans consulter la documentation qui peut être fastidieuse.
$SomeObject | Format-List *
affichera toutes les valeurs des propriétés disponibles sur l'objet afin que vous puissiez voir quelles sont leurs valeurs actuelles et commencer à rechercher les propriétés que vous souhaitez sélectionner ou utiliser pour filtrer les objets.
Je trouverai souvent qu'un objet a plusieurs propriétés qui, selon la documentation, semblent avoir les données que je veux, mais en réalité, seule l'une des propriétés contient des données ou les données de l'une d'entre elles ne correspondent pas du tout à ce que vous attendez en fonction de la documentation seule.
J'ai fait juste une petite méthode que j'ai ajoutée à mon profil. Voir http://blog.keystroke.ch/2007/08/30/diskusage-in-powershell/ .
diskusage myserver
est ma commande préférée.
En plus de Get-Member, je devrais dire Add-Member et New-Object qui vous donnent la possibilité d'utiliser le système de type extensible.
La possibilité d'ajouter des membres à n'importe quel objet à tout moment vous permet d'obtenir les informations exactes dont vous avez besoin avec la possibilité de les trier, de les grouper, de les découper, de les découper, de les exporter, ou tout ce que vous voulez en faire.