jueves, 27 de enero de 2011

Crear tareas contrab (linux)

Para crear tareas en linux poner crontab -e luego la opción 2 (más visual)

# m h dom mon dow command

#minute hour dayofmonth dayofweek "comando"

completar con asteriscos lo que no se va a usar y en el campo de díadesemana es de 0 a7 (0 y 7 son Domingo) hora de 0-23 minuto del 0-59 diademes 1-31 mes 1-12

---- con el slash (/) antepuesto al número es para ejecutar el comando cada cierto tiempo

ejemplo:

# m h dom mon dow command
   */1 *   *      *       *    mkdir /home/ejar/Escritorio/Archivo

tambien se puede poner cosas como meses del 1 al 5 con 1-5

tambien se pueden unir

ejemplo:

* 3-23/3 * * * comando


---------------------------------------------------------------------------------------------------

Cada usuario tiene un fichero para programar las tareas y con el comando contrab se edita.

contrab -e -> es para editar el fichero del propio usuario
(Ojo: al editarlo si quieres guardarlo se pone Ctrl+X y se guardan los cambios)

contrab -l -> muestra el contenido del fichero contrab del usuario

se puede especificar el usuario con el comando "contrab -u nombreusuario" -e, -l (la opcion)

Tambien:

Existen cadenas de caracteres especiales

Cadena       Significado
@daily        0 0 * * *
@hourly      0 * * * *
@midnight  como el @daily
@weekly     0 0 * * 0
@monthly   0 0 1 * *
@yearly      0 0 1 1 *
@annually  como @yearly

viernes, 14 de enero de 2011

Configurar IP

#### para ver lo compartido via samba, poner "Ctrl+L" en el explorer luego...
#### smb://172.16.205.30 (<--- esa es la IP)


#Ejemplo de configuracion de IP desde Shell

#!/bin/bash

sudo ifconfig eth0 172.16.205.6 netmask 255.255.0.0 up
sudo route add default gw 172.16.0.1
ifconfig

#Fin

Mediante Switch case

case $1 in
a)....

viernes, 17 de diciembre de 2010

Comparar cadenas de caracteres

#!/bin/bash

echo escribe una palabra
read PAL1
echo escribe otra palabra
read PAL2

if [ -z "$PAL1" ]; then  "la opción -z es para ver si hay valores nulos"
 echo no puede haber valores nulos
 exit
elif [ -z "$PAL2" ]; then "al poner la variable entre comillas dobles"" es para que tenga en cuenta espacios en blanco
 echo no puede haber valores nulos
 exit
fi

if [ "$PAL1" \> "$PAL2" ]  "para cualquier operación siempre anteponer el backslash "\" "
then
 echo la mayor es "$PAL1"
else
 echo la mayor es "$PAL2"
fi

jueves, 16 de diciembre de 2010

SQL ORACLE

para ver las tablas creadas:

select table_name
from user_tables;

ejemplo de ejercicio:

CREATE TABLE Psicologos( -------------------------> crea la tabla
NIF        Varchar2(10),            
-------------------------> atributo y tipo de datos
Nombre        Varchar2(15) NOT NULL,
Apellido1    Varchar2(15) NOT NULL,
Apellido2    Varchar2(15),
Especialidad    Varchar2(15) NOT NULL,
Direccion    Varchar2(50),
 Constraint PK_Psicologos PRIMARY KEY (NIF)
-------------------------> clave primaria
);

CREATE TABLE Pacientes(
NIF        Varchar2(10),
Nombre        Varchar2(15) NOT NULL,
Apellido1    Varchar2(15) NOT NULL,
Apellido2    Varchar2(15),
Fec_Nacim    Date NOT NULL,
Telefono    Varchar2(10),

 Constraint PK_Pacientes PRIMARY KEY (NIF),
 Constraint CH_fec_nacim CHECK (Fec_Nacim >= TO_DATE('01/01/1900','DD/MM/YYYY'))
);
-------------------------> check de restricciones y  ");" es para terminar

CREATE TABLE Transtornos (
Cod_Transtorno    Number(5),
Nombre        Varchar2(25) NOT NULL,
Sintomas    Varchar2(250) NOT NULL,
 Constraint PK_Transtornos PRIMARY KEY (Cod_Transtornos),
 Constraint CH_Cod_trans CHECK (Cod_Transtornos >=0)
);

