Come cercare una stringa in più file e restituire i nomi dei file in PowerShell

Come cercare una stringa in più file e restituire i nomi dei file in PowerShell
PowerShell è un'utilità di Windows che consente di cercare le stringhe in più file. Inoltre, restituisce i nomi dei file che contengono la stringa corrispondente. PowerShell usa "Select-String" E "SLS"Cmdlet per cercare stringhe in più file. Più specificamente, "Select-String" è equivalente a "grep"Comando di Linux, che viene utilizzato per trovare modelli di testo nei file.

Questo post dimostrerà vari metodi per cercare una stringa in più file.

Come cercare una stringa in file e recuperare i nomi dei file in PowerShell?

Questi metodi arruolati possono essere utilizzati per cercare una stringa in più file:

  • Select-String CMDlet.
  • SLS CMDLET.

Metodo 1: cerca una stringa in più file e restituisce i nomi dei file utilizzando il cmdlet "Select-String"

La stringa può essere cercata in più file utilizzando "Select-String"Cmdlet. Questo cmdlet seleziona le stringhe e cerca modelli di testo in più file come segue:

> Get -childitem C: \ doc -Recurse | Select -String -Pattern "LinuxHint"

Qui:

  • "Get-childitem"CMDLET viene utilizzato per recuperare il file dalla posizione specificata.
  • "-ricorso"La flag costringe la ricerca per trovare la stringa corrispondente nei sotto-conduttori.
  • "|"L'operatore di tubi viene utilizzato per inviare l'output del comando come input del comando successivo.
  • "-modello"Il flag definisce la stringa specifica da cercare.

Produzione

L'output dato indica che secondo il modello specificato, è stata restituita la stringa abbinata con i nomi dei file pertinenti.

Metodo 2: cerca una stringa in più file e restituisce i nomi dei file utilizzando il cmdlet "SLS"

"SLS"È un alias del"Select-String"Cmdlet e funziona anche lo stesso. IL "SLSIl comando "è usato con il"ls"Cmdlet.

Abbiamo fornito un esempio per dimostrare il funzionamento del "SLS"CMDLET per cercare una stringa in più file:

> ls c: \ doc -r | SLS "Linuxhint"

Qui:

  • "ls"CMDLET viene utilizzato per elencare i file e le cartelle.
  • "-R"È l'alias del"-ricorso"CMDLET utilizzato per forzare la ricerca per trovare la stringa nei sottocolleri:

Si può osservare che i nomi dei file con la stringa specificata sono stati recuperati correttamente.

Conclusione

Per cercare una stringa in più file in PowerShell, usa il “Select-String" o il "SLS"Cmdlets. Nel primo metodo, utilizzare la "stringa selezionata" con il cmdlet "get-childitem", "-recurse" e flag "-pattern" e pipeline (|) che unisce l'output di un comando all'input dell'altro. Nel comando "SLS", usa tutti gli alias dei comandi utilizzati nel primo approccio. Perché "SLS" è l'alias del cmdlet "selezionata". Questo post ha presentato diversi metodi per la ricerca di una stringa in più file.