Tuberías y filtros

Mantenido el

En el símbolo del sistema puedes pasar la salida de un comando a otro como su entrada. Este mecanismo se llama tubería (pipe).

Con las tuberías puedes filtrar, ordenar y paginar fácilmente grandes cantidades de salida.

Conceptos básicos de la tubería

La tubería se escribe con | (barra vertical).

comando1 | comando2

La salida estándar de comando1 se pasa a comando2 como su entrada estándar.

Ejemplo básico

tasklist | findstr "notepad"
- □ ×
Í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 | findstr "notepad"
notepad.exe 12345 Console 1 15,432 K
C:\users\user>

La salida de tasklist pasa directamente a findstr, que muestra solo las líneas que contienen “notepad”.

Comandos de filtro habituales

Los comandos que se usan junto con tuberías se llaman comandos de filtro.

ComandoDescripción
findExtrae las líneas que contienen una cadena
findstrBúsqueda avanzada con expresiones regulares
sortOrdena el texto de forma ascendente o descendente
moreMuestra la salida pantalla por pantalla

Filtrar con find

dir | find "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>dir | find "txt"
10/03/2026 14:30 1.234 report.txt
11/03/2026 09:15 567 memo.txt
C:\users\user>
おすすめ書籍※ 広告を含む場合があります
中小企業経営者のためのRPA入門 RPA導入を成功させる方法

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

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

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

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

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

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

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

Contar líneas

find /C cuenta las líneas que coinciden.

dir /b *.txt | find /C /V ""
- □ ×
Í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 /b *.txt | find /C /V ""
5
C:\users\user>
チェック

find /C /V "" cuenta las líneas que no contienen una cadena vacía, lo que en la práctica devuelve el número de todas las líneas. Es útil para contar las líneas de una salida canalizada.

Filtrar con findstr

findstr admite expresiones regulares y varias condiciones.

netstat -an | findstr "ESTABLISHED LISTENING"
- □ ×
Í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>netstat -an | findstr "ESTABLISHED LISTENING"
TCP 0.0.0.0:80 0.0.0.0:0 LISTENING
TCP 192.168.1.100:54321 172.16.0.1:443 ESTABLISHED
C:\users\user>
tasklist | findstr /V "svchost"

La opción /V muestra solo las líneas que no contienen “svchost”. Ten en cuenta que varias cadenas separadas por espacios, como findstr "A B", significan “A o B”. Para buscar una cadena que contiene un espacio, usa findstr /C:"A B".

Ordenar con sort

El comando sort ordena la salida de forma ascendente o descendente.

dir /b | sort
dir /b | sort /R
OpciónDescripción
/ROrdena en orden descendente (inverso)
/+nOrdena a partir del carácter n

Mostrar PATH con una entrada por línea

(for %i in ("%PATH:;=" "%") do @echo %~i) | sort
Uso en un archivo por lotes

El ejemplo anterior es para escribirlo directamente en el símbolo del sistema. En un archivo por lotes, cambia %i por %%i.

Paginar con more

Cuando la salida es demasiado larga para la pantalla, more la muestra página por página.

dir /s | more
type longfile.txt | more

Pulsa la barra espaciadora para pasar a la página siguiente y Q para salir.

Encadenar tuberías

Puedes encadenar varias tuberías.

tasklist | findstr /I "chrome" | sort | more

Esto realiza, por orden:

  1. tasklist obtiene la lista de procesos
  2. findstr extrae las líneas que contienen “chrome”
  3. sort ordena el resultado
  4. more lo muestra pantalla por pantalla

Ejemplos prácticos

Contar los procesos en ejecución

tasklist | find /C /V ""

Encontrar el proceso que usa un puerto concreto

netstat -ano | findstr ":8080"
- □ ×
Í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>netstat -ano | findstr ":8080"
TCP 0.0.0.0:8080 0.0.0.0:0 LISTENING 12345
C:\users\user>

La última columna (12345) es el ID del proceso. Usa tasklist /FI "PID eq 12345" para ver más detalles.

Comprobar el tamaño total de los archivos de una carpeta

dir /s /-c | findstr "File(s)"

Muestra una línea de resumen por cada subcarpeta y un total final. El texto buscado depende del idioma de visualización del sistema; en un sistema en español, usa findstr /C:" archivos " (el texto puede variar según la versión).

Filtrar la salida y guardarla en un archivo

También puedes combinar tuberías y redirección.

tasklist | findstr "chrome" > chrome_processes.txt
Tubería frente a redirección

La tubería | pasa la salida de un comando a otro comando como entrada. La redirección > guarda la salida de un comando en un archivo. Combinándolas puedes escribir los resultados filtrados en un archivo.

Aspectos a tener en cuenta

  • Solo la salida estándar pasa por la tubería. Para pasar también los mensajes de error, usa comando 2>&1 | findstr "...".
  • Los comandos a cada lado de una tubería se ejecutan en instancias separadas de cmd.exe, por lo que las variables definidas con set dentro de una tubería no se conservan.
  • Si usas una tubería dentro de la parte in ('...') de FOR /F, escápala como ^|.

Resumen

OperaciónEjemplo
Filtrar por cadenacomando | find "cadena"
Filtrar por expresión reg.comando | findstr "patrón"
Ordenarcomando | sort
Paginar la salidacomando | more
Contar líneascomando | find /C /V ""
Encadenar varios filtroscomando | findstr "A" | sort

Artículos relacionados

Cuestionario

Problema de práctica

¿Qué afirmación describe correctamente la tubería en comando1 | comando2?

回答がサーバーに送信されることはありません
#Símbolo del sistema #Archivo por lotes #Tubería #Filtro #Comando