Escribir comandos en un fichero de texto
Guardar el fichero
Dar permisos de ejecución (chmod +x nombrefichero)
Escibir en la consola ./nombrefichero
Argumentos de un Shell
Hay q crear un fichero con extensión “.sh”
$0 => Argumento/parámetro 0 (dólar cero es el Argumento del programa (donde está)) (imprime)
$# => guarda el número de argumentos que recibe el programa
$* => guarda la cadena de argumentos (excluyendo $0)
$? => guarda el código de retorno de la última orden ejecutada (0 si no hay error, distinto de 0 si lo hay)
Operadores:
+ sumar
-restar
*multiplicar
/dividir
% para el resto de la división
Ejemplo:
Read a b
C=`expr $a\*$b`
Echo $cAlternativa:
En vez de usar "expr" se puede usar los operadores [corchetes]
Operadores relacionales
Sirve para empezar palabras argumentos, números...
Si el resultado de la comparación es cierto, devuelven 1,
Si es fichero, devuelven 0
= (compara si son iguales)
!= (distinto)
> (mayor que)
< (menor que)
Hay que usarlos con \
\> \<
>= (mayor o igual) <=(menor o igual)
Operadores lógicos
Se usan para comparar 2 argumentos (arg1, arg2).
devuelven un argumento o parte del otro
& -> Y arg1 & arg2
Si arg1 y arg2 son distintos de cero, el resultado es arg1, si no, el resultado es arg2
: (2 puntos)
argi : arg2
arg2 es el patrón buscado en arg1. Si el patrón arg 2 está encerrado entre paréntesis \( u \), el resultado es la parte de arg1 que coincide con arg2, si no, el resultado es el número de caracteres que cpinciden.
NOTA: | y ¬ deben ir precedidos de \ ... \|, \&
Ejemplo:
a= junio_2001
b=`expr $a :'\([a-z]*\)'`
echo b
al poner test ./(algun fichero)
ResponderEliminarcon la opcion -f ( como no es un directorio imprime 1)
opcion -s devuelve 0 si existe
opcion -d devuelve 0 si es un directorio
opción -r devuelve 0 si tiene permiso de lectura
ResponderEliminar