Archive

Archive for the ‘Scripts’ Category

Tipo de errores al crear Tareas Pragramadas en windows

11 junio, 2014 1 comentario

0 ó 0x0: La operación se ha completado con éxito.

1 o 0x1: Función incorrecta llamada o función desconocida llamada.

2 o 0x2: El archivo no encontrado.

10 o 0xa: El entorno es incorrecto.

0x41300: La tarea está lista para funcionar en su siguiente hora programada.

0x41301: La tarea se está ejecutando actualmente.

0x41302: La tarea está desactivada.

0x41303: La tarea no se ha ejecutado.

0x41304: No hay más carreras programadas para esta tarea.

0x41306: La tarea está terminada.

0x8004131F: Un ejemplo de esta tarea se está ejecutando.

0x800704DD: El servicio no está disponible (está en “Ejecutar sólo cuando un usuario inicia sesión por« control?)

0xC000013A: La aplicación fin con motivo de una CTRL + C.

0xC06D007E: excepción de software desconocido

Transformar un .bat a un .exe sin instalación de programas

Borrar archivos de cierta antigüedad via linea de comandos – WINDOWS y LINUX

Cómo guardar el resultado de un comando en una variable

Cómo guardar el resultado de un comando en una variable

Preámbulo

Frecuentemente es necesario guardar el resultado de un comando (o su código de retorno) en una variable a fin de poder utilizarlo luego en un script. Para ello veremos varios ejemplos:

Sintaxis

var=$(comando)

Nota: esta sintaxis es preferible a la antigua que utiliza estos caracteres: (`comando`)

Ejemplos

  • Guardar de la salida estándar:
    • únicamente stdout
      • var=$(comando)
    • stdout y stderr
      • var=$(comando 2>&1)
    • Guardar el código de retorno ($?)
      • únicamente código de retorno
        • comando
        • var=$?
      • Los dos
        • var=$(comando)
        • var=$?
Categorías:Linux, Scripts Etiquetas: , , ,

Mostrar el tamaño de una Base de Datos en MySQL

http://www.k4ch0.org/mostrar-el-tamano-de-una-base-de-datos-en-mysql/

 

SELECT table_schema "database_name",
sum( data_length + index_length ) / 1024 /1024 "Data Base Size in MB",sum( data_free )/ 1024 / 1024 "Free Space in MB"
FROM information_schema.TABLES GROUP BY table_schema ;

Zabbix: Script para reducir entradas en tabla History

https://www.zabbix.com/forum/showthread.php?t=14105

 

#!/bin/bash
############## VARIABLES ################
MySQL_HOST=srvhost
MySQL_DB=dbname
MySQL_USER=mysqluser
MySQL_PWD=mysqlpass
LOG_FILE=GenCleanHistory.log

##########################################################################################
 ############################ NO MODIFICAR NADA A PARTIR DE AQUI ########################
##########################################################################################
### Busco el path de los comando a utilizar
DATE=`which date`
MYSQL=`which mysql`
ECHO=`which echo`
EXPR=`which expr`
CAT=`which cat`
PS=`which ps`
GREP=`which grep`
AWK=`which awk`
CLEAR=`which clear`

$CLEAR
$ECHO > $LOG_FILE
# Logeo PATHs
$ECHO "-----------> Paths Comandos <-----------" > $LOG_FILE
$ECHO "date="$DATE > $LOG_FILE
$ECHO "mysql="$MYSQL >> $LOG_FILE
$ECHO "expr="$EXPR >> $LOG_FILE
$ECHO "cat="$CAT >> $LOG_FILE
$ECHO "----------------------------------------" >> $LOG_FILE

# Obtengo la fecha actual del sistema
ACTUAL=`$DATE +%s`
$ECHO "-----------> Fechas en segundos <-----------" >> $LOG_FILE
$ECHO "Fecha Actual="$ACTUAL >> $LOG_FILE

# Constantes de segundos en:
# MESES1 -> 30 dias
# MESES2 -> 60 dias
# MESES3 -> 90 dias

MESES1=2592000
MESES2=5184000
MESES3=7776000
$ECHO "30 dias(s)="$MESES1 >> $LOG_FILE
$ECHO "60 dias(s)="$MESES2 >> $LOG_FILE
$ECHO "90 dias(s)="$MESES3 >> $LOG_FILE

# Elijo la constante
MES=$MESES2
$ECHO "Segundos a utilizar="$MES >> $LOG_FILE

# Realizo la cuenta para obtener la cantidad de segundos a guardar
RESTA=`$EXPR $ACTUAL - $MES`
$ECHO "Resultado="$RESTA >> $LOG_FILE
$ECHO "-------------------------------------------" >> $LOG_FILE
# Genero el archivo .sql
# Constante de nombre archiv SQL
SQLSCRIPT=CleanZabbixDB
$ECHO "DELETE FROM history WHERE clock <= $RESTA;" > $SQLSCRIPT.sql
$ECHO "DELETE FROM history_log WHERE clock <= $RESTA;" >> $SQLSCRIPT.sql
$ECHO "DELETE FROM history_str_sync WHERE clock <= $RESTA;" >> $SQLSCRIPT.sql
$ECHO "DELETE FROM history_sync WHERE clock <= $RESTA;" >> $SQLSCRIPT.sql
$ECHO "DELETE FROM history_text WHERE clock <= $RESTA;" >> $SQLSCRIPT.sql
$ECHO "DELETE FROM history_uint WHERE clock <= $RESTA;" >> $SQLSCRIPT.sql
$ECHO "DELETE FROM history_uint_sync WHERE clock <= $RESTA;" >> $SQLSCRIPT.sql
$ECHO "DELETE FROM alerts WHERE clock <= $RESTA;" >> $SQLSCRIPT.sql
$ECHO "DELETE FROM auditlog WHERE clock <= $RESTA;" >> $SQLSCRIPT.sql

#$ECHO "SELECT * FROM alerts LIMIT 10000;" > $SQLSCRIPT.sql

$ECHO "-------------------------------> Consultas SQL <-------------------------------" >> $LOG_FILE
$CAT $SQLSCRIPT.sql >> $LOG_FILE
$ECHO "-------------------------------------------------------------------------------" >> $LOG_FILE

### Creo un Script temporal para lanzar las consultas SQL y luego limpiar los archivos generados.

`$MYSQL -h$MySQL_HOST -u$MySQL_USER -p$MySQL_PWD -D$MySQL_DB < $SQLSCRIPT.sql > $SQLSCRIPT.tab &`
PID_RUN=`$PS -AF | $GREP "mysql" | $GREP -v grep | $GREP localhost| $AWK '{print $2}'`
$ECHO "PID MySQL="$PID_RUN >> $LOG_FILE
$ECHO "Por Favor verifique los procesos en base al PID guardado ($PID_RUN)" >> $LOG_FILE
$CAT $LOG_FILE

IPTABLES Firewall