Qual è il tuo comando o script Powershell preferito per l'amministrazione del sistema? [chiuso]


16

Qual è il tuo comando Powershell principale? Facciamo un elenco e votiamo i migliori!


@Jon: intendevi "cmdlet"?
dance2die,

Dovrebbe essere etichettato come soggettivo
halr9000,

Risposte:


13

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).


5

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()

2
Questo può essere fatto in una riga con i cmdlet di Quest AD: sono gratuiti e super utili! quest.com/activeroles-server/arms.aspx
Doug Chase,


1
@Doug Chase Sì, è gratuito, ma alcune organizzazioni non ti permetteranno di utilizzare software non approvato, con tempi di consegna davvero pessimi per ottenere l'approvazione delle cose, ma gli script che scrivi tu stesso sono immediatamente disponibili.
Orihara,

1
Se qualcuno lo vede ora e pensa che questo sia un buon script, se hai gli strumenti RSAT installati, puoi farlo con un one-liner in Powershell 2.0: Get-ADUser -filter 'Name -like "*"'(sostituisci "filter" con qualunque cosa)
Mark Henderson

3

Devo andare con get-help. Questo cmdlet è la chiave per trovare la funzionalità di altri cmdlet. Un secondo vicino sarebbe get-member.



2

"Test-Path" lo trova utile per verificare se i dati sono già presenti o se è necessario aggiungere un valore predefinito.



1

CD (Change-Location) - Fondamentalmente posso navigare nel registro come se fosse un file system. in pratica puoi farlo per tutti i provider PowerShell (restituiti da Get-PSProviders)

cd HKLM:\

1

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.


1

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.


1

Uno dei miei preferiti:

Get-Content "c: \ logfile.log" -wait

La versione PowerShell di 'tail -f' logfile '


1
Questo non sembra funzionare per me. Ho eseguito questo comando su un file CSV in cui un altro comando PowerShell stava scrivendo i dati e non visualizzava gli aggiornamenti del file mentre veniva modificato, ma mi mostrava solo le linee del file come esisteva quando ho eseguito il comando e quindi ho appena aspettato CTRL + Break.
Chris Magnuson,

1

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.



0

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.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.