miércoles, 26 de agosto de 2015

Scripst III

Mas ejemplos para programar.

Ejercicios propuestos en los últimos exámenes

  1. Realiza un script que me devuelva el número de enlaces simbólicos del directorio actual.
  2. Realiza un script que pida por teclado una palabra. El algoritmo indica si hay el mismo número de vocales y consonantes o te indica cuál tiene más.
  3. Realiza un programa que pida un número y me devuelva todos los números hasta ese número repetidos tantas veces como indique su valor. Por ejemplo: si meto el 4, me devuelve, 1223334444.
  4. Programa que dado un nombre de grupo determine si existe en el sistema, y si es así, presente su nombre, número de grupo (GID), y lista de usuarios que pertenecen a él.

jueves, 20 de agosto de 2015

Solución Scripts I, ejercicio 4.

Solución al ejercicio numero 4:

if [ $# -eq 0 ]

then

echo tienes que pasar algún argumento, $0 directorios

exit 1

#¿por qué exit 1 y no exit 0?

#Los dos terminan o acaban el proceso, pero para finalizaciones normales mejor exit 0

#indicando al proceso padre la terminación normal del proceso hijo

#para utilizaciones incompletas del proceso o terminaciones anormales, mejor poner exit 1

fi

fecha=$(date "+Y-%m-%d")

if [ -e $fecha.lista ]

then

echo Error, el fichero lista ya existe.

exit 1

fi

for var in $*

do

if ! [ -d $var ]

then

echo Error, $var no es un directorio

exit 1

fi

done

touch $fecha.lista

for var in $*

do

echo $var>>$fecha.lista

done

#también puedes hacer: echo $*|tr " " "\n">$fecha.lista

tar cfz $fecha.tar.gz $*