ho da fare un lavoro importante

Mirco Massone m.massone@datasiel.net
Gio 23 Mar 2006 08:57:56 CET


Alessandro I. ha scritto:
> On 3/22/06, Mirco Massone <m.massone@datasiel.net> wrote:
> 
>>Vi prego di contattarmi in privato, dovrei fare un lavoro importante e
>>non so bene come organizzarlo....
> 
> in privato?? e perche' mai?
> ricorda che un altro utente potrebbe avere (adesso o in futuro) un
> problema simile al tuo...
> spulciando nell'archivio della lista potrebbe trovare la soluzione che
> abbiamo trovato insieme. giusto?
> il 90% delle cose che so l'ho trovato grazie agli archivi delle liste... ;-)
> 
> 
>>Chi sa qualcosa di scripting da shell é pregato di contattarmi in
>>privato tramite mail.
> 
> visto che non dai altre info, posso mandarti alla guida [1]..
> leggendola un pochetto si riescono a fare cose davvero carine..
> 
> facci sapere, siamo sempre disponibili!!
> 
> Ale
> 
> ----------------
> Note:
> [1]: http://www.pluto.it/files/ildp/guide/abs/index.html
> _______________________________________________
> glug mailing list
> glug@genova.linux.it
> http://lists.linux.it/listinfo/glug
> 
Il motivo per cui chiedo un contatto privato é semplice, dovrei postare 
un msg troppo lungo, con spiegazioni dettagliate di ciò che dovrei 
realizzare, e non lo credevo opportuno. Tutto qui.
Ho bisogno di schedulare l'invio di aggiornamenti via ftp su hosts 
distribuiti sul territorio, e dovrei predisporre una procedura 
automatizzata che faccia questo partendo da un elenco di hosts in 
formato testo.

Lo scopo é leggere ciascun elenco, costituito da tre colonne tipo:

nome_pc		indirizzo_ip		commento


si dovrebbe poi selezionare i primi due valori di ogni riga
e metterli in un altro file, che esegua un ftp sulla base dei valori che 
legge, e che mandi files pescati da una path precisa su una path precisa 
all'host remoto.

Complicazioni:

Tutti gli host sono Microsoft, ma sono già stati da me predisposti con 
ftp  server attivo e funzionante.

La macchina che manderà gli aggiornamenti é la mia, ed é una Ubuntu 
5.10, gli hosts da aggiornare sono circa 250 distribuiti su tutto il 
territorio ASL3.

Esiste la possibilità di passare ad uno script adeguato un file con 
estensione ftp fatto come segue:

open 172.21.x.y
user administrator
prompt off
bin
lcd /home/ghigo/script/
cd /c/
mput ciao.txt
close
bye

E farlo eseguire ad un altro script fatto più o meno così:

export FTP_PATH="$APPL_PATH"
export LOG_PATH="./log"
echo ${APPL_PATH} > ${LOG_PATH}/"$1".log
echo $1 >> ${LOG_PATH}/"$1".log
echo $2 >> ${LOG_PATH}/"$1".log
echo $3 >> ${LOG_PATH}/"$1".log
echo "data e ora inizio operazione >>" ${LOG_PATH}/"$1".log
date >> ${LOG_PATH}/"$1".log
/usr/bin/ftp -n < ${FTP_PATH}/"$1".ftp >> ${LOG_PATH}/"$1".log
echo "data e ora fine operazione" >> ${LOG_PATH}/"$1".log
/bin/date >> ${LOG_PATH}/"$1".log

nella terz'ultima riga si vede l'esecuzione del file ftp...

e questo script, a sua volta, é richiamato dallo script iniziale, fatto 
più o meno così:

APPL_PATH="$1"
n_row=`cat ${APPL_PATH}/"$2".txt|wc -l`
j=1
  echo "j $j"
while [ $j -le $n_row ]; do
  echo "n_row $n_row"
  row=`awk  -v iline=$j '{if (NR==iline){ print $0}}' ${APPL_PATH}/"$2".txt`
  echo "$row"
  n_param=`echo $row| wc -w`
  if [ $n_param=3 ]
  then
  echo $row
  ./lancioftp.script $row
  fi
  j=$(($j+1))
done

Che é lo script più complicato, in cui si dice che deve essere letto il 
file di testo, che deve essere processato, e che le variabili in esso 
contenute devono essere passate al precedente script...

Ma tutto questo non sta funzionando...

Qualcuno ha un idea su come riorganizzare la cosa?

-- 
Mirco Massone
Datasiel S.p.A.
c/o ASL3 “Genovese”
Via G. Maggio, 6
16147 – Genova
Struttura:
Sistemi e Servizi Tecnici
Servizi all'utenza / Assistenza tecnica PDL.
GPG id pub.key:1024D/9F48EC4B 2006-02-06 [expires: 2007-02-06]
Fingerprint: D9EC 1C9E 21E3 58B6 3143  D40C 3417 2367 9F48 EC4B


Maggiori informazioni sulla lista glug