1.- Realizar copia de programa a múltiples servidores :
1 |
for i in server1 server2; do scp checktrans.sh serv@$i:/u2/plug; done |
2.- Grabar archivo “copia” al final del archivo “proceso.cfg” en múltiples servidores :
1 |
for i in server1 server2; do cat /u02/copia | ssh serv@$i 'cat >> /u02/proceso.cfg'; done |
3.- Reinicia proceso “nagioscl” en múltiples servidores :
1 |
for i in server1 server2; do ssh serv@$i '/u02/bin/nagioscl restart'; done |
4.- Dividir un archivo grande en archivos de 200 líneas :
1 |
split -l 200 -d -a 2 servidores.txt servidores- |
• -l 200: divide cada archivo en 200 líneas.
• -d: usa números en lugar de letras para los sufijos.
• -a 2: usa 2 dígitos en el sufijo (01, 02, …).
• servidores-: prefijo del archivo.
Si quiere que tengan, extensión .txt :
1 |
for f in servidores-??; do mv "$f" "$f.txt"; done |
5.- Tomo la última línea del archivo “reporte.txt y elimino los ESPACIOS que pudiese tener delante y atrás del texto capturado :
1 |
cat reporte.txt | tail -n 1 | sed 's/^[[:space:]]*//;s/[[:space:]]*$//' |
6.- Con estas lineas proceso todos los argumentos que se le pasan a un script. Para este caso se pasan 4 valores separados por el signo punto y coma (;). Una vez asignado a las variables correspondientes, puedo trabajar con ellos :
1 2 3 4 |
for param in "$@"; do IFS='-' read -r fs valor1 valor2 valor3 valor4 <<< "$param" # Aquí trabajo con los valores asignados a las variables. Done |