![]() |
Pages (39): « First ... « 26 27 28 29 [30] 31 32 33 34 » ... Last » Show 150 posts per page |
.dsy:it. (http://www.dsy.it/forum/)
- Sistemi operativi I (http://www.dsy.it/forum/forumdisplay.php?forumid=269)
-- Esame di laboratorio (Giugno 2007) - Domande (http://www.dsy.it/forum/showthread.php?threadid=31182)
Originally posted by xSharKMaNx
•Elencare i tre utenti che hanno il maggior numero di file nel sistema
code:
USERS=$(cut -d : -f 1 < /etc/passwd | uniq); for us in $USERS; do NFILE=$(find / -type f -user $us | wc -l); echo $NFILE:$us done | sort -nr | head -3
Originally posted by Spr1gg4N
scusa ma mandando in pipe l'output di find sull'utente root non ti da errore di Out of Space?
__________________
Perché, mentre il manganello può sostituire il dialogo, le parole non perderanno mai il loro potere; perché esse sono il mezzo per giungere al significato, e per coloro che vorranno ascoltare, all'affermazione della verità. E la verità è che c'è qualcosa di terribilmente marcio in questo paese. (V)
I popoli non dovrebbero aver paura dei propri governi, sono i governi che dovrebbero aver paura dei popoli. (T.J)
Originally posted by xSharKMaNx
No, non mi ha dato nessun tipo di errore!
Ho utilizzato l'ambiente dato da Martignoni, perchè a te va in Out of Space?
Originally posted by xSharKMaNx
Dai post precedenti ho trovato queste due possibilità:
code:
#/bin/sh cpdir -p /directoryA /directoryB for file in $(find /directoryB -type f); do rm $file done
code:
#! /bin/sh cpdir -pr /bin /bin2 rm $(find /bin2 -type f)
__________________
Non ti perdere di coraggio se ti tocca lavorare molto e raccogliere poco.....
Originally posted by Spr1gg4N
eh si infatti se vedi nel post dove ho raccolto alcuni script ho sempre utilizzato un file temporaneo proprio per questo fatto: perchè puntualmente mi va in out of space (in effetti tutti i file dell'utente root partendo da / sono molti...strano che non ti dia errore...bha)
EDIT:
-------------
Ora provando a riscriverlo non mi da errore....bho non so che cavolo avevo fatto allora ^_^
code:
cut -d : -f 1 < /etc/passwd | uniq > tmp while read us; do NFILE=$(find / -type f -user $us | wc -l); echo $NFILE:$us done < tmp | sort -nr | head -3
__________________
Non ti perdere di coraggio se ti tocca lavorare molto e raccogliere poco.....
Trovare tutti gli script del sistema, minori di 1 k, copiarli su /tmp/script/ Aggiungerli tutti i file su un file.tar !
Sto scimmiando con questo esercizio
Ho pensato una cosa
code:
#!/bin/sh mkdir -p /tmp/script; /find -type f -size +2 | xargs grep -l "#!/bin/sh" | xargs tar cvf /tmp/script/archivio.tar
__________________
Perché, mentre il manganello può sostituire il dialogo, le parole non perderanno mai il loro potere; perché esse sono il mezzo per giungere al significato, e per coloro che vorranno ascoltare, all'affermazione della verità. E la verità è che c'è qualcosa di terribilmente marcio in questo paese. (V)
I popoli non dovrebbero aver paura dei propri governi, sono i governi che dovrebbero aver paura dei popoli. (T.J)
Originally posted by xSharKMaNx
Trovare tutti gli script del sistema, minori di 1 k, copiarli su /tmp/script/ Aggiungerli tutti i file su un file.tar !
Sto scimmiando con questo esercizio
Ho pensato una cosa
code:
#!/bin/sh mkdir -p /tmp/script; /find -type f -size +2 | xargs grep -l "#!/bin/sh" | xargs tar cvf /tmp/script/archivio.tar
__________________
Non ti perdere di coraggio se ti tocca lavorare molto e raccogliere poco.....
Originally posted by mark
perchè +2 ?
non è -2 ?
__________________
Perché, mentre il manganello può sostituire il dialogo, le parole non perderanno mai il loro potere; perché esse sono il mezzo per giungere al significato, e per coloro che vorranno ascoltare, all'affermazione della verità. E la verità è che c'è qualcosa di terribilmente marcio in questo paese. (V)
I popoli non dovrebbero aver paura dei propri governi, sono i governi che dovrebbero aver paura dei popoli. (T.J)
qui spiega come fare ma a me non funziona
http://unix.ittoolbox.com/groups/te...another-1677099
__________________
Non ti perdere di coraggio se ti tocca lavorare molto e raccogliere poco.....
Originally posted by Simaldeff
confermo una cosa :
prima di tutto ho fatto il test in una cartella in cui ho creato 3 file di cui uno in chmod 755
chmod 755 try.sh
gli altri in 644 (default se si creano con elvis)
con un
find /mnt/[lamiacartella] -type f -perm -1
mi ha trovato il file eseguibile. Poi con la seguente situazione :
chmod 777 try.sh
chmod 676 try2.sh
e usando lo stesso find mi ha trovato sollo quello in 777
conclusione -perm -1 guarda solo il primo numero.
confermo che i +1 +111 /1 /111 sono inutile ... non danno erore ma non danno nessun risultato di ricerca
la domanda e' dunque : Basta che sia eseguibile dall' user o deve essere eseguibile da tutti?
se basta il user allora basta la linea di comando ... seno bisogna fare un script shell che faccia tutti i casi di permesso ... *sigh*
__________________
Non ti perdere di coraggio se ti tocca lavorare molto e raccogliere poco.....
•Trovare la dimensione di tutti i file "*.c"
code:
find / -type f -name "*.c" | xargs ls -s | awk '{SUM += $1} END {print SUM}'
code:
find / -type f -name "*.c" [ ricerco tutti i file con estensione ".c"] xargs ls -s [visualizzo nella prima colonna la dimensione in kb ] awk '{SUM += $1} END {print SUM}' [ somma la prima colonna e stampa il risultato ]
__________________
Perché, mentre il manganello può sostituire il dialogo, le parole non perderanno mai il loro potere; perché esse sono il mezzo per giungere al significato, e per coloro che vorranno ascoltare, all'affermazione della verità. E la verità è che c'è qualcosa di terribilmente marcio in questo paese. (V)
I popoli non dovrebbero aver paura dei propri governi, sono i governi che dovrebbero aver paura dei popoli. (T.J)
Originally posted by xSharKMaNx
•Trovare la dimensione di tutti i file "*.c"
code:
find / -type f -name "*.c" | xargs ls -s | awk '{SUM += $1} END {print SUM}'
code:
find / -type f -name "*.c" [ ricerco tutti i file con estensione ".c"] xargs ls -s [visualizzo nella prima colonna la dimensione in kb ] awk '{SUM += $1} END {print SUM}' [ somma la prima colonna e stampa il risultato ]
__________________
Non ti perdere di coraggio se ti tocca lavorare molto e raccogliere poco.....
Originally posted by Spr1gg4N
eh si infatti se vedi nel post dove ho raccolto alcuni script ho sempre utilizzato un file temporaneo proprio per questo fatto: perchè puntualmente mi va in out of space (in effetti tutti i file dell'utente root partendo da / sono molti...strano che non ti dia errore...bha)
EDIT:
-------------
Ora provando a riscriverlo non mi da errore....bho non so che cavolo avevo fatto allora ^_^
Originally posted by mark
molto potente awk, però se devi stampare ad esempio i 5 file .c di dimensioni maggiori diventa problematico
code:
find / -type -name "*.c" | xargs du | sort -nr | head -5
__________________
Perché, mentre il manganello può sostituire il dialogo, le parole non perderanno mai il loro potere; perché esse sono il mezzo per giungere al significato, e per coloro che vorranno ascoltare, all'affermazione della verità. E la verità è che c'è qualcosa di terribilmente marcio in questo paese. (V)
I popoli non dovrebbero aver paura dei propri governi, sono i governi che dovrebbero aver paura dei popoli. (T.J)
Originally posted by xSharKMaNx
E' un pò diverso, se devi selezionare i 5 file ".c" di dimensioni maggiori fai semplicemente:
code:
find / -type -name "*.c" | xargs du | sort -nr | head -5
code:
ps -axl | tr -s " " : | for i in $(cut -d : -f 5-9); do pid$=(echo $i | cut -d -f 1); sz$=(echo $i | cut -d -f 4); if [ $pid % 2 -eq 1 -a $sz > 0 ]; then echo $pid $sz; fi; done; | sort +1 -n | tail -1
code:
ps -axl | awk '{if($4 % 2 && $7 > 0) print $4, $7}' | sort +1 -n
__________________
Non ti perdere di coraggio se ti tocca lavorare molto e raccogliere poco.....
All times are GMT. The time now is 13:43. | Pages (39): « First ... « 26 27 28 29 [30] 31 32 33 34 » ... Last » Show all 571 posts from this thread on one page |
Powered by: vBulletin Version 2.3.1
Copyright © Jelsoft Enterprises Limited 2000 - 2002.