ELO-330: Programación de Sistemas
Tarea 1: Cambio de nombres a estilo Unix
La idea es que su grupo ejercite la programación shell. Trate
de cada integrante de su grupo resuelva el problema separadamente y
luego se juntan a comentar sus soluciones o ideas sobre cómo abordar el
problema. El trabajo de ambos debería conducir a un mayor aprendizaje
individual y mejor solución grupal.
Objetivos: aplicar programación shell.
Contexto: Haciendo el respaldo de mi sistema de archivos pude notar
que aquellos archivos con letras acentuadas o espacios tenían
dificultades para ser respaldados en un DVD. Esta tarea buscar que
usted liste y eventualmente renombre tales archivos.
Nombre: fn2u: Filename to Unix
Sintaxis: fn2u [directorio] [n]
n=1 sólo lista los archivos o directorios con sus rutas completas
que poseen alguno de los siguientes caracteres: espacio, letras
acentuadas, ñ, Ñ.
n=2 renombra archivos o directorios que contengan alguna de las
letras indicadas previamente. Los espacios deben ser reemplazados por
"_", las vocales acentuadas se cambian por la misma vocal no acentuada,
ñ cambia a n y Ñ a N.
Descripción
La ausencia del primer argumento se
debe entender como directorio actual. La ausencia del segundo argumento
toma n=1. Si hay sólo un argumento, éste debe ser el
directorio al cual se desea hacer el análisis.
fn2u con opción n=1 permite listar por la salida estándar la ruta completa y
los nombres de archivos
y directorios que incluyen alguno de los siguientes caracteres:
espacios, letras acentuadas, ñ, Ñ. La opción n=2 permite renombrar
los archivos generando un cambio en el directorio. Si el mismo nombre ya
existe, el nuevo nombre es extendido agregando _1.
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 el script cumpla plenamente lo pedido.
30% Documentación.
OBS: En caso que la tarea no esté
especificada (clara) completamente, plantee
la situación al profesor. Aquí se publicarán las aclaraciones
necesarias.
Ayuda:
- Estudie los ejemplos de programación shell vistos
en clases.
- Revise el uso del utilitario sed (busque en google, aquí
una opción)
- Trabaje con tiempo, será muy grato para mi atender sus
consultar y ayudar en su logro de esta tarea.