stringtranslate.com

Filtro (software)

Un filtro es un programa informático o una subrutina que procesa un flujo y produce otro flujo. Si bien se puede utilizar un solo filtro de forma individual, con frecuencia se los combina para formar una cadena de procesamiento .

Algunos sistemas operativos como Unix están repletos de programas de filtrado. Windows 7 y versiones posteriores también son ricos en filtros, ya que incluyen Windows PowerShell . Sin embargo, en comparación, pocos filtros están integrados en cmd.exe (la interfaz de línea de comandos original de Windows), la mayoría de los cuales tienen mejoras significativas en relación con los comandos de filtrado similares que estaban disponibles en MS-DOS . OS X incluye filtros de su base Unix subyacente, pero también tiene Automator , que permite que los filtros (conocidos como "Acciones") se encadenen para formar una secuencia.

Unix

En sistemas operativos Unix y similares , un filtro es un programa que obtiene la mayoría de sus datos de su entrada estándar (el flujo de entrada principal) y escribe sus resultados principales en su salida estándar (el flujo de salida principal). La entrada auxiliar puede provenir de indicadores de línea de comandos o archivos de configuración, mientras que la salida auxiliar puede ir al error estándar . La sintaxis del comando para obtener datos de un dispositivo o archivo que no sea la entrada estándar es el operador de entrada ( <). De manera similar, para enviar datos a un dispositivo o archivo que no sea la salida estándar es el operador de salida ( >). Para agregar líneas de datos a un archivo de salida existente, se puede usar el operador de anexión ( >>). Los filtros se pueden unir en una tubería con el operador de tubería (" |"). Este operador significa que la salida principal del comando a la izquierda se pasa como entrada principal al comando a la derecha.

La filosofía Unix fomenta la combinación de herramientas pequeñas y discretas para realizar tareas más grandes. El filtro clásico en Unix es grep de Ken Thompson , que Doug McIlroy cita como lo que "incorporó la perspectiva de las herramientas de manera irrevocable" en el sistema operativo, y que fue imitado por herramientas posteriores. [1] grep en su forma más simple imprime en la salida cualquier línea que contenga una cadena de caracteres. El siguiente es un ejemplo:

cortar  -d  :  -f 1 /etc/passwd | grep foo     

Esto encuentra todos los usuarios registrados que tienen " foo " como parte de su nombre de usuario utilizando el comando cut para tomar el primer campo (nombre de usuario) de cada línea del archivo de contraseña del sistema Unix y pasarlos todos como entrada a grep, que busca en su entrada líneas que contengan la cadena de caracteres "foo" y las imprime en su salida.

Los programas de filtrado Unix más comunes son: cat , cut , grep , head , sort , tail y uniq . Se pueden utilizar programas como awk y sed para crear filtros bastante complejos porque son totalmente programables. Los científicos de datos también pueden utilizar filtros Unix para obtener una descripción general rápida de un conjunto de datos basado en archivos. [2]

Lista de programas de filtrado de Unix

Dos

Dos filtros estándar de los primeros días de las computadoras basadas en DOS son find y sort .

Ejemplos:

buscar "palabra clave" < nombrearchivoentrada > nombrearchivosalida
ordenar "palabra clave" < nombrearchivoentrada > nombrearchivosalida
encontrar /v "palabra clave" < nombrearchivoentrada | ordenar > nombrearchivosalida

Estos filtros se pueden utilizar en archivos por lotes (*.bat, *.cmd, etc.).

Para su uso en el mismo entorno de línea de comandos , hay muchos más filtros disponibles que los que están integrados en Windows. Algunos de ellos son freeware , otros shareware y otros son programas comerciales. Varios de ellos imitan la función y las características de los filtros de Unix. Algunos programas de filtrado tienen una interfaz gráfica de usuario (GUI) que permite a los usuarios diseñar un filtro personalizado que se adapte a sus requisitos especiales de procesamiento de datos y/o minería de datos .

Ventanas

El símbolo del sistema de Windows heredó los comandos MS-DOS, mejoró algunos y agregó algunos más. Por ejemplo, Windows Server 2003 incluye seis filtros de línea de comandos para modificar Active Directory que se pueden encadenar mediante canalización: DSAdd, DSGet, DSMod, DSMove, DSRm y DSQuery. [3]

Windows PowerShell agrega una serie completa de filtros conocidos como "cmdlets" que se pueden encadenar entre sí mediante una barra vertical, excepto algunos filtros simples, por ejemplo Clear-Screen. El siguiente ejemplo obtiene una lista de archivos en la C:\Windowscarpeta, obtiene el tamaño de cada uno y ordena el tamaño en orden ascendente. Muestra cómo se encadenan tres filtros ( Get-ChildItem, ForEach-Objecty ) mediante barras verticales.Sort-Object

Obtener-ElementoHijo  C :\ Windows  |  ForEach -Object  {  $_ . length  }  |  Ordenar-Object  -Ascending

Referencias

  1. ^ McIlroy, MD (1987). Un lector de Unix para investigación: extractos anotados del Manual del programador, 1971–1986 (PDF) (Informe técnico). CSTR. Bell Labs. 139.
  2. ^ Análisis de datos con Unix Shell Archivado el 22 de enero de 2016 en Wayback Machine - Bernd Zuther, comSysto GmbH, 2013
  3. ^ Holme, Dan; Thomas, Orin (2004). Gestión y mantenimiento de un entorno de Microsoft Windows Server 2003: examen 70-290. Redmond, WA : Microsoft Press . pp. 3|17—3|26. ISBN 9780735614376.

Enlaces externos