programa con shell script
Publicado por javier (1 intervención) el 07/09/2009 21:14:08
Buenas noches que tal, mi nombre es Javier y les escribo primero para felicitarles por el foro y cu pagina y segundo para plantearles el siguiente problema:
Deseo escribir un programa en Shell de Unix, para vigilar a todos los usuarios que
inician y terminan sesión y comunicarlo, a medida que entran y salen, a un fichero llamado
ent-sal.
Pienso que el shel script esta correcto pero cuando lo ejecuto me dice lo siguiente:
line 24: "error de sintaxis cerca de token no esperado `done' "
line 24: `done'
lo he revisado y no encuentro el problema, me pueden echar una mano por favor, estoy desesperado..gracias.
if [ -f ent-sal.log ] ; then
rm ent-sal.log
fi
if [ -f entrada ] ; then
rm entrada
fi
if [ -f salida ] ; then
rm salida
fi
while [ 1 ]
do
who > entrada
sleep 60
who > salida
#encontramos las diferencias y buscamos '<' y '>' para luego sustituirlos por
#"salida" y "entrada", todo esto se redirecciona a continuacion de un fichero de log
diff entrada salida | grep -e '<' -e '>' | sed 's/</Salida: /g' | sed 's/>/Entrada: /g'>> ent-sal.log
done
Deseo escribir un programa en Shell de Unix, para vigilar a todos los usuarios que
inician y terminan sesión y comunicarlo, a medida que entran y salen, a un fichero llamado
ent-sal.
Pienso que el shel script esta correcto pero cuando lo ejecuto me dice lo siguiente:
line 24: "error de sintaxis cerca de token no esperado `done' "
line 24: `done'
lo he revisado y no encuentro el problema, me pueden echar una mano por favor, estoy desesperado..gracias.
if [ -f ent-sal.log ] ; then
rm ent-sal.log
fi
if [ -f entrada ] ; then
rm entrada
fi
if [ -f salida ] ; then
rm salida
fi
while [ 1 ]
do
who > entrada
sleep 60
who > salida
#encontramos las diferencias y buscamos '<' y '>' para luego sustituirlos por
#"salida" y "entrada", todo esto se redirecciona a continuacion de un fichero de log
diff entrada salida | grep -e '<' -e '>' | sed 's/</Salida: /g' | sed 's/>/Entrada: /g'>> ent-sal.log
done
Valora esta pregunta


0