Questo post mira a esplorare l'uso primario e avanzato del cmdlet PowerShell Select-String.
Come utilizzare PowerShell Select-String Cmdlet
In PowerShell, il cmdlet selezionato può essere utilizzato per cercare un singolo modello o più schemi nel file o nella stringa. La sintassi seguente viene utilizzata per fare riferimento a CMDLET selezionata:
Select-String
I seguenti parametri possono essere utilizzati con il cmdlet selezionato:
Esempio 1: per selezionare il modello specifico (testo) in un file
Il codice di esempio è il seguente per selezionare il modello (i.e., testo/stringa) in “Campione100.CSV" file. In primo luogo, il percorso assoluto del "Campione100.CSV"Viene dato dopo il"-Sentiero"Parametro. Successivamente, il modello "Segno"È impostato utilizzando il parametro"-Modello":
Select -String -Path "C: \ Users \ PowerShell \ Documents \ Sample \ Sample100.CSV "-Pattern" Mark "
Il modello era "Segno"E si osserva che la stringa selezionata ha stampato la linea (insieme al numero di linea) che contiene il"Segno" dentro.
Esempio 2: per selezionare i modelli multipli (testo) in un file
È possibile selezionare o trovare più schemi all'interno del file. Per fare ciò, il testo da cercare viene fornito dopo "-Modello"Parametro. Il comando seguente cerca il "Segno" E "Peter"Parole chiave all'interno del"Campione.CSV" file:
Select -String -Path "C: \ Users \ PowerShell \ Documents \ Sample \ Sample100.CSV "-Pattern" Mark "," Peter "
Come puoi vedere, quelle righe sono stampate che contengono Mark o Peter.
Esempio 3: per selezionare solo i record limitati dei modelli specificati (testo) in un file
Il cmdlet selezionato può essere utilizzato per cercare il modello specifico in un file, ma verrebbe cercato solo il numero limitato di istanze. Nell'esempio a testa di testa, il ".CSV"Il file viene filtrato per il modello"Segno". Tuttavia, il limite è impostato su 2 usando il "-Primo"Parametro:
Select -String -Path "C: \ Users \ PowerShell \ Documents \ Sample \ Sample100.CSV "-Pattern" Mark "| Select -Object * -First 2
Nell'output sopra, le prime due occorrenze del "Segno"La parola chiave viene visualizzata nel terminale di PowerShell.
Esempio 4: per selezionare i pattern nelle colonne specificate
Il cmdlet selezionato può essere utilizzato con l'obiezione selezionata per selezionare corrispondere allo schema e restituire proprietà specifiche della linea contenente tali schemi. Per questo, la corrispondenza del pattern è specificata nel cmdlet select-string e i filtri verranno applicati nell'object select.
Nel nostro caso, il comando di esempio seguente esercita il "Select-String"Cmdlet per abbinare i modelli"Peter" O "Phil" in un File CSV. Questo comando selezionato viene quindi convocato Seleziona Object cmdlet per ottenere il LINEGNUMER, MOTORE, FILENAME, E Linea che contiene i modelli Peter o Phil:
Select -String -Path "C: \ Users \ PowerShell \ Documents \ Sample \ Sample100.CSV "-Pattern" Peter "," Phil "| Linenumber Select -Object, Pattern, FileName, Linea
Dall'output si osserva che il lino, il motivo, il nome file e le linee sono stampati che contengono i motivi, Peter o Phil.
Esempio 5: per selezionare i pattern (testo) "Case Sensitive" in un file
Puoi abbinare un modello con "-Maiuscole e minuscole"Parametro per considerare anche il caso della lettera. Il comando di esempio cerca le righe che contengono "PETER":
Select -String -Path "C: \ Users \ PowerShell \ Documents \ Sample \ Sample100.CSV "-Pattern" Peter "-CaseSentive
Come puoi vedere, vengono stampati solo tre record che contengono la parola chiave Peter.
Esempio 6: per selezionare i pattern senza eguali (testo) in un file
Con l'aiuto del "-Non corrisponde"Parametro, possiamo selezionare solo quei record che non corrispondono alle parole chiave specifiche. Nell'esempio seguente, abbiamo specificato due schemi ("Segno" E "Peter") nel parametro -notmatch:
Select -String -Path "C: \ Users \ PowerShell \ Documents \ Sample \ Sample100.CSV "-Pattern" Mark "," Peter "-Notmatch
Come si può vedere nei record sopra, il record stampato sulla console non contiene "Segno" né "Peter".
Conclusione
In PowerShell, il cmdlet PowerShell Select-String viene utilizzato per trovare il testo/pattern specificato nel file. L'uso del comando Select-String può essere migliorato utilizzando parametri diversi (-notmatch, -casesitive) e proprietà (nome file, riga, pattern). Inoltre, è possibile estendere l'uso del cmdlet selezionata utilizzandolo con Object Select. Hai imparato il funzionamento del cmdlet selezionato e dei suoi casi d'uso in vari scenari.