Archivi tag: unix

Expect, utile strumento per automatizzare le sessioni remote

Avevo una bozza per un articolo su expect li da  marzo 2011. Oggi volevo completarla ma ho notato che mancava la pagina italiana di wikipedia sull’argomento, ho preferito tradurre la pagina inglese.

Se date un occhio che non abbia tradotto castronnerie mi fate un favore! 🙂

http://it.wikipedia.org/wiki/Expect

Contrassegnato da tag , , , , , ,

Controllare lo stato dei dischi via python

Uno script per controllare lo stato dei dischi, quando viene trovato un disco oltre la soglia di allerta viene inviata una mail all’indirizzo specificato con i dischi troppo pieni.

#!/usr/bin/env python

import commands
import re
import smtplib

'''
CONFIGURARE QUI
'''
macchina="bscs@itxha309"
devices=[
  ["/mnt/path1", 95],
  ["/mnt/path2",98],
]
addrlist=['alessandro.lorenzi@myMail.com']
'''
Fine CONFIGURAZIONE
'''
dimensione = "([0-9])+%"
mail = ""
count = 0

for device in devices:
  devstat= os.statvfs(device[0])
  free =  int(devstat[3])  *100/  int(devstat[2])
  if int(100-free) >= int(device[1]):
    mail = mail + "%s\t%s \t%s\n" %(device[0], device[1], m.group(0))
    count+=1

if (count > 0):
  mail = "Devices quasi pieni:\n" + mail
  server = smtplib.SMTP('localhost')
  for toaddr in addrlist:
    print toaddr
    server.sendmail(macchina, toaddr, mail)
  server.quit()

 

Ovviamente si sposa bene con cron. Basta inserire lo script in crotab per farlo eseguire ogni minuto ed essere sempre informato dello stato dei propri dischi.

Contrassegnato da tag , , , ,

Array in ksh

Gli array in ksh si gestiscono cosí:


# set -A MyArray campo1 campo2 campo3
# echo ${MyArray[0]}
campo1
# for i in ${MyArray[@]}
> do
> echo $i
> done
campo1
campo2
campo3

Contrassegnato da tag , , ,