1 2 3 4 5 6 7 8 9 10 11 12 |
#!/bin/bash re='^[0-9]+$' while : do echo "Introduce un numero:" read numero if [[ $numero =~ $re ]];then break else echo "$numero no es un numero" fi done |
1 2 3 4 5 6 7 8 9 10 11 12 |
#!/bin/bash re='^[0-9]+$' while : do echo "Introduce un numero:" read numero if [[ $numero =~ $re ]];then break else echo "$numero no es un numero" fi done |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 |
#!/bin/bash <<INFO Ejemplo de utilización de arrays en bash ${valores[*]} # Muestra todos los valores de un array ${!valores[*]} # Muestra todos los indices de un array ${#valores[*]} # Devuelve el numero de valores en un array ${#valores[0]} # Devuelve la longitud del indice 0 INFO # definimos un array de valores valores=("primero" "segundo" "tercero") # añadimos un nuevo valor en la posicion 3 del array valores[3]="quarto" # añadimos un nuevo valor en la posicion 5 del array valores[5]="quinto" printf "\nCantidad de valores dentro del array\n" printf " %s\n" ${#valores[*]} printf "\nMostramos un valor dado\n" printf " %s\n" ${valores[2]} printf "\nMostramos la longitud del indice 2\n" printf " %s\n" ${#valores[2]} # recorremos todos los valores del array printf "\nmostramos todos los valores\n" for item in ${valores[*]} do printf " %s\n" $item done # recorremos todos los indices del array printf "\nMostramos todos los indices\n" for index in ${!valores[*]} do printf " %d\n" $index done # mostramos los indices y sus valores printf "\nMostramos todos los indices con sus valores\n" for index in ${!valores[*]} do printf "%4d: %s\n" $index ${valores[$index]} done |
El script se ejecuta como:
mata host
Donde host es el nombre de una máquina. El script buscará los PID de todos los procesos que tengamos en esa máquina y los matará con kill -9. El contenido del script mata será:
1 2 3 4 5 6 7 8 9 10 11 12 13 |
#!/bin/csh #Script que mata todos los procesos que tengamos corriendo en una maquina #La sintaxis es mata seguido del nombre de la maquina if ($#argv != "1") then echo "Introducir como argumento el nombre de la maquina" exit endif set pid=`rsh $1 ps -feao ruser,pid | grep $user` foreach pro ($pid) if ($pro != $user) then rsh $1 kill -9 $pro endif end |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
#!/bin/bash clear while : do echo " Escoja una opcion " echo "1. quien soy?" echo "2. cuanto espacio tengo" echo "3. que es esto?" echo "4. Salir" echo -n "Seleccione una opcion [1 - 4]" read opcion case $opcion in 1) echo "este eres:"; whoami;; 2) echo "tienes esto"; df;; 3) uname -r;; 4) echo "chao"; exit 1;; *) echo "$opc es una opcion invalida. Es tan dificil?"; echo "Presiona una tecla para continuar..."; read foo;; esac done |
1 2 3 4 5 |
# Busca los 30 directorios de mayor tamaño.- du -a ~/ | sort -n -r | head -n 30 # Busca los 30 archivos de mayor tamaño.- find ~/ -type f -exec ls -ls {} \; | awk '{print $0}' | sort -k1 -n -r | head -n 30 |