miércoles, 19 de junio de 2013

jueves, 6 de junio de 2013

SCRIPT_CON_VALIDADOR

AQUÍ COLOCAR MAS SCRIPT QUE POSEE VALIDACION MAXIMA DE ERRORES
SE ENCUENTRA EN CONTRUCCION CON MAXIMOS NIVELES DE SEGURIDAD:

#! /bin/bash

#Valida Si ejecutas el script como Superusuario O     Root
clear
if [ "`whoami`" != "root" ];
then
echo "Por favor, ejecuta el script como superusuario (sudo O root)"
exit 1
fi

# Mensaje de Bienvenida
echo "Escriba su Nombre para acceder al Sistema"
read nombre



echo "Bienvenido (a) $nombre a Nuestro Sistema"
echo "Loading ........................."
sleep 2
clear

#Menu Principal Permite, El While permite que se Repita el Menu,
while :
do
echo " ***** Menu ***** "
echo " 1) ingrese password "
echo " 2) Ingrese letra de 7 Caracteres y Mas o Menos "
echo " 3) Ingrese Numero "
echo " Ingrese Opcion porfavor "
echo ""
read option



 

# el case da a conoser varias Opciones segun la opcion Indicada, en Read

case $option in

                1) echo "ingrese password"
            read pass

            echo "$pass" > passw
            clear
            if [ -z $pass ]
            then
            echo "su password esta en blanco"
            sleep 2
#si la clave es mayor o igual 7 su password es segura , de lo contrario es insegura
            elif [ $(wc -c passw | cut -d " " -f1) -ge "8" ] 2>/dev/null
            then
            echo "su password es segura"
            sleep 2
            else
            echo "su password es Muy Insegura"
            sleep 2
            fi
            clear

;;

               2) echo "ingrese palabra"
read pass

echo "$pass" > passw
clear
if [ $(wc -c passw | cut -d " " -f1 ) = "8" ] 2>/dev/null
then
echo " igual a 7 caracteres"
sleep 2
elif [ $(wc -c passw | cut -d " " -f1 ) -le "8" ]
# 2>/dev/null
then
echo "es menor que 7 caracteres"
sleep 2
elif [ $(wc -c passw | cut -d " " -f1 ) -ge "8" ] 2>/dev/null
then
echo "es mayor que 7 caracteres "

#else "es mayor que 7 caracteres" 1>/dev/null
fi
sleep 3
clear

;;

               3) echo "ingrese password"
                read pass

                echo "$pass" > passw
                clear
                if [ -z $pass ]
                then
                echo "su password esta en blanco"
                sleep 2
    elif [ $(wc -c passw | cut -d " " -f1) -ge "7" ] 2>/dev/null
        then
        echo "su password es segura"
        sleep 2
        else
        echo "su password es Muy Insegura"
        sleep 2
        fi
        clear



;;

     
    *) echo ""
            echo " Estimado (a) $nombre A Ingresado opcion #invalida "
              echo ""
              sleep 2
               clear

;;



esac
done

APUNTES_CLASES

APUNTES O EJERCICIOS PAD AQUI

Ciclo FOR : CASE : IF : WHILE


for num in $(seq 1 100)
do
echo $num
done
**************************
**************************

#! /bin/bash

for i in *
    do
        ls -l $i
        sleep 1
done

********************************
********************************
#! /bin/bash
for i in [cr]*
ls -l $i
sleep 1
done
 ************************************
*************************************
#! /bin/bash

for planet in mercurio venus Tierra Martes Jupiter Saturno
echo $planet
sleep 1
done
*******************************************
*******************************************
crear archivo llamado icqserver.txt
chat.icq.com
c.icq.com
company.icq.com
download.icq.com
ftp.icq.com
people.icq.com
www.icq.com


script :

#! /bin/bash
    for ip in $(cat /home/patricio/pad_2013/icqserver.txt)
    host $ip | grep -i "has address"

done


#hostchat.icq.com | grep -i "has addres"
#www.icq.com
# IRC MSJ INSTANTANEA


