Sistema Operativo ALDOS
Dezoft

Si algunos de nuestros foros, manuales, ALDOS, paquetería o proyectos te han resultado de ayuda, apreciaremos mucho nos apoyes con un donativo.

 Índice > Todo acerca de Linux > Programación y desarrollo Nuevo tema Publicar Respuesta
 Script en bash
Tema anterior Tema siguiente
   
Polo23
Publicado en 27/06/09 05:40 (Leído 1595 veces)  

Participa poco
curious
Forum User

Inscrito: 27/06/09 Publicaciones: 17
Hola Buenas madrugadas, despues de muchos intentos recurro a ustedes espero me puedan ayudar
Tengo el siguiente script
*******************************************
#script.sh

#! /bin/bash

mem_ram(){
echo -n " Mem. Ram: ["
POR=`free -m | awk '{ if ( $1 == "Mem:" ) print $3/$2*100}'|cut -f1 -d","`
for i in $(seq 1 $(( $POR/2 )) )
do
echo -n "="
# printf "%1s" "="
done
for i in $(seq 1 $(( 50 - $POR/2 )) )
do
echo -n " "
# printf "%1s" " "
done
echo "] $POR%"


}

mem_swap(){
echo -n " Mem. Swap: ["
POR=`free -m | awk '{ if ( $1 == "Swap:" ) print $3/$2*100}'|cut -f1 -d","`
for i in $(seq 1 $(( $POR/2 )) )
do
echo -n "="
# printf "%1s" "="
done
for i in $(seq 1 $(( 50 - $POR/2 )) )
do
echo -n " "
# printf "%1s" " "
done
echo "] $POR%"
}

# disco_duro
mem_ram
mem_swap

exit 0

**********************************************************************
si este script lo ejecuto ./script.sh
todo va bien, tengo la salida en pantalla todo bien.
si hago ./script.sh>reporte.txt
todo va bien, me guarda en el archivo todo bien
si lo mando en background ./script.sh>reporte.txt&
igual todo lo hace bien el resultado se pone en el archivo
Da esto:
Mem. Ram: [================================================ ] 96%
Mem. Swap: [ ] 0%


ahora hice el intento de meterlo al "crontab -e"

#Minutos[0-59] Hora[0-23] Dia[1-31] Mes[1-12] DiaSemana[0-6/Dom-Sab] Comando
0 12 * * * /home/user/script.sh>/home/user/pruebakkk.txt

y pues segun lo hace pero en el archivo ya no se guardan las cosas bien
Mem. Ram: [] 96.334%
Mem. Swap: [ ] 0%



 
Perfil
 Citar
Carlos David Yoong Loor
Publicado en 02/07/09 09:06  

Nuevo
Forum User

Inscrito: 02/07/09 Publicaciones: 8
País:Ecuador
Hace algún tiempo hacía scripts que se ejecutaban al encener el computador, con crond directiva @reboot o algo así..., el asunto es que al parecer el entorno en el que se ejecutaba no era el mismo que en el que yo hacia las pruebas, me refiero a las PATHs, me tocó poner la ruta completa a los comandos que usaba o en su defecto declarar variables así:

PHP Formatted Code

#Aqui lo declaro
$ECHO=/bin/echo

#Y aqui lo uso
$ECHO "Hola mundo..."
 


Realiza los cambios respectivos y cuéntanos como te fué...

Saludos
Monkito

Cogito Ergo Sum
 
Perfil
 Citar
Polo23
Publicado en 03/07/09 06:33  

Participa poco
Forum User

Inscrito: 27/06/09 Publicaciones: 17
Si es eso, lo de las variables de entorno.
por alguna razon cuando lo ejecuto tomo como punto decimal la',' y cuando lo mando a el cron toma el '.', pero bueno todo se arregloe metiendole esta linea

source /root/.bash_profile

bueno ya quedo bien, aun que alguien que sabe mas me dice que tiene algo mas, pr que no es normal que haga eso. en fin, por ahroa va, otro dia con mas tiempo le husmeare mas.

gracias por tu respuesta.
 
Perfil
 Citar
Contenido generado en: 0,16 segundos Nuevo tema Publicar Respuesta
 Todas las horas son UTC. Hora actual 05:17 .
Tema normal Tema normal
Tema persistente Tema persistente
Tema cerrado Tema cerrado
Nueva publicación Nueva publicación
Persistente con nueva publicación Persistente con nueva publicación
Cerrado con nueva publicación Cerrado con nueva publicación
Ver publicaciones anónimas 
Usuarios anónimos pueden publicar 
Se permite HTML Filtrado 
Contenido censurado