CREATE TABLE Terapias (
Cod_Terapia     Number(5),
Nombre        Varchar2(25) NOT NULL,
Observaciones     Varchar2(250) NOT NULL,
 Constraint PK_Terapias PRIMARY KEY (Cod_Terapia),
 Constraint CH_Cod_terap CHECK (Cod_Terapia >=0)
);

CREATE TABLE Sesiones(
NIF_PS        Varchar2(10),
NIF_PA        Varchar2(10),
Cod_Transtorno    Number(5),
Cod_Terapia    Number(5),
Fecha        Date,
 Constraint PK_Sesiones PRIMARY KEY (NIF_PS,NIF_PA,Cod_Transtornos,Cod_Terapia,Fecha),
 Constraint CH_Fecha CHECK (Fecha >= TO DATE('01/01/1990','DD/MM/YYYY')),
 Constraint FK_ses_psi     FOREIGN KEY (NIF_PS)
            REFERENCES Psicologos (NIF)
            ON DELETE CASCADE,
 Constraint FK_ses_pa    FOREIGN KEY (NIF_PA)
            REFERENCES Pacientes (NIF)
            ON DELETE CASCADE,
 Constraint FK_ses_pa    FOREIGN KEY (NIF_PA)
            REFERENCES Pacientes (NIF)
            ON DELETE CASCADE,
);
----------------------------------- Inserción de datos ------------------------------------
INSERT
INTO Psicologos --------> en la tabla
VALUES ('PS123456','JUAN,'PÉREZ',GARCÍA','CLÍNICA','C/REAL'); ----> valores

INSERT
INTO Pacientes
VALUES ('PA123444','MARÍA','GARCÍA','LÓPEZ',TO_DATE('12/12/1980','DD/MM/YYYY'),'666666');

INSERT
INTO Transtornos
VALUES (100,'JORCH','SINTOMAS');

INSERT
INTO Terapias
VALUES (1,'PSICOANÁLISIS','OBSERVACIÓN');

INSERT
INTO Sesiones
VALUES('PS123456','PA123444',100,1,SYSDATE);

COMMIT; --------------------------------> es para validar los cambios

viernes, 26 de noviembre de 2010

Ejemplos Shell (linux)

.........................................inicio (test -L)...............................................
#!/bin/bash

if test -L $1; then #devuelve verdadero o falso, si test -L es verdadero entonces es un enlace simbolico
 echo $1 es un enlace simbolico
else
 echo $1 no es un enlace simbolico
fi
.................................................fin.........................................................

jueves, 25 de noviembre de 2010

ls -l (nombre) | cut -d " " -f1
wc -l ..... cuenta lineas
ps (procesos) -ef ... (unproceso?)
cut -d: -f2 .... -d es el delimitador y -f es la fila ... ejem: -f1-3 (del 1 al 3)

miércoles, 24 de noviembre de 2010

Opciṕn Test (Linux

test -f ( si es un fichero devuelve 0)
test -s (si el tamaño es mayor a 0 devuelve 0)
test -d (si es un directorio devuelve 0)
test -x (si tiene permiso de ejecución devuelve 0)

en lugar de test se pueden usar corchetes
---------------------------------------(en el fichero.sh)........................................................
[ -d /home ]
echo $?
.....................................................(fin)..............................................................
Evaluar cadenas de caracteres
...................................................(en el fichero.sh)............................................
#[ cadena1 = cadena2 ]
[ "$1" = "$2" ]
echo $?
[ "$1" != "$2" ]
echo $?
....................................................(fin)...............................................................

.................................................(en el fichero.sh).............................................

#Comparar numeros
# -eq (igual)
# -ne (distinto de)
# -lt (menor que)
# -gt (mayor que)
read N1
read N2

[ $N1 -eq $N2 ]
echo $?
[ $N1 -ne $N2 ]
echo $? 
[ $N1 -lt $N2 ]
echo $?
[ $N1 -gt $N2 ]
echo $?
....................................................(fin).............................................................................................................................(fichero.sh)..............................................
# usar el if
if [ -d $1 ]
# ve si existe el directorio
then ls -ld $1
elif [ -f $1 ]
# ve si es un fichero
then
cat $1
else
echo creo que no existe
fi
.............................................................(fin)............................................................

simple tracker
Flowers Roses