# para visualizar ip de una pagina
#ping www.google.cl
#hostame www.nic.cl


******************************
******************************
Tarea Ping de toda la red y muestre las up y down y las redireccione a un archivo

********************************
********************************


********************************
********************************

#para escuchar musica en terminal :
yum install -y mplayer
yum install -y lynx

Programa lynx --source http://comixter.org/view/media/remix/grep "mp3"

Script :

#! /bin/bash
for music in $( lynx --source http://comixter.org/view/media/remix/grep "mp3")
do
mplayer $music
done

************************************************
************************************************
time ping -c1 127.0.0.1 # para ver el tiempo de ejecucion de un comando

************************************************
¨***********************************************
para crear subinterfaces:

ifconfig eth0:2 192.168.0.6

2 es el numero de interface  .6 es la ip a crear

*************************************************
*************************************************
#! /bin/bash
cont =1
while  [ cont -le 1 ]
echo "creacion de usuario"
read opcion in  
                          1) conta=1
                             while [ $cont -le 1 ]
                            echo -n "Ingrese el nombre de Usuario"
                            read nombre
                          #useradd -p
                            aduser $nombre >> usuarios.txt
                           sleep 2
                            echo -n " Ingrese Contraseña "
                           passwd "passwds >usuario.txt
                         echo "para seguir presione 1 para Volver 2"
                          read volver ;;
esac

***************************************

Tarea: hacer ping a direcciones ip resultado que tales ip no tienen conexion
Hacer unn Respaldo de Back log accesos del sistema .

*¨*****************************************
*******************************************
#para operaciones de 2 Numeros
#! /bin/bash
echo -n "ingrese numero 1"
read n1
echo -n "ingrese numero 2"
read n2
let let  =  n$1 n$2
echo $let

 echo "****Menu********"
echo "1)Sumar"
echo "2)Resta"
echo "3)Multiplicacion"
echo "4)Division"
echo -n "Ingrese la Opcion:"
read opcion

case opcion in
                               1) let let=$n1+n2
                                ;;

                                 2)let let=$n1.n2
                                ;;
                                3)let let=$n1/n2
                               ;;
                                 4)let let=$n1*n2
                               ;;

esac
echo "################################"
echo "el resultado es : $ let"
read pato
echo "Ingrese la Opcion 1 para continuar Opcion 2 Para Salir "
read salir
done


**********************************
**********************************
-d archivo existe y es un Directorio
-e archivo existe
-f archivo existe y es un archivo regular u Ordinario
-s archivo existe y no esta vacio
-o eres el dueño del archivo

***********************************************
***********************************************
*expresiones:
cadena 1! =cadena 2 =dieferente de
-z cadena = longitud de la cadena es cero
-n cadena 1 = longitud de la cadena 0

nº 1 -le nº2  = menor o igual que
nº1 -ne  nº2 =diferente de
nº1 -gt  nº2 =mayor que
nº1 -ge nº2 =mayor o igual que
nº1 -lt  nº2 =mayor que
nº1 -le  nº2=menor o igual que

OPERADORES
= igual
!= no es igual a (es distinto al )
>   es mayor que
< es menor que
-n no es igual a cadena nula
-z tiene valor nulo (longitud cero)

************************************************
************************************************

#Ejemplo -d
echo "ingrese directorio o archivo"
read var
if test -d $var
then
echo ""es un directorio"
else
echo "no lo es "
fi
*****************************************
*****************************************

CICLO                IF

                                  INICIO CICLO :
                                     /CONDICION
                                     /                        \
                                   /                           \
                                /                                \
                             /                                      \
                         SI                                         NO
                     BLOQUE 1                              BLOQUE
                                         >                    <
                                                FIN
                     FI
**********************************************
**********************************************
Ejemplo de un Menú

 #! /bin/bash
algo=1
while [ $algo - le 1 ]
do
      echo "####Menu######"
echo "1 permisos"
echo "2 donde me encuentro"
echo "3 Salir "
echo -n "Ingrese Opcion:"
read opcion

