PDA

View Full Version : Script per shell di linux


Slash84
11-02-2011, 11:08
Ciao,

mi ่ stato chiesto di realizzare uno script per la shell di linux.

questa la consegna:
"Scrivere uno script di shell che utilizzando le directory /proc/#pid (dove #pid ่ il PID di un
processo) scriva in ouptut ogni n secondi (con n inserito dall'utente come parametro di chiamata
dello script) per tutti i processi in esecuzione sulla macchina il PID, il valore di VmSize e di
VmPeak. I processi devono essere stampati in ordine crescente secondo il loro PID.
Nota: nell'output non devono essere mostrati gli eventuali messaggi di errore restituiti dai comandi
utilizzati nello script, che possono essere redirezionati in /dev/null.
"

il problema che non l'ho mai fatto e devo consegnare per domani sera.....e ho pochissimo tempo.

Mi dareste una mano

Sto sfogliando adesso un po di tutorial e tra pipeline , ridirezioni degli standard output e input , non ci sto capendo piu nulla.......

Scusate la richiesta un po da noob informatico ma tra lavoro e studio st๒ impazzendo.....



grazie

Darecon
11-02-2011, 19:46
#!/bin/bash

pids=`ls -d /proc/*/ | grep -e "[0-9]"`

for pid in $pids
do

cat "$pid"/status | grep VmSize

done


Lascio a te l'ordinamento dei pid e la redirezione dei messaggi d'errore, non mi va di risolverti tutto l'esercizio, prendilo come suggerimento per ampliarlo e giungere alla conclusione.. :)

Slash84
11-02-2011, 20:12
grazie ;-)

mi dispiace rompere cose le scatole ma in sto periodo son proprio con l'acqua alla gola tra esami e lavoro.

Per quanto riguarda la ridirezione dell'errore credo di aver capito come fare (in effetti ่ abbastanza semplice).
Ora guardo anche come salvare su variabile il parametro che l'utente passa allo script (i secondi x)

grazie ancora........se non ci arrivo perche sono zuccone al max ti riscrivo ;-)