find - Buscar texto en archivos

Mantenido el

Buscar un texto específico en archivos o en la salida de comandos es muy útil al trabajar con el símbolo del sistema o con archivos por lotes.

En este artículo se presenta cómo buscar texto con el comando find.

Conceptos básicos del comando find

El comando find sirve para buscar un texto especificado en un archivo o en la salida de un comando.

Puede extraer y mostrar las líneas que coinciden con la condición de búsqueda.

Uso básico en el símbolo del sistema

Como ejemplo, comprobemos si fruits.txt contiene la palabra Manzana.

Primero, revise el contenido del archivo fruits.txt.

- □ ×
Ícono de la consola de comandos
Consola de comandos
Microsoft Windows [Version xx.x.xxxxx.xxx]
(c) 2026 Ribbit App Development All rights reserved.
 
C:\users\user>type fruits.txt
Esta es una lista de frutas
Incluye Manzana
También hay plátano
Aquí también hay Manzana
C:\users\user>

A continuación, extraiga con el comando find solo las líneas que contienen “Manzana”.

- □ ×
Ícono de la consola de comandos
Consola de comandos
Microsoft Windows [Version xx.x.xxxxx.xxx]
(c) 2026 Ribbit App Development All rights reserved.
 
C:\users\user>find "Manzana" fruits.txt
---------- FRUITS.TXT
Incluye Manzana
Aquí también hay Manzana
C:\users\user>
おすすめ書籍※ 広告を含む場合があります
中小企業経営者のためのRPA入門 RPA導入を成功させる方法

中小企業経営者のためのRPA入門 RPA導入を成功させる方法

60分でわかる! AIエージェント 超入門

60分でわかる! AIエージェント 超入門

コマンドラインの黒い画面が怖いんです。

コマンドラインの黒い画面が怖いんです。

知識・才能ゼロでもらく~に月10万円稼ぐ! よくわかるAI副業超入門

知識・才能ゼロでもらく~に月10万円稼ぐ! よくわかるAI副業超入門

De esta forma, al ejecutar el comando find, solo se muestran las líneas del archivo fruits.txt que contienen “Manzana”.

Para obtener más información sobre el comando type usado antes, consulte la siguiente página.

Uso básico en un archivo por lotes

@echo off
setlocal

find "Error" log.txt

endlocal
exit

Al ejecutar este archivo por lotes, se muestran las líneas del archivo log.txt que contienen la cadena “Error”.

Sintaxis del comando find

La sintaxis básica del comando find es la siguiente.

find [/v] [/c] [/n] [/i] [/off[line]] "cadena" [[unidad:][ruta]archivo[...]]

Descripción de los parámetros