case $opcion in 1) ls
                          ;;
                        2) pwd
                       ;;
                       3) let algo =$algo+1
                     ;;
echo "Fin Script"
esac

done

**************************
**************************

martes, 28 de mayo de 2013

VAR_SCRI_PROF

CADA SCRIPT SE ENCUENTRA SEPARADO POR :
*****************************************************
*****************************************************

#! /bin/bash
clear
#validar si un usuario esta conectado al sistema, Validando si existe #en el sistema

echo;echo

cont=1
while [ $cont -le 1 ]
do
echo "***************Menu_Usuarios*************"
echo "1)crear Usuario"
echo  "2)Usuario Conectados"
echo  "3)Validar Usuario conectado"
echo  "4)Validar si Usuario Existe en el Sistema"
echo "Salir"
echo ""
echo "elija la opcion que decea ejecutar"
echo ""
read opc

case $opc in 
               1)pt=1
                 while [ $pt -le 1 ]
                 do
                 sleep 2

                echo "Ingrese usuario a crear"
                read user
                if [ -z $user ]
then
echo "su password esta en blanco"
                     
                useradd $user
                passwd $user
                echo " Usuario Creado exitosamente $(cat /etc/passwd | grep -i $user | cut -d":" -f1)"

echo "Ingrese 1 Si desea volver a crear usuario y Ingrerse 2 para volver al menu principal"
                  read pt
                  clear
fi
                  done


;;



                2)
                 kar=1
                 while [ $kar -le 1 ]
                 do
                 sleep 2
                 who | cut -d " " -f1
 echo "Ingrese 1 Si desea volver a consultar y Ingrerse 2 para volver al menu principal"
                  read kar
                  clear
                  done
;;

                3)
                 pat=1
                 while [ $pat -le 1 ]
                 do
                 sleep 2


                 if id | grep uid=0 >/dev/null
                 then
             clear
             echo;echo
             echo -n "Ingrese USUARIO: "
             read user

             if cat /etc/passwd | grep -i $user >/dev/null
             then
                 echo "El usuario - $user - ya existe en el sistema ..."
                 echo;echo
                 sleep 1

            else
        echo;echo
        echo "El usuario - $user - no existe en el sistema ......."

fi
fi
 echo "Ingrese 1 Si desea volver a consultar y Ingrerse 2 para volver al menu principal"
                  read pat
                  clear
                  done


;;

                 4) echo "Usted a elegido salir Gracias por preferirnos Vuelva pronto"
                   sleep 5
                   exit



esac
done


********************************************************************
*********************************************************************

 Agenda Telefonica


 #! /bin/bash
clear
#validar si un usuario esta conectado al sistema, Validando si existe #en el sistema

echo;echo

cont=1
while [ $cont -le 1 ]
do
echo "***************Menu_Usuarios*************"
echo "1)crear Usuario"
echo  "2)Usuario Conectados"
echo  "3)Validar Usuario conectado"
echo  "4)Validar si Usuario Existe en el Sistema"
echo "Salir"
echo ""
echo "elija la opcion que decea ejecutar"
echo ""
read opc

case $opc in
               1)pt=1
                 while [ $pt -le 1 ]
                 do
                 sleep 2

                echo "Ingrese usuario a crear"
                read user
                if [ -z $user ]
then
echo "su password esta en blanco"
                    
                useradd $user
                passwd $user
                echo " Usuario Creado exitosamente $(cat /etc/passwd | grep -i $user | cut -d":" -f1)"

echo "Ingrese 1 Si desea volver a crear usuario y Ingrerse 2 para volver al menu principal"
                  read pt
                  clear
fi
                  done


;;



                2)
                 kar=1
                 while [ $kar -le 1 ]
                 do
                 sleep 2
                 who | cut -d " " -f1
 echo "Ingrese 1 Si desea volver a consultar y Ingrerse 2 para volver al menu principal"
                  read kar
                  clear
                  done
