FilesSharper es una aplicación de búsqueda y procesamiento de archivos C#/WPF para desarrolladores y usuarios avanzados. Le permite buscar archivos que coincidan con ciertas condiciones (longitud, contenido, etc.) y tomar medidas sobre ellos, por ejemplo, reemplazar cierto contenido de texto o agregar un archivo a un archivo zip. Proporciona una alternativa de GUI a los flujos de trabajo de línea de comandos basados en herramientas UNIX como find , grep , sed , sort , etc. Las condiciones de búsqueda incluyen actualmente:
Los procesadores de archivos incluyen actualmente:
Para una demostración, vea este video o este video en YouTube. Para probarlo usted mismo, tome un instalador posiblemente algo reciente aquí. Para obtener un tutorial de cómo usar FilesSharper, consulte Uso de FilesSharper.
FilesSharper está diseñado para extenderse rápidamente con una nueva funcionalidad. Se publica bajo la licencia MIT para que pueda obtener la fuente y agregar su propio código específico de dominio. La GUI está basada en datos, por lo que no tiene que escribir ningún código de IU para agregar una nueva condición de búsqueda o procesador de archivos.
Puede extender la funcionalidad de Filesharper escribiendo clases que implementan cualquiera de las cuatro interfaces principales:
Cuando agrega una clase que implementa una de estas interfaces al proyecto FilesSharpercore o un proyecto propio que agregue a la solución FilesSharper, se encontrará en tiempo de ejecución mediante la reflexión y se agregará a la lista de selección apropiada en la interfaz de usuario de Filesharper. La interfaz de usuario de FilesSharper se utiliza para crear "búsquedas" que tienen exactamente una fuente de archivo, cero o una condición (que puede ser una composición arbitraria de otras condiciones), cualquier cantidad de fuentes de campo y cualquier número de procesadores que se ejecutan cuando se prueba o coincide un archivo.
Si está agregando fuentes de archivos, condiciones, fuentes de campo o procesadores, le recomiendo que herede de las clases base FilesourceBase , ConditionBase , FielDSourceBase y SingleFileprocessorBase (o ProcessorBase si sabe lo que está haciendo).
Si descarga FilesSharper y comienza a agregar clases que beneficiarían a otros, considere enviar solicitudes de extracción para que pueda obtenerlas y mejorar FilSharper para todos. En este momento, el código está marcado como (c) Andrew Vardeman, pero si realmente obtengo contribuciones, adoptaré un acuerdo de licencia de contribuyente para que pueda convertirse en un proyecto comunitario más.
Caveat Vacor: FilSharper es actualmente una calidad alfa aproximadamente. Lentamente estoy agregando pruebas, comenzando con los diversos procesadores, ya que corren el mayor riesgo de dañar sus archivos.
Advertencia #2: El manejo de las codificaciones de texto de Filessharper que no sean ASCII/UTF-8 no se probó en gran medida. Recomendaría precaución al ejecutar procesadores que sobrescriben el archivo de texto de origen. Probablemente quise hacer una prueba de ejecución con un archivo que ha respaldado antes de confiar en él para hacer lo correcto.