R: R: R: [Pluto-help] Processo da Uccidere !!!!

Luciano Lucini luciano a smapfil.it
Mer 8 Gen 2003 10:38:07 CET


Grazie per il chiarimento sempre molto gentile ... e disponibile

PS: senon ho capito male l'fs definisce cio che separa i campi pertanto
se avessi

1235-12558-7788 l'fs potrebe essere "-" , l'unica cosa che mi lascia
perplesso è la parentesi finale ???(e un errore di scrittura ???)

======================

Luciano Lucini wrote:

> 
> Ho cmq salvato il tuo comando perche mi puo essere utile un'altra 
> volta anche se non ho capito bene come funzia..

molto molto semplice... e' uno script che puoi eseguire (lo scrivi in un
file, imposti il file come eseguibile e lo mandi in esecuzione.

 
> #!/bin/bash

questa riga serve a specificare quale shell deve utilizzare lo script
(semmai l'utente ne avesse impostata una diversa dalla bash)


> PIDPROCESSO=ps -ax | grep go-out | awk 'fs=" " {print $2}')

qui definisci una variabile "PIDPROCESSO" (ma la potresti chiamare come
vuoi) alla quale assegni il valore del pid del processo che ti interessa
uccidere. In particolare, come vedi c'e' ps -ax | grep go-out, che
tirera' fuori come input qualcosa del tipo

root 	1000	etc.etc.etc.etc

se ci fai caso, questoi output e' ulteriormente ridirezionato con un
pipe verso l'awk, che ha impostato come fs (Field Separator) lo spazio,
e riceve il comando di stampare il secondo valore che trova nella riga
(che e' proprio il PID del processo). In pratica l'awk ha la capacita'
di "leggere" in qualche modo l'output di un comando, andando a fare dei
distinguo in base al field separator ed alla posizione in cui li riceve.
Cio' ti consente ad esempio di estrarre il PID del processo... se avessi
messi print $1, awk stamperebbe il nome dell'utente, con print $3
avrebbe stampato quello che c'e' dopo la colonna del pid... spero di
essermi spiegato. a questo punto, ottenuto il PID e caricato in una
variabile, basta fare

kill -9 $PIDPROCESSO

(quando si richiama il valore memorizzato in una variabile, nella shell,
bisogna utilizzare il simbolo $ davanti al nome della variabile).
Ovviamente questo era uno script banalissimo, ad esempio non controlla
se il processo esiste o meno, se ce n'e' in esecuzione piu' di uno, se
appartiene o meno ad un determinato utente, etc. etc. etc. 
Per maggiori info ti rimando al "Bash Programming how-to", lo trovi
tradotto in italiano sul sito del pluto (www.pluto.linux.it)

Ciao
Mandricus
_______________________________________________
pluto-help mailing list
pluto-help a lists.pluto.linux.it
http://lists.pluto.linux.it/mailman/listinfo/pluto-help




More information about the pluto-help mailing list