;;

                3)
                 pat=1
                 while [ $pat -le 1 ]
                 do
                 sleep 2


                 if id | grep uid=0 >/dev/null
                 then
             clear
             echo;echo
             echo -n "Ingrese USUARIO: "
             read user

             if cat /etc/passwd | grep -i $user >/dev/null
             then
                 echo "El usuario - $user - ya existe en el sistema ..."
                 echo;echo
                 sleep 1

            else
        echo;echo
        echo "El usuario - $user - no existe en el sistema ......."

fi
fi
 echo "Ingrese 1 Si desea volver a consultar y Ingrerse 2 para volver al menu principal"
                  read pat
                  clear
                  done


;;

                 4) echo "Usted a elegido salir Gracias por preferirnos Vuelva pronto"
                   sleep 5
                   exit



esac
done

********************************************************************
********************************************************************


Script_Ejemplo Usuario_  Profe

#!/bin/bash


if id | grep uid=0 >/dev/null
then
    clear
    echo;echo
    echo -n "Ingrese USUARIO: "
    read user

    if cat /etc/passwd | grep -i $user >/dev/null
    then
        echo
        echo "El usuario - $user - ya existe en el sistema ......."
        echo
        echo "[*] $user no puede volver a ser creado"
        echo;echo
        sleep 1

    else
        echo;echo
        echo "El usuario - $user - no existe en el sistema ......."
        echo
        sleep 1
        echo -n "[*] Desea crearlo (Y/n): "
        read res

        if [ $res == "Y" ] || [ $res == "y" ] || [ $res == "yes" ] || [ $res == "YES" ]
        then
            echo;echo
            echo "[*] Usuario creandose ....."
            echo "[*] Genrandose Informe ...."
            useradd $user
            sleep 3

        while :
        do
            clear
            echo;echo
            echo "---------------------- "
            echo ">  REPORTE DE $user    "
            echo "---------------------- "
            echo;echo
            echo "[*] User ->    $(cat /etc/passwd | grep -i $user | cut -d":" -f1)"

            if [ $(cat /etc/shadow | grep -i $user | cut -d":" -f2) == "!" ]
            then
                echo "[*] Pass ->    Sin Password"
            else
                echo "[*] Pass ->    $(cat /etc/shadow | grep -i $user | cut -d":" -f2)"
            fi

            echo "[*] UID ->     $(cat /etc/passwd | grep -i $user | cut -d":" -f3)"
            echo "[*] GID ->     $(cat /etc/passwd | grep -i $user | cut -d":" -f4)"

            if [ -z $(cat /etc/passwd | grep -i $user | cut -d":" -f5) ] 2>/dev/null
            then
                echo "[*] Comment    Sin Comentarios"
            else
                echo "[*] Comment -> $(cat /etc/passwd | grep -i $user | cut -d":" -f5)"
            fi

            echo "[*] Home ->    $(cat /etc/passwd | grep -i $user | cut -d":" -f6)"
            echo "[*] Shell ->   $(cat /etc/passwd | grep -i $user | cut -d":" -f7)"
            echo;echo
            sleep 1
            echo -n "[*] MODIFICAR A - $user - (Y/n): "
            read mod

                if [ $mod == "Y" ] || [ $mod == "y" ] || [ $mod == "yes" ] || [ $mod == "YES" ]
                then
                    while :
                        do
                    clear
                    echo;echo
                    echo "             [C]omentario"
                    echo "             [H]ome"
                    echo "             [G]rupo"
                    echo "             [S]hell"
                    echo "             [P]assword"
                    echo "             [B]ack"
                    echo
                    sleep 1
                    echo -n "          Ingrese Opcion: "
                    read opc
                    echo
                    case $opc in

                        C|c) echo -n "Ingrese el comentario: "
                        read com

                            if [ -z $com ]
                            then
                                echo "No ingreso nada como comentario ..."
                                sleep 2
                            else
                                usermod -c "$com" $user >/dev/null
                                echo "procesando ..."
                                sleep 2
                            fi
                        ;;

                        H|h) echo -n "Ingrese el home: "
                        read hm

                            if [ -z $hm ]
                                                        then
                                                                echo "No ingreso nada como home ..."
                                sleep 2
                                                        else
                                usermod -d /home/$hm $user >/dev/null
                                echo "procesando ..."
                                sleep 2
                            fi
                        ;;

                        G|g) echo -n "Ingrese el gid: "
                        read gi

                            if [ $gi -gt "500" ] 2>/dev/null
                            then
                                usermod -g $gi $user >/dev/null
                                echo "procesando ..."
                                sleep 2

                            elif [ $gi -le "500" ] 2>/dev/null
                            then
                                echo "el uid tiene que ser mayor a 500"
                                sleep 2
                            else
                                echo "Se esperaba un valor Numerico"
                                sleep 2
                            fi
                        ;;

                        S|s) echo "Shell Disponibles"
                        echo "----------------"
                        echo
                        cat /etc/shells | grep -v "#"
                        echo;echo
                        echo -n "Ingrese shell: "
                        read shl


                        if cat /etc/shells | grep -v "#" | grep ^$shl
                        then
                            usermod -s $shl $user >/dev/null
                                echo "procesando ..."
                                sleep 2
                        else
                            echo "Debe ingresar la ruta completa ...."
                            sleep 3
                            echo;echo
                        fi
                        ;;

                        P|p) passwd $user
                        ;;

                        B|b)
                        echo;echo
                                            echo "saliendo del menu ..."
                                            sleep 2
                                            echo;echo
                                            break;;

                        *)
                        echo;echo
                        echo "Usted escogio una opcion invalida ..."
                        echo
                        sleep 4
                        ;;
                    esac
                done

                elif [ $mod == "N" ] || [ $mod == "n" ] || [ $mod == "no" ] || [ $mod == "NO" ]
                                then
                    echo;echo
                    echo "Saliendo del script ..."
                    sleep 2
                    echo "bye !!!"
                    echo;echo
                    exit
                else
                    echo;echo
                    echo "Escogio una opcion Invalida ..."
                    sleep 4
                    echo;echo
                fi

        done


    elif [  $res == "N" ] || [ $res == "n" ] || [ $res == "NO" ] || [ $res == "no" ]
    then
        echo;echo
        echo "usted escogio no crear al usuario - $user - en esta ocacion ......."
        echo "bye !!!"
        echo;echo
        sleep 1

    fi


