En este caso uso Solaris y ksh, pero dependiendo de la versión de Unix/Linux que estén utilizando, pueden variar algunos parámetros. De todas formas, la idea sirve para adaptarlos en cada ambiente.
Eliminar archivos gz con mas de 3 días de antiguedad
find . -mtime +3 -name "*.gz" -exec rm {} \;
Ejecutar un shell en background e independiente de la conexión
nohup ./shell.sh &
(este script retorna un número de job, puede ser útil anotarlo)
Para traer el proceso nuevamente al foreground
fg %(num_job)
(el número de job fue el que se retornó al colocar el proceso en background)
Colocar los nombres de archivo de un listado en un array
ARQS=$(cd ${DIR_RECARGA} ; ls *.dat)
Correr un script de sqlplus en Shell
#!/bin/ksh
sqlplus -s /nolog << !EOF
@$ORACLE_HOME/scripts/mi_script.sql
exit;
!EOF
Compactar todos los archivos de un directorio
#!/usr/sbin/ksh
for arch in `ls -t
do
gzip $arch
done
Ver y buscar en el contenido de un archivo comprimido con gzip
gzcat - CAT para archivos gz
gzgrep - GREP para archivos gz
Ver también:
Cómo verificar archivos y directorios en Shell
Limpieza de archivos en Unix
Cómo obtener la fecha de ayer en Unix
1 comentario:
Pra llamar un script de sqlplus se puede hacer así:
sqlplus -s /nolog @$ORACLE_HOME/scripts/mi_script.sql
Publicar un comentario