¿Cuál es el equivalente del comando de búsqueda de Unix en Windows?
Veo que find.exeen Windows es más como un grep. Estoy especialmente interesado en el equivalente de
find . -name [filename]
¿Cuál es el equivalente del comando de búsqueda de Unix en Windows?
Veo que find.exeen Windows es más como un grep. Estoy especialmente interesado en el equivalente de
find . -name [filename]
Respuestas:
- alternativa -
ejemplo
- alternativa -
fuente
dir c: /s example.txttambién funciona.dir /s C:\example.txtestá.\bpara breve (solo rutas de salida);find <folder> -name <pattern>->dir /s /b <folder><pattern>. Por ejemplo,find /tmp -name *.txt->dir \s \b C:\temp\*.txt. Sin embargo,dirsiempre devuelve una lista de rutas absolutas, mientras quefindsiempre proporciona rutas con el prefijo<folder>El
Find-ChildItemCmdlet en Windows Powershell es un equivalente del comando de búsqueda de Unix / Linuxhttp://windows-powershell-scripts.blogspot.in/2009/08/unix-linux-find-equivalent-in.html
Algunas de las opciones Find-ChildItem
Find-ChildItem -Type f -Name ".*.exe"Find-ChildItem -Type f -Name "\.c$" -Exec "Get-Content {} | Measure-Object -Line -Character -Word"Find-ChildItem -Type f -EmptyFind-ChildItem -Type f -Empty -OutObjectFind-ChildItem -Type f -Empty -DeleteFind-ChildItem -Type f -Size +9M -DeleteFind-ChildItem -Type dFind-ChildItem -Type f -Size +50m -WTime +5 -MaxDepth 1 -DeleteDivulgación: soy el desarrollador de
Find-ChildItemcmdletfuente
Find-ChildItemno es un cmdlet oficial y no está incluido en PowerShell; tienes que descargar este cmdlet del OneDrive de algún chico . No hay diferencia entre eso y solo descargar bash, cygwin, unixutils o cualquier otro programa que simplemente te permita ejecutar UNIXfind.Sin cmdlets adicionales instalados, simplemente puede usar
Get-ChildItem:fuente
dir,lsogci, a menos que esté escribiendo un script.Si está utilizando la búsqueda de Unix para buscar archivos en una jerarquía de directorios, la forma de Powershell es usar el cmdlet
Get-ChildItem(alias isgci) y filtrar los resultados con el cmdletWhere-Object(alias iswhere).Por ejemplo, para buscar todos los archivos (comenzando
C:\Users\y de forma recursiva) con la palabra 'esencial' en su nombre, use lo siguiente:La
-likeopción le permite usar comodines para la coincidencia de patrones.fuente
Este no es exactamente el hallazgo de GNU, pero coincide más estrechamente con la filosofía de la línea de comando de Linux en powershell:
Ejemplo:
Nota: Todo lo que se devuelve después de "|% FullName" es una cadena, en lugar de un objeto.
También puede usar el Operador Where, "?", Sin embargo, es más trabajo y no mucho más rápido:
Aquí hay un atajo rápido:
fuente