fi

else
    echo;echo
    echo " --------------------------------------"
    echo "| SOLO ROOT PUEDE EJCUTAR ESTE SCRIPT |"
    echo " ------------------------------------- "
    echo;echo
fi


*********************************************************************
*************************************************************************
---------------------------------------------------------------------------------------------------
__________________________________________________________________________





1.##### vi 100 #############################################################

#!/bin/bash
#imprime numeros del 1 al 99 
cont=0
while [ $cont -le 99 ]
do
let cont=$cont+1
echo "numero $cont"
done

2.##### vi 100- ############################################################

#!/bin/bash
#imprime numeros del 100 al 1
cont=101
while [ $cont -ge 1 ]
do
let cont=$cont-1
echo "numero $cont"
done

3.##### vi 100pares #############################################################

#!/bin/bash
#muestra numeros pares del 2 al 98  
#2
#4
# 6
cont=0
while [ $cont -le 98 ]
do
let cont=$cont+2
echo "numero $cont"
done

4.##### vi Impares ################################################################

#!/bin/bash
#muestra numeros impares del 1 al 97
cont=-1
while [ $cont -le 97 ]
do
let acumulador=$acumulador+1
let cont=$cont+2
echo "numero $cont"
done
echo""
echo "Hay $acumulador numeros impares"

5.##### vi Saldo ################################################################

#!/bin/bash
#realiza una multiplicacion de dias 
echo -n "Ingrese dia: "
read dia
let dias=$dia*30
let saldo=30000-$dias
echo "su saldo es: $saldo"

6.##### vi Positivos #############################################################

#!/bin/bash
#NOS DICE SI UN NUMNERO ES POSITIVO
echo -n "Ingrese su numero: "
read num
if [ $num -ge 0 ]
then
echo "El numero es positivo"
else
echo "El numero es negativo"
fi

