#!/bin/bash
# vim: set softtabstop=4 tabstop=4
-# variables de entorno
-#echo "editor "$EDITOR
-#echo "env "$ENV
-#echo "home "$HOME
-#echo "host "$HOSTNAME
-#echo "logname "$LOGNAME
-#echo "user " $USER
-#echo "mail "$MAIL
-#echo "path "$PATH
-#echo "pwd "$PWD
-#echo "shell "$SHELL
-#echo "term "$TERM
-#echo "time out" $TMOUT
-# chequeo sistema operativo
-echo "Chequeando SO ..."
-if [ -z "`echo $0 | sed \"s/.*AFINSTAL$//\"`" ]; then
+#FUNCIONES AUXILIARES
+
+
+#Verifico que el sistema operativo sea correcto.
+if echo $0 | egrep -q 'AFINSTAL$'; then
SISOPTP="Linux"
-elif [ -z "`echo $0 | sed \"s/.*AFINSTAW$//\"`" ]; then
- SISOPTP="Windows"
-elif [ -z "`echo $0 | sed \"s/.*AFINSTAM$//\"`" ]; then
+fi
+if echo $0 | egrep -q 'AFINSTAM$'; then
SISOPTP="Mac"
fi
+if echo $0 | egrep -q 'AFINSTAW$'; then
+ SISOPTP="Windows"
+fi
CURSIS=$(uname)
-#echo "cursis $CURSIS"
# comienzo instalacion si el sistema es correcto
if [ "$SISOPTP" != "$CURSIS" ]; then
- echo "ERROR !!!"
- echo "Este proceso de instalación es para $SISOPTP"
- echo "y su sistema operativo es $CURSIS"
- echo "Solicite a su proveedor la versión adecuada"
- echo "e inicie nuevamente el proceso de instalación"
- exit 1
+cat<<MARCA
+"ERROR !!!"
+"Este proceso de instalación es para $SISOPTP"
+"y su sistema operativo es $CURSIS"
+"Solicite a su proveedor la versión adecuada"
+"e inicie nuevamente el proceso de instalación"
+MARCA
+exit 1
else
echo "Proceso de instalación para $SISOPTP"
- echo "Presione ENTER para continuar"
-fi
-opcion="a"
-while [ -n "$opcion" ]; do
- echo "*******************************************************"
- echo "* *"
- echo "* Proceso de instalación de \"Antifraude\" *"
- echo "* Copyright TPSistemasOp (c)2004 *"
- echo "* *"
- echo "*******************************************************"
- echo "A T E N C I O N: Al instalar Antifraude UD. expresa estar"
- echo "en un todo de acuerdo con los términos y condiciones del"
- echo "\"ACUERDO DE LICENCIA DE SOFTWARE\" incluido en este paquete"
- echo ""
- echo "Si desea cancelar este proceso oprima 'F' y luego ENTER"
- echo "Para continuar oprima solamente ENTER"
- read opcion
- if [ "$opcion" == "F" ] || [ "$opcion" == "f" ]; then
- echo "Proceso de instalación cancelado"
- exit 0
- fi
-done
-
-#Verifico que Perl este instalado
-if [ "esta" == "`type perl | sed s/\"perl is .*\"/\"esta\"/`" ]; then
- echo "perl esta instalado"
-else
- echo "ERROR !:"
- echo "Este proceso de instalación solo puede ser"
- echo "ejecutado si Perl 5 o superior ya esta instalado"
- echo ""
- echo "Efectúe a instalación de Perl"
- echo "e inicie nuevamente el procedimiento de instalación."
- exit 1
+ echo "Presione una tecla para continuar"
+ read op
fi
-PATH_GENERAL=$HOME"/antifraude"
-INSTDIR=$PATH_GENERAL"/inst/"
-CONFDIR=$PATH_GENERAL"/conf/"
-BINDIR=$PATH_GENERAL"/bin/"
-DATADIR=$PATH_GENERAL"/data"
-LOGDIR=$PATH_GENERAL"/log"
-LOGNAME="comando.log"
-LOGSIZE=10
-
-again="s"
-while [ "$again" == "s" ]; do
- op="s"
- while [ "$op" == "s" ]; do
- #muestro el directorio donde se instalara el sistema
- echo "Nombre del directorio de instalación ($INSTDIR),ingrese una nueva ruta o ENTER para continuar: $PATH_GENERAL/<nueva ruta>"
- read AUX1
- if [ ! -z $AUX1 ]; then
- INSTDIR="$PATH_GENERAL/$AUX1"
- fi
- echo "Nombre del directorio de configuración ($CONFDIR), ingrese una nueva ruta o ENTER para continuar: $PATH_GENERAL/<nueva ruta>"
- read AUX2
- if [ ! -z $AUX2 ]; then
- CONFDIR="$PATH_GENERAL/$AUX2"
- fi
- echo "Nombre del directorio de ejecutables ($BINDIR), ingrese una nueva ruta o ENTER para continuar: $PATH_GENERAL/<nueva ruta>"
- read AUX3
- if [ ! -z $AUX3 ]; then
- BINDIR="$PATH_GENERAL/$AUX3"
- fi
- echo "Desea volver a modificar?(s para modificar, ENTER para continuar)"
- read op
-done #fin de los primeros directorios
- op="s"
- while [ "$op" == "s" ]; do
- echo "Nombre del directorio de datos ($DATADIR),ingrese una nueva ruta o ENTER para continuar: $PATH_GENERAL/<nueva ruta>"
- read AUX4
- if [ ! -z $AUX4 ]; then
- DATADIR="$PATH_GENERAL/$AUX4"
- fi
- echo "Nombre del directorio de log ($LOGDIR), ingrese una nueva ruta o ENTER para continuar: $PATH_GENERAL/<nueva ruta>"
- read AUX5
- if [ ! -z $AUX5 ]; then
- LOGDIR="$PATH_GENERAL/$AUX5"
- fi
- echo "Nombre del archivo de log ($LOGNAME), ingrese un nuevo nombre o ENTER para continuar: <nuevo nombre>"
- read AUX6
- if [ ! -z $AUX6 ]; then
- LOGNAME="$AUX6"
- fi
- echo "Tamaño máximo del archivo de log ($LOGSIZE) en MegaBytes, ingrese un nuevo tamaño o ENTER para continuar: <nuevo tamaño>"
- #tengo que verificar que sea un numero
- read AUX7
- while [ ! -z "`echo $AUX7 | sed \"s/\"[0-9]*\"//\"`" ]; do
- echo "Debe ingresar un numero"
- read AUX7
- done
- if [ ! -z $AUX7 ]; then
- LOGSIZE="$AUX7"
- fi
-
- echo "Desea volver a modificar?(s para modificar, ENTER para continuar)"
- read op
- done #fin de los segundos directorios
- clear
-
- echo "\" PARAMETROS DE LA INSTALACION DE ANTIFRAUDE \""
- echo "\" ==========================================\""
- echo "\"Nombre del directorio de instalación: $INSTDIR\""
- echo "\"Nombre del directorio de ejecutables: $BINDIR\""
- echo "\"Nombre del directorio de datos: $DATADIR\""
- echo "\"Nombre del directorio de configuración: $CONFDIR\""
- echo "\"Directorio y nombre del archivo de log: $LOGDIR/$LOGNAME\""
- echo "\"Tamaño máximo para el archivo de log: $LOGSIZE Mbytes\""
- echo "\"Si los datos son correctos oprima solamente ENTER, si desea modificar
- alguno de ellos oprima cualquier otra tecla y luego ENTER.\""
- read again
-done #fin todo de nuevo
-
-echo "Si desea iniciar la instalación del Antifraude, oprima solamente ENTER, si
-desea cancelar el proceso oprima cualquier otra tecla y luego ENTER."
-read op
-if [ "$op" != "" ]; then
- echo "Proceso de instalación cancelado"
- exit 0
-fi
-#creo los directorios
-echo "Creando Estructura de directorios"
-if [ -d "$PATH_GENERAL" ]; then
- echo "El directorio ya existe."
- echo "Seleccione una opcion R: reinstalar, A: actualizar, C: Cancelar "
- read sel
- while [ "$sel" != "R" ]; do # || "$sel" != "A" ]; do
- if [ "$sel" == "C" ]; then
- echo "Proceso de Instalación Cancelado"
- exit 0
- fi
- echo "Opción no válida"
- echo "Ingrese nuevamente la opción"
- read sel
- done
- if [ "$sel" == "R" ]; then
- rm -rf $PATH_GENERAL
- mkdir $PATH_GENERAL
- mkdir $INSTDIR
- mkdir $CONFDIR
- mkdir $BINDIR
- mkdir $DATADIR
- mkdir $LOGDIR
- mkdir -p "$DATADIR/{aprocesar,enproceso,rechazadas,procesadas}"
- #creo archivos de log
- touch "$LOGDIR/$LOGNAME"
- #inserto informacion de instalacion
- echo "INSTDIR = $INSTDIR" >> "$CONFDIR/afinstal.conf"
- echo "CONFDIR = $CONFDIR" >> "$CONFDIR/afinstal.conf"
- for n in `seq 3 51`
- do
- echo "" >> "$CONFDIR/afinstal.conf"
- done
- linea=10
- i=0
- fecha=$(date)
- for FILE in ANTIFRAUDE.PL AFICONF AFIMONIO
- do
- numlinea=$(($linea+$i))
- cat "$CONFDIR/afinstal.conf" | sed "$numlinea""s/.*/Comando $FILE/" > "$CONFDIR/afinstal.conf"
- i=$(($i+1))
- numlinea=`expr $linea + $i`
- cat "$CONFDIR/afinstal.conf" | sed "$numlinea""s(.*(BINDIR = $BINDIR(" > "$CONFDIR/afinstal.conf"
- i=$(($i+1))
- numlinea=`expr $linea + $i`
- cat "$CONFDIR/afinstal.conf" | sed "$numlinea""s(.*(LOGDIR = $LOGDIR(" > "$CONFDIR/afinstal.conf"
- i=$(($i+1))
- numlinea=`expr $linea + $i`
- cat "$CONFDIR/afinstal.conf" | sed "$numlinea""s(.*(LOGNAME = $LOGNAME(" > "$CONFDIR/afinstal.conf"
- i=$(($i+1))
- numlinea=`expr $linea + $i`
- cat "$CONFDIR/afinstal.conf" | sed "$numlinea""s(.*(LOGSIZE = $LOGSIZE(" > "$CONFDIR/afinstal.conf"
- if [ "$FILE" == "ANTIFRAUDE.PL" ]; then
- i=$(($i+1))
- numlinea=`expr $linea + $i`
- cat "$CONFDIR/afinstal.conf" | sed "$numlinea""s(.*(DATADIR = $DATADIR(" > "$CONFDIR/afinstal.conf"
- i=$(($i+1))
- numlinea=`expr $linea + $i`
- cat "$CONFDIR/afinstal.conf" | sed "$numlinea""s(.*(DATASIZE = (" > "$CONFDIR/afinstal.conf"
- fi
- i=$(($i+1))
- numlinea=`expr $linea + $i`
- cat "$CONFDIR/afinstal.conf" | sed "$numlinea""s(.*(USERID = $USER(" > "$CONFDIR/afinstal.conf"
- i=$(($i+1))
- numlinea=`expr $linea + $i`
- cat "$CONFDIR/afinstal.conf" | sed "$numlinea""s(.*(FECINS = $fecha(" > "$CONFDIR/afinstal.conf"
- echo "i es igual a "$i
- i=0
- linea=$(($linea+10))
- done #for
- fi #seleccion opcion
-fi #si esxiste la estructura de directorios.. FIXME si no existe, hay que crearlo
+#Verifico si hay algo instalado
+#busco en el archivo afinstal.conf (desde donde???) por ahora desde el home
+afinstal=`find $HOME -name 'afinstal.conf'`
-
-#ofrezco la posibilidad de correr el demonio..
-
-cat << MARCA
-Desea efectuar la activación del demonio antifraude?
-Si desea arrancar el proceso de antifraude, oprima solamente ENTER,
-si no desea correr el proceso oprima cualquier otra tecla y luego ENTER.
+if [ -n "$afinstal" ]; then
+ #busco paquetes instalados. Leo afinstal.conf para ver que hay
+ #Busco los binarios
+ comp=0
+ bindir=`cat $afinstal | grep -n BINDIR | grep 11 | sed s/\.\*\=\ //`
+ if [ ! -f "$bindir""antifraude.pl" ]; then
+ #instalo antifraude porque no existe
+ echo "Instalando Antifraude..."
+ comp=$(($comp + 1))
+ fi
+ if [ ! -f "$bindir""aficonf" ]; then
+ #instalo aficonf porque no existe
+ echo "Instalando Aficonf..."
+ comp=$(($comp + 1))
+ fi
+ if [ ! -f "$bindir""afimonio" ]; then
+ #instalo afimonio porque no existe
+ echo "Instalando Afimonio..."
+ comp=$(($comp + 1))
+ fi
+ if [ $comp == 0 ]; then
+ #busco los datos
+ fecha1=`cat $afinstal | grep -n FECINS | grep 18 | sed s/\.\*\=\ //`
+ fecha2=`cat $afinstal | grep -n FECINS | grep 26 | sed s/\.\*\=\ //`
+ fecha3=`cat $afinstal | grep -n FECINS | grep 36 | sed s/\.\*\=\ //`
+ usu1=`cat $afinstal | grep -n USERID | grep 17 | sed s/\.\*\=\ //`
+ usu2=`cat $afinstal | grep -n USERID | grep 25 | sed s/\.\*\=\ //`
+ usu3=`cat $afinstal | grep -n USERID | grep 35 | sed s/\.\*\=\ //`
+cat<<MARCA
+***************************************************************
+* Se encuentran instalados los siguientes componentes: *
+* Antifraude.pl instalado el $fecha1 por $usu1 *
+* Aficonf instalado el $fecha2 por $usu2 *
+* Antifraude.pl instalado el $fecha3 por $usu3 *
+* *
+* Copyright TPSistemasOp (c) 2004 *
+***************************************************************
MARCA
-
-read op
-if [ "$op" == "" ]; then
- #lanzo el proceso
- num=$(nohup $BINDIR/afimonio &)
- err=$num
- echo $err
- num=`echo $num | sed "s/\[.*\]//"`
- echo "El proceso afimonio se ha activado. Número de proceso:"
-else
- echo "Para realizar la activación utilice el comando afimonio de la siguiente manera: $BINDIR/afimonio &".
+ fi
fi
--- /dev/null
+#!/bin/bash
+# vim: set softtabstop=4 tabstop=4
+
+#FUNCIONES AUXILIARES
+
+
+#Verifico que el sistema operativo sea correcto.
+if echo $0 | egrep -q 'AFINSTAL$'; then
+ SISOPTP="Linux"
+fi
+if echo $0 | egrep -q 'AFINSTAM$'; then
+ SISOPTP="Mac"
+fi
+if echo $0 | egrep -q 'AFINSTAW$'; then
+ SISOPTP="Windows"
+fi
+
+CURSIS=$(uname)
+# comienzo instalacion si el sistema es correcto
+if [ "$SISOPTP" != "$CURSIS" ]; then
+cat<<MARCA
+"ERROR !!!"
+"Este proceso de instalación es para $SISOPTP"
+"y su sistema operativo es $CURSIS"
+"Solicite a su proveedor la versión adecuada"
+"e inicie nuevamente el proceso de instalación"
+MARCA
+exit 1
+else
+ echo "Proceso de instalación para $SISOPTP"
+ echo "Presione una tecla para continuar"
+ read op
+fi
+
+
+#Verifico si hay algo instalado
+#busco en el archivo afinstal.conf (desde donde???) por ahora desde el home
+
+afinstal=`find $HOME -name 'afinstal.conf'`
+
+if [ -n "$afinstal" ]; then
+ #busco paquetes instalados. Leo afinstal.conf para ver que hay
+ #Busco los binarios
+ comp=0
+ bindir=`cat $afinstal | grep -n BINDIR | grep 11 | sed s/\.\*\=\ //`
+ if [ ! -f "$bindir""antifraude.pl" ]; then
+ #instalo antifraude porque no existe
+ echo "Instalando Antifraude..."
+ comp=$(($comp + 1))
+ fi
+ if [ ! -f "$bindir""aficonf" ]; then
+ #instalo aficonf porque no existe
+ echo "Instalando Aficonf..."
+ comp=$(($comp + 1))
+ fi
+ if [ ! -f "$bindir""afimonio" ]; then
+ #instalo afimonio porque no existe
+ echo "Instalando Afimonio..."
+ comp=$(($comp + 1))
+ fi
+ if [ $comp == 0 ]; then
+ #busco los datos
+ fecha1=`cat $afinstal | grep -n FECINS | grep 18 | sed s/\.\*\=\ //`
+ fecha2=`cat $afinstal | grep -n FECINS | grep 26 | sed s/\.\*\=\ //`
+ fecha3=`cat $afinstal | grep -n FECINS | grep 36 | sed s/\.\*\=\ //`
+ usu1=`cat $afinstal | grep -n USERID | grep 17 | sed s/\.\*\=\ //`
+ usu2=`cat $afinstal | grep -n USERID | grep 25 | sed s/\.\*\=\ //`
+ usu3=`cat $afinstal | grep -n USERID | grep 35 | sed s/\.\*\=\ //`
+cat<<MARCA
+***************************************************************
+* Se encuentran instalados los siguientes componentes: *
+* Antifraude.pl instalado el $fecha1 por $usu1 *
+* Aficonf instalado el $fecha2 por $usu2 *
+* Antifraude.pl instalado el $fecha3 por $usu3 *
+* *
+* Copyright TPSistemasOp (c) 2004 *
+***************************************************************
+MARCA
+ fi
+fi