Qual è il tuo comando Powershell principale? Facciamo un elenco e votiamo i migliori!
Qual è il tuo comando Powershell principale? Facciamo un elenco e votiamo i migliori!
Risposte:
Get-Member è il re dei cmdlet di PowerShell.
Get-Member consente di esplorare in modo interattivo i membri statici "membri e tipi" (con l'opzione -static).
Mi piace avere uno script per trovare utenti 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 "*"'
(sostituisci "filter" con qualunque cosa)
Al momento sono un grande fan di Get-WMIObject.
Nessuna domanda al riguardo - Get-Member. Non riesco a immaginare alcuna sessione di PowerShell senza usarla. La rilevabilità è una delle funzionalità più potenti di Windows PowerShell.
Questa è più una tecnica che un particolare cmdlet o funzione, ma la mia cosa preferita di PS è la costruzione di oggetti:
$foo=""|select bar, baz, gronk|ft
ti dà
bar baz gronk
----- ----- ------
che è utile per trasformare i dati non strutturati in un insieme di oggetti per un'ulteriore elaborazione.
Uno dei miei preferiti:
Get-Content "c: \ logfile.log" -wait
La versione PowerShell di 'tail -f' logfile '
Vedo Get-Member elencato che devo concordare è il migliore, ma un secondo quasi altrettanto necessario per me è:
Format-List
Il modo in cui lo uso più comunemente è dopo una pipe per mostrarmi tutti i valori delle proprietà di un oggetto:
$SomeObject | fl *
GM ti dirà qual è l'oggetto ed elencherà i nomi e i tipi delle sue proprietà, ma il più delle volte questo non ti aiuta a capire veramente come vengono usate queste proprietà senza cercare la documentazione che può essere noiosa.
$SomeObject | Format-List *
genererà tutti i valori delle proprietà disponibili sull'oggetto in modo da poter vedere quali sono i loro valori correnti e iniziare a cercare le proprietà che si desidera selezionare o utilizzare per filtrare gli oggetti.
Scoprirò spesso che un oggetto ha più proprietà che in base alla documentazione sembrano avere i dati che desidero, ma in realtà solo una delle proprietà ha dati o i dati in uno di essi non sono affatto ciò che ti aspetteresti in base la sola documentazione.
Ho fatto solo un piccolo metodo che ho aggiunto al mio profilo. Vedi http://blog.keystroke.ch/2007/08/30/diskusage-in-powershell/ .
myserver diskusage
è il mio comando preferito.
Oltre a Get-Member, dovrei dire Add-Member e New-Object che ti danno la possibilità di usare l'Extensible Type System.
Essere in grado di aggiungere membri a qualsiasi oggetto in qualsiasi momento ti consente di ottenere le informazioni esatte di cui hai bisogno con la possibilità di ordinarle, raggrupparle, tagliarle, tagliarle, esportarle o qualsiasi altra cosa tu voglia farne.