7.##### vi Naturales ################################################################

#!/bin/bash
cont=0
echo -n "Ingrese su numero: "
read num
echo""
while [ $cont -lt $num ]
do
let cont=$cont+1
echo "$cont"
done

8.##### vi Cilindro ################################################################

#!/bin/bash
echo -n "Ingrese el radio (en metros): "
read radio
echo -n "Ingrese la altura (en metros): "
read altura
echo""
let volumen=3*$radio*$radio*$
altura
echo""
echo "El volumen del cilindro es $volumen metros cubicos"

9.##### vi Cubo ###############################################################

#!/bin/bash
echo -n "Ingrese el lado: "
read lado
echo""
let Area=$lado*$lado*6
let Perimetro=$lado*12
let Volumen=$lado*$lado*$lado
echo "El Area es: $Area metros cuadrados"
echo "El Perimetro es: $Perimetro metros"
echo "El Volumen es: $Volumen metros cubicos"

10.##### vi Liquidaciones #####

#!/bin/bash
echo -n "Ingrese el nombre del docente: "
read nombre
echo -n "Ingrese las horas trabajadas: "
read horas
echo -n "Ingrese las horas extra trabajadas: "
read extras
echo""
let Liquidacion=$horas*10000+$extras*12000
echo""
echo "La liquidacion total del docente es: $Liquidacion pesos"



11.##### vi Grados ################################################################

#!/bin/bash
echo -n "Ingrese grados celsius: "
read celsius
let Kelvin=$celsius+273
let Farenheit=2*$celsius+32
echo""
echo "Los grados celsius ingresados equivalen a $Kelvin grados K y a $Farenheit grados F"

12.##### vi Bebidas #####

#!/bin/bash
cont=1
while [ $cont le 1 ]
do
echo "¿Que bebida prefiere?"
echo "Opciones:"
echo "1) Coca-Cola"
echo "2) Pepsi"
echo "3) Fanta"
echo "4) Salir"
echo""
echo -n "Ingrese su opcion: "
read opcion
echo""
case $opcion in
1)let beb1=beb1+1;;
2)let beb2=beb2+1;;
3)let beb3=beb3+1;;
4)let cont=$cont+1;;
esac
let acumulador=$acumulador+1
done
let Porc1=(beb1*100)/$acumulador
let Porc2=(beb2*100)/$acumulador
let Porc3=(beb3*100)/$acumulador
echo""
echo "Un $Porc1% prefiere Coca-Cola"
echo "Un $Porc2% prefiere Pepsi"
echo "Un $Porc3% prefiere Fanta"


13.##### vi LiquidacionesRedireccionadas #############################################

#!/bin/bash
cont=1
while [ $cont -le 1 ]
do
echo -n "Ingrese su nombre completo: "
read nombre
echo -n "Ingrese las horas trabajadas: "
read horas
echo -n "Ingrese su valor hora: "
read valor
echo""
if [ $horas -le 60 ]
then
echo "Esta Despedido!"
else
echo "Siga Trabajando!"
fi
let total=$horas*$valor
echo "Su liquidacion es: $total pesos"
echo "Para continuar presione 1, para salir presione 2"
read cont
done
echo "Nombre: $nombre Liquidacion: $liquidacion pesos" >> base_de_datos.txt
============================================================
************************************************************************************************
EJER__1

ejer1
#! /bin/bash
#
variable=0
while [ $variable -le 99 ]
do
let variable=$variable+1
echo "numero $variable"
done

========================================================
EJER_2
#! /bin/bash
#
contador=101
while [ $contador-ge 1 ]
do
let contador=$contador-1
echo "numero $contador"

done

======================================================
EJER_3
#! /bin/bash
#
variable=0
while [ $variable -le 98 ]
do
let variable=$variable+2
echo "resultado $variable"
done

==============================================================
EJER_4

#! /bin/bash

#
clear
echo
contador=1
while [ $contador -le 100 ]
do
echo "numero $contador"
let acumulador=$acumulador+1
let contador=$contador+2
done
echo
echo
echo "contador de impares"