ParámetroDescripción
/vMuestra todas las líneas que no contienen la cadena especificada
/cCuenta las líneas que contienen la cadena especificada y muestra el total
/nMuestra el número de línea del archivo antes de cada línea
/iNo distingue entre mayúsculas y minúsculas al buscar
/off[line]Busca también en los archivos con el atributo sin conexión, en lugar de omitirlos
"cadena"Especifica la cadena que se va a buscar (debe ir entre comillas dobles)
archivoEspecifica el archivo en el que se va a buscar
/?Muestra la ayuda en el símbolo del sistema
チェック
La cadena siempre debe ir entre comillas dobles (").

Ejemplos de uso del comando find

Búsqueda básica de una cadena

Busca una cadena específica en un archivo.

- □ ×
Ícono de la consola de comandos
Consola de comandos
Microsoft Windows [Version xx.x.xxxxx.xxx]
(c) 2026 Ribbit App Development All rights reserved.
 
C:\users\user>find "Tokyo" cities.txt
---------- CITIES.TXT
Tokyo is the capital of Japan
C:\users\user>

Búsqueda sin distinguir mayúsculas y minúsculas

Con la opción /i, puede buscar sin distinguir entre mayúsculas y minúsculas.

- □ ×
Ícono de la consola de comandos
Consola de comandos
Microsoft Windows [Version xx.x.xxxxx.xxx]
(c) 2026 Ribbit App Development All rights reserved.
 
C:\users\user>find /i "tokyo" cities.txt
---------- CITIES.TXT
Tokyo is the capital of Japan
I visited tokyo last year
C:\users\user>

Mostrar números de línea

Con la opción /n, se muestra el número de línea antes de cada línea.

- □ ×
Ícono de la consola de comandos
Consola de comandos
Microsoft Windows [Version xx.x.xxxxx.xxx]
(c) 2026 Ribbit App Development All rights reserved.
 
C:\users\user>find /n "Error" log.txt
---------- LOG.TXT
[5]Error: No se encuentra el archivo
[12]Advertencia: Se produjo un Error
C:\users\user>

Mostrar las líneas que no contienen la cadena especificada

Con la opción /v, se muestran las líneas que no contienen la cadena especificada.

- □ ×
Ícono de la consola de comandos
Consola de comandos
Microsoft Windows [Version xx.x.xxxxx.xxx]
(c) 2026 Ribbit App Development All rights reserved.
 
C:\users\user>find /v "Éxito" result.txt
---------- RESULT.TXT
Error: Falló el procesamiento
Advertencia: Se agotó el tiempo de espera
C:\users\user>

Contar las líneas coincidentes

Con la opción /c, se cuenta el número de líneas que contienen la cadena especificada.

- □ ×
Ícono de la consola de comandos
Consola de comandos
Microsoft Windows [Version xx.x.xxxxx.xxx]
(c) 2026 Ribbit App Development All rights reserved.
 
C:\users\user>find /c "Advertencia" log.txt
---------- LOG.TXT: 3
C:\users\user>

Búsqueda en varios archivos

Puede buscar en varios archivos a la vez.

- □ ×
Ícono de la consola de comandos
Consola de comandos
Microsoft Windows [Version xx.x.xxxxx.xxx]
(c) 2026 Ribbit App Development All rights reserved.
 
C:\users\user>find "config" file1.txt file2.txt file3.txt
---------- FILE1.TXT
config=enabled
---------- FILE2.TXT
config_version=2.0
C:\users\user>

Búsqueda en archivos con comodines

El comando find no admite comodines (* o ?) en los nombres de archivo. Si ejecuta algo como find "ERROR" *.log, aparece el error “No se encuentra el archivo”.

Para buscar en varios archivos a la vez, pase los archivos uno por uno con el comando for.

- □ ×
Ícono de la consola de comandos
Consola de comandos
Microsoft Windows [Version xx.x.xxxxx.xxx]
(c) 2026 Ribbit App Development All rights reserved.
 
C:\users\user>for %f in (*.log) do @find /i "ERROR" "%f"

En un archivo por lotes, escriba %f como %%f. Para obtener más información sobre el comando for, consulte la siguiente página.

Combinación con tuberías

El comando find puede buscar en la salida de otros comandos mediante una tubería (|).

Buscar en el resultado del comando dir

- □ ×
Ícono de la consola de comandos
Consola de comandos
Microsoft Windows [Version xx.x.xxxxx.xxx]
(c) 2026 Ribbit App Development All rights reserved.
 
C:\users\user>dir | find "txt"
2025/10/03 10:30 1,234 readme.txt
2025/10/03 11:15 5,678 notes.txt
C:\users\user>

Buscar en el resultado del comando tasklist

- □ ×
Ícono de la consola de comandos
Consola de comandos
Microsoft Windows [Version xx.x.xxxxx.xxx]
(c) 2026 Ribbit App Development All rights reserved.
 
C:\users\user>tasklist | find "chrome"
chrome.exe 12345 Console 1 123,456 K
C:\users\user>

Buscar servicios en ejecución

- □ ×
Ícono de la consola de comandos
Consola de comandos
Microsoft Windows [Version xx.x.xxxxx.xxx]
(c) 2026 Ribbit App Development All rights reserved.
 
C:\users\user>sc query | find "RUNNING"
STATE : 4 RUNNING
C:\users\user>

Ejemplos prácticos en archivos por lotes

Extraer errores de un archivo de registro

@echo off
setlocal

echo ========================================
echo Buscando errores en el archivo de registro
echo ========================================
echo.

find /n "Error" application.log

if errorlevel 1 (
    echo No se encontraron errores
) else (
    echo Se detectaron errores
)

endlocal
exit

Comprobar un elemento específico de un archivo de configuración

@echo off
setlocal

echo Comprobando la configuración de conexión a la base de datos...

find "database.url" config.properties > nul
if errorlevel 1 (
    echo Error: No se encontró la configuración de la base de datos
    exit /b 1
) else (
    echo Se encontró la configuración de la base de datos
    find "database.url" config.properties
)

endlocal
exit

Buscar entradas de una fecha específica en varios archivos de registro

@echo off
setlocal

set SEARCH_DATE=2025-10-03

echo Buscando entradas de registro de %SEARCH_DATE%...
echo.

for %%f in (*.log) do (
    echo [Buscando en %%f]
    find "%SEARCH_DATE%" "%%f"
    echo.
)

endlocal
exit

Comprobar el estado de un servicio

@echo off
setlocal

set SERVICE_NAME=Winmgmt

sc query %SERVICE_NAME% | find "RUNNING" > nul 2>&1
if errorlevel 1 (
    echo El servicio %SERVICE_NAME% está detenido
) else (
    echo El servicio %SERVICE_NAME% se está ejecutando
)

endlocal
exit

Códigos de salida

El comando find devuelve los siguientes códigos de salida según el resultado de la ejecución.

Código de salidaDescripción
0Se encontró la cadena de búsqueda
1No se encontró la cadena de búsqueda
2No se encontró el archivo de búsqueda o se especificó un modificador no válido

Puede usar estos códigos de salida para realizar bifurcaciones condicionales en un archivo por lotes.

Notas

チェック

El comando find no permite usar comodines (* o ?) ni en la cadena de búsqueda ni en el nombre de archivo. Si desea buscar con expresiones regulares o comodines, use el comando findstr.

チェック

Si desea incluir comillas dobles en la cadena de búsqueda, debe duplicar cada comilla. Ejemplo: find """quoted text""" file.txt

Diferencias con el comando findstr

El comando find es adecuado para búsquedas de cadenas simples, pero si desea realizar búsquedas más avanzadas, se recomienda usar el comando findstr.

Principales ventajas del comando findstr:

  • Compatibilidad con expresiones regulares
  • Posibilidad de especificar varias cadenas de búsqueda
  • Posibilidad de usar comodines en los nombres de archivo
  • Posibilidad de búsqueda recursiva dentro de una carpeta (/s)

Cuando no se puede buscar por caracteres ilegibles

El comando find puede no buscar correctamente texto en japonés en archivos con una codificación de caracteres, como UTF-8, distinta de la página de códigos.

Si los resultados de la búsqueda muestran caracteres ilegibles o no se encuentran líneas que deberían coincidir, pruebe a cambiar la página de códigos con el comando chcp.

In preparation
La página vinculada está actualmente en construcción. Por favor, espere un momento.

Resumen

El comando find es una herramienta útil para buscar texto específico en archivos o en la salida de comandos.

Características principales:

  • Sintaxis sencilla y fácil de usar
  • Posibilidad de buscar sin distinguir mayúsculas y minúsculas
  • Búsqueda flexible combinándolo con tuberías
  • Adecuado para la automatización en archivos por lotes
  • Posibilidad de bifurcación condicional mediante códigos de salida

Se puede aprovechar en diversas situaciones, como el análisis de archivos de registro, la comprobación de archivos de configuración y el filtrado de la salida de comandos.

#Símbolo del sistema #Archivos por lotes #Línea de comandos #Comandos