Unix - SHELL de UNIX a Linux

 
Vista:

SHELL de UNIX a Linux

Publicado por santiman (2 intervenciones) el 03/01/2007 22:41:54
Hola!

No soy muy bueno en esto....he tenido problemas para correr un shell de unix en linux fedora...

este es el shell

#
# Shell que revisa constantemente si existen usuarios en el sistema
# que llevan mas de 20 min. sin utilizar su terminal.
# Estos usuarios son llevados al login, quedando un registro de ellos
# en un archivo de control llamado - MONITOREO -
#
#
#
who -u | egrep -v "root|oper001|prueba" | while true
do
read linea
if [ -n "$linea" ]
then
set $linea
usr=$1 tty=$2 tpo=$6

if [ "$tpo" != "." -a "$tty" != "console" -a "$tty" != "tty01" -a "$tty" != "ttya02" ]
then

if [ `echo $tpo | cut -d: -f2` -gt 20 -o `echo $tpo | cut -f1 -d:` -gt 0 ]
then
echo $tty
ps -t $tty | egrep "runcobol|pg" > /usr/tmp/control1
if [ -s /usr/tmp/control1 ]
then
echo
else
echo $tty
ps -t $tty
fuser -k /dev/$tty
fi
else
continue
fi

fi
else
exit
fi
done
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:SHELL de UNIX a Linux

Publicado por Tom (178 intervenciones) el 04/01/2007 11:04:39
¿ Qué problemas ?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:SHELL de UNIX a Linux

Publicado por santiman (2 intervenciones) el 04/01/2007 14:32:53
Hola Tom....este es el mensaje que me saca.....

control: line 41: syntax error: unexpected end of file
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:SHELL de UNIX a Linux

Publicado por Tom (178 intervenciones) el 05/01/2007 12:22:25
El script que has pegado aquí funciona correctamente.
Ese error quiere decir que te falta un if, un while, unas comillas, ... por cerrar.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:SHELL de UNIX a Linux

Publicado por manoplas (13 intervenciones) el 20/01/2007 01:41:24
Hola,

Creo que podría ser por la shell, seguramente en el sistema UNIX tuvieses "sh" y en el linux una "bash".

Por norma y si no se especifica nada en la primera línea del script, te utilizará la shell por defecto y como ese script tiene pinta de ser en "sh" cabe la posibilidad de que no funcione en la "bash".

Localiza si en tu linux tienes "sh" con un:

type sh

Si te sale el path completo (no sé si la trae), lo pones al principio del script más o menos así:

!/usr/bin/sh

Si no tienes sh vete al directorio /usr/bin y mira a ver las que tienes y prueba a cambiar, seguro que alguna se "traga" el script.

Un saludo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar