Bueno, si está preguntando por el mundo de Unix o Linux, es un simple script de shell que puede construir y adaptar a su satisfacción. Comience por resolver en su sistema cómo imprimir un solo archivo. Me gusta incluir pr en la tubería para agregar números de página, el nombre del archivo en los encabezados de página y, opcionalmente, puede pedirle que agregue números de línea, pero eso aumenta el riesgo de que las líneas sean demasiado largas en la impresora y pierdan cosas de Los extremos derechos de las líneas. Puede jugar con bonitos programas de impresión para ordenar el formato de la fuente si encuentra que los archivos necesitan muchos ajustes para ser consistentes.
A partir de ahí, puede ampliar el script con un bucle para conducirlo a través de todos los archivos de origen en el directorio actual. Lo que me gustaba hacer en mi versión de este script era generar un archivo con la lista de información ls -l para el directorio en el momento en que lo imprimí. Luego, cuando obtuve una impresión satisfactoria, vi ese archivo como “marcador”. Cambie fácilmente el script para que solo imprima archivos en el directorio que tengan una fecha de última modificación más nueva que el marcador. Esos son los archivos que cambiaron desde la última copia impresa que aceptó. A menos que el código fuente esté experimentando un cambio furioso, imprimir solo los archivos recientemente modificados debería ahorrar algunos árboles y reducir la cantidad de tareas de archivo que debe hacer para archivar la copia impresa. Mantuve el mío en carpetas de 3 anillos con una pestaña de papel que separaba los archivos entre sí. La parte laboriosa de la tarea de archivo era que si la lista reemplazada tenía notas marginales, no querría perder esas notas en el proceso, así que las transcribiría a las nuevas páginas de listas. Suena como un gran lastre, pero me ayudó a familiarizarme con los archivos fuente.
¿Atascado en Windows? Bueno, obtenga herramientas Cygwin (gratis – bash, ls, pr, …) y úselas en Windows como si estuviera trabajando en un sistema Gnu / Linux. O, si prefiere encerrarse en el mundo de M $, descubra cómo hacer lo anterior con PowerShell.
Una cantidad decepcionante de lo anterior dependerá de los detalles de su sistema. ¿Cómo poner las cosas en cola a su impresora? ¿Cuántas líneas por página permite la impresora después de deducir los encabezados de impresión? Y algunos serán asuntos de gustos y opiniones. ¿Cuánto preocuparse por las líneas truncadas? ¿Qué tan bonito debe ser el trabajo con líneas largas que envuelven líneas? ¿Puede introducir el ajuste de línea sin anotar la numeración de líneas en la impresión?
Sospecho que puede ser lo suficientemente nuevo para ejecutar scripts de shell que tal vez le haya dejado con un montón de preguntas más pequeñas. Las respuestas están en las páginas del manual o puede enmarcarlas como nuevas preguntas más pequeñas. stackoverflow es un gran sitio para encontrar respuestas técnicas, o puede probar suerte con preguntas técnicas aquí en Quora. La búsqueda de Google puede encontrar sus preguntas más específicas ya formuladas y respondidas en algún lugar de la web.
Editar: ¿O estoy entendiendo mal la esencia de tu pregunta? ¿Está pidiendo orientación sobre cómo implementar en C ++ un equivalente al script de shell que esbocé para usted aquí? Una búsqueda en Google para:
C ++ directo
Puede encontrar algunas sugerencias útiles. Por ejemplo, consulte: Dirent.h: obtenga las cadenas de archivos con una determinada extensión exclusivamente. O si el quid de su preocupación es cómo imprimir un archivo desde un programa C ++, intente buscar en Google:
C ++ impresión a impresora
aunque no tengo claro por qué querrías incorporar tantos detalles del sistema en tu programa C ++. En algún momento de la implementación, creo que es mejor redirigir la salida del programa a un proceso que ejecute un script de shell que proporcione. El usuario (o alguien) puede adaptar ese script de shell para que se ajuste a los detalles de su entorno de sistema.