ELO-330: Programación de Sistemas
 Tarea 1: Verificador de formato de entrega de tareas de programación

   La idea es que usted ejercite la programación shell.

Objetivos: aplicar programación shell.

Contexto:  Tareas de programación en lenguaje C, C++, Java, etc, suelen pedir cierto formado para su entrega. Un ejemplo de tales formatos está en: http://profesores.elo.utfsm.cl/~agv/elo330/2s18/Assignments/guideline/index.html#content1. Se desea desarrollar una guion (español) o script (inglés) Shell que permita verificar si un archivo de entrada (comprimido en formato .tar) cumple con un formato de entrega definido.

Ejercicio 1: Verificación que incluye archivo readme.txt, documentacion.pdf y makefile con rótulos "run", "clean", y "doc".
Nombre: pcpa: Partial Check of a programming assignment
Sintaxis: pcpa  <tar file>
Descripción: pcpa es un script bash que muestra por pantalla un OK cuando el archivo tar proporcionado cumple cada una de las siguientes condiciones:

Incluye readme.txt .........................................................  OK
Incluye documentacion.pdf  ...........................................  OK
Incluye makefile con rótulos "run", "clean" y "doc"........  OK

En caso de no cumplir una condición se muestra "FAIL".

Ejercicio 2: Verificación que no existen archivos .o, .class, o ejecutables.
Nombre: ncc: no compiled code
Sintaxis: ncc  <tar file>
Descripción: ncc muestra por pantalla un OK (o FAIL) ante el cumplimiento (o no cumplimiento) de cada una de las siguientes condiciones:

No incluye archivos .o ........... OK
No incluye archivos .class ..... OK
No incluye ejecutables ........... OK

Ejercicio 3:  Verificación de no hay muchos archivos .html ni imágenes .jpg
Nombre: fhi: few .html and image files
Sintaxis: fhi  <tar file>
Descripción: fhi muestra por pantalla un OK (o FAIL) ante cumplimiento (o no cumplimiento) de cada una de las siguientes condiciones:

Incluye menos de 5 archivos *.html .................................. OK
Incluye menos de 5 imágenes y son menores que 1 MB ... OK

Ejercicio 4: Verificación de formato de tareas de programación
Nombre: fvas: Format verificacition of assignment submission
Sintaxis fvas <tar file>
Descripción: Además de verificar todas las condiciones de los ejercicios 1, 2, y 3, fvas reporta el número de archivos entregados y la suma de sus tamaños. Luego, además de todas las salidas OK o FAIL antes señaladas, se incluye al final:

Número de archivos:    <aquí va el número de archivos>
Tamaño agregado de todos los archivos: <aquí va el tamaño total en KB>

Extra créditos: Usted gana 5 puntos adicionales si al final muestra además:

Espacio en disco ocupado por los archivos descomprimidos: <espacio en KB ocupados por los archivos en disco>.


Evaluación de la Tarea y qué entregar:
  La tarea será revisada en aragorn.elo.utfsm.cl. Confirme que su solución corre bien allí.

  La evaluación de esta tarea será según:

    70% Que cada script cumpla plenamente lo pedido.

    30% Documentación.

Qué entregar:

    * Archivo readme.txt : explicar cómo descomprimir su solución, qué contiene cada archivo archivo descomprimido, cómo preparar cada script para su ejecución y cómo correrlos.

    * Archivo documentación.pdf : incluir descripción simple de la estrategia usada para cada script, indicar además casos en que el script pudiera fallar; por ejemplo, si el nombre de usuario no existe.

    * Sus script shell:

  Penalización por atraso: 5 puntos por día o fracción. OBS: En caso que la tarea no sea del todo clara (alguna especificación completa), plantee la situación al profesor. Aquí se publicarán las aclaraciones necesarias.

Ayuda:

   - Estudie los ejemplos de programación shell vistos en clases.

   - Revisar man tar, en particular opción -t

   - Trabaje con tiempo, será muy grato para mi atender sus consultar y ayudar en su solución a esta tarea.