![](//www.dsy.it/forum/images/space.gif) |
Spr1gg4N |
[QUOTE][i]Originally posted by xSharKMaNx [/i]
... |
09-09-2009 15:47 |
|
![Contract Post Collapse](//www.dsy.it/forum/images/collapse.gif) |
Spr1gg4N |
.illuminato.
Registered: Sep 2007
Posts: 162 (0.03 al dì)
Location:
Corso:
Anno:
Time Online: 1 Day, 18:40:54 [...]
Status: Offline
Edit | Report | IP: Logged |
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
scusa ma mandando in pipe l'output di find sull'utente root non ti da errore di Out of Space?
|
09-09-2009 15:47 |
|
|
| ![](//www.dsy.it/forum/images/space.gif) |
![](//www.dsy.it/forum/images/space.gif) |
xSharKMaNx |
[QUOTE][i]Originally posted by Spr1gg4N [/i]
... |
09-09-2009 15:52 |
|
![Contract Post Collapse](//www.dsy.it/forum/images/collapse.gif) |
xSharKMaNx |
un gioco della follia
![](avatar.php?userid=10082&dateline=1192136312)
Registered: Sep 2007
Posts: 1477 (0.23 al dì)
Location:
Corso: F49
Anno: Laureato
Time Online: 10 Days, 17:15:29 [...]
Status: Offline
Edit | Report | IP: Logged |
Originally posted by Spr1gg4N
scusa ma mandando in pipe l'output di find sull'utente root non ti da errore di Out of Space?
No, non mi ha dato nessun tipo di errore!
Ho utilizzato l'ambiente dato da Martignoni, perchè a te va in 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)
|
09-09-2009 15:52 |
|
|
| ![](//www.dsy.it/forum/images/space.gif) |
![](//www.dsy.it/forum/images/space.gif) |
Spr1gg4N |
[QUOTE][i]Originally posted by xSharKMaNx [/i]
... |
09-09-2009 15:58 |
|
![Contract Post Collapse](//www.dsy.it/forum/images/collapse.gif) |
Spr1gg4N |
.illuminato.
Registered: Sep 2007
Posts: 162 (0.03 al dì)
Location:
Corso:
Anno:
Time Online: 1 Day, 18:40:54 [...]
Status: Offline
Edit | Report | IP: Logged |
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?
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 ^_^
Last edited by Spr1gg4N on 09-09-2009 at 16:07
|
09-09-2009 15:58 |
|
|
| ![](//www.dsy.it/forum/images/space.gif) |
![](//www.dsy.it/forum/images/space.gif) |
mark |
[QUOTE][i]Originally posted by xSharKMaNx [/i]
... |
09-09-2009 18:34 |
|
![Contract Post Collapse](//www.dsy.it/forum/images/collapse.gif) |
mark |
.grande:maestro.
![](avatar.php?userid=2254&dateline=1076491576)
Registered: Oct 2003
Posts: 783 (0.10 al dì)
Location:
Corso: F49
Anno: finito!
Time Online: 8 Days, 18:34:33 [...]
Status: Offline
Edit | Report | IP: Logged |
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
oppure
code:
#! /bin/sh
cpdir -pr /bin /bin2
rm $(find /bin2 -type f)
Prova un pò
il problema è che directory di destinazione deve esistere altrimenti si ha un errore esempio:
cp -r /usr/adm /tmp ------ tutto ok
cp -r /usr/adm /tmp/usr ---- errore
sia in ambiente DOS di windows che in linux eventuali sotto_directory vengonn create automaticamente
__________________
Non ti perdere di coraggio se ti tocca lavorare molto e raccogliere poco.....
|
09-09-2009 18:34 |
|
|
| ![](//www.dsy.it/forum/images/space.gif) |
![](//www.dsy.it/forum/images/space.gif) |
mark |
[QUOTE][i]Originally posted by Spr1gg4N [/i]
... |
09-09-2009 18:39 |
|
![Contract Post Collapse](//www.dsy.it/forum/images/collapse.gif) |
mark |
.grande:maestro.
![](avatar.php?userid=2254&dateline=1076491576)
Registered: Oct 2003
Posts: 783 (0.10 al dì)
Location:
Corso: F49
Anno: finito!
Time Online: 8 Days, 18:34:33 [...]
Status: Offline
Edit | Report | IP: Logged |
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 ^_^
l'ho provato pure io e funziona però anch'io ho preso l'abitudine del file temporaneo per evitare eventuali errori
con file temporaneo, la modifica è semplice
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.....
Last edited by mark on 09-09-2009 at 18:50
|
09-09-2009 18:39 |
|
|
| ![](//www.dsy.it/forum/images/space.gif) |
![](//www.dsy.it/forum/images/space.gif) |
xSharKMaNx |
Trovare tutti gli script del sistema, minori di 1 ... |
09-09-2009 18:57 |
|
![Contract Post Collapse](//www.dsy.it/forum/images/collapse.gif) |
xSharKMaNx |
un gioco della follia
![](avatar.php?userid=10082&dateline=1192136312)
Registered: Sep 2007
Posts: 1477 (0.23 al dì)
Location:
Corso: F49
Anno: Laureato
Time Online: 10 Days, 17:15:29 [...]
Status: Offline
Edit | Report | IP: Logged |
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
In questo modo:
- Creo la cartella
- Copio il tar con tutti i file all'interno nella cartella richiesta
Domanda: Come faccio adesso ad estrarli?
__________________
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)
|
09-09-2009 18:57 |
|
|
| ![](//www.dsy.it/forum/images/space.gif) |
![](//www.dsy.it/forum/images/space.gif) |
mark |
[QUOTE][i]Originally posted by xSharKMaNx [/i]
... |
09-09-2009 19:09 |
|
![Contract Post Collapse](//www.dsy.it/forum/images/collapse.gif) |
mark |
.grande:maestro.
![](avatar.php?userid=2254&dateline=1076491576)
Registered: Oct 2003
Posts: 783 (0.10 al dì)
Location:
Corso: F49
Anno: finito!
Time Online: 8 Days, 18:34:33 [...]
Status: Offline
Edit | Report | IP: Logged |
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
In questo modo:
- Creo la cartella
- Copio il tar con tutti i file all'interno nella cartella richiesta
Domanda: Come faccio adesso ad estrarli?
perchè +2 ?
non è -2 ?
__________________
Non ti perdere di coraggio se ti tocca lavorare molto e raccogliere poco.....
|
09-09-2009 19:09 |
|
|
| ![](//www.dsy.it/forum/images/space.gif) |
![](//www.dsy.it/forum/images/space.gif) |
xSharKMaNx |
[QUOTE][i]Originally posted by mark [/i]
... |
09-09-2009 19:18 |
|
![Contract Post Collapse](//www.dsy.it/forum/images/collapse.gif) |
xSharKMaNx |
un gioco della follia
![](avatar.php?userid=10082&dateline=1192136312)
Registered: Sep 2007
Posts: 1477 (0.23 al dì)
Location:
Corso: F49
Anno: Laureato
Time Online: 10 Days, 17:15:29 [...]
Status: Offline
Edit | Report | IP: Logged |
Originally posted by mark
perchè +2 ?
non è -2 ?
Si! Pensavo maggiori di 1K pardom
Controlla i PM
__________________
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)
|
09-09-2009 19:18 |
|
|
| ![](//www.dsy.it/forum/images/space.gif) |
![](//www.dsy.it/forum/images/space.gif) |
mark |
qui spiega come fare ma a me non funziona
... |
09-09-2009 19:35 |
|
![Contract Post Collapse](//www.dsy.it/forum/images/collapse.gif) |
mark |
.grande:maestro.
![](avatar.php?userid=2254&dateline=1076491576)
Registered: Oct 2003
Posts: 783 (0.10 al dì)
Location:
Corso: F49
Anno: finito!
Time Online: 8 Days, 18:34:33 [...]
Status: Offline
Edit | Report | IP: Logged |
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.....
Last edited by mark on 10-09-2009 at 06:30
|
09-09-2009 19:35 |
|
|
| ![](//www.dsy.it/forum/images/space.gif) |
![](//www.dsy.it/forum/images/space.gif) |
mark |
[QUOTE][i]Originally posted by Simaldeff [/i]
... |
15-09-2009 18:40 |
|
![Contract Post Collapse](//www.dsy.it/forum/images/collapse.gif) |
mark |
.grande:maestro.
![](avatar.php?userid=2254&dateline=1076491576)
Registered: Oct 2003
Posts: 783 (0.10 al dì)
Location:
Corso: F49
Anno: finito!
Time Online: 8 Days, 18:34:33 [...]
Status: Offline
Edit | Report | IP: Logged |
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*
ne approfitto per dire la mia anche se in ritardo di due anni ![:D](images/smilies/icon_mrgreen.gif)
find / -type f -perm +111
trova tutti e solo i file che hanno il bit di esecuzione settato
find / -type f -perm -111
trova tutti i file che hanno il bit di esecuzione settato indifferentemente dagli altri bit rw
in definitiva col segno + vengono ricercati --x--x--x mentre col -qualsiasi configurazione va bene, basta che siano settati i parametri x
__________________
Non ti perdere di coraggio se ti tocca lavorare molto e raccogliere poco.....
Last edited by mark on 15-09-2009 at 18:48
|
15-09-2009 18:40 |
|
|
| ![](//www.dsy.it/forum/images/space.gif) |
![](//www.dsy.it/forum/images/space.gif) |
xSharKMaNx |
•Trovare la dimensione di tutti i file "*.c"
... |
15-09-2009 20:39 |
|
![Contract Post Collapse](//www.dsy.it/forum/images/collapse.gif) |
xSharKMaNx |
un gioco della follia
![](avatar.php?userid=10082&dateline=1192136312)
Registered: Sep 2007
Posts: 1477 (0.23 al dì)
Location:
Corso: F49
Anno: Laureato
Time Online: 10 Days, 17:15:29 [...]
Status: Offline
Edit | Report | IP: Logged |
•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 ]
Questo esercizio può essere svolto in moltissimi modi, io ho provato questa soluzione!
__________________
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)
|
15-09-2009 20:39 |
|
|
| ![](//www.dsy.it/forum/images/space.gif) |
![](//www.dsy.it/forum/images/space.gif) |
mark |
[QUOTE][i]Originally posted by xSharKMaNx [/i]
... |
15-09-2009 21:55 |
|
![Contract Post Collapse](//www.dsy.it/forum/images/collapse.gif) |
mark |
.grande:maestro.
![](avatar.php?userid=2254&dateline=1076491576)
Registered: Oct 2003
Posts: 783 (0.10 al dì)
Location:
Corso: F49
Anno: finito!
Time Online: 8 Days, 18:34:33 [...]
Status: Offline
Edit | Report | IP: Logged |
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 ]
Questo esercizio può essere svolto in moltissimi modi, io ho provato questa soluzione!
molto potente awk, però se devi stampare ad esempio i 5 file .c di dimensioni maggiori diventa problematico
__________________
Non ti perdere di coraggio se ti tocca lavorare molto e raccogliere poco.....
|
15-09-2009 21:55 |
|
|
| ![](//www.dsy.it/forum/images/space.gif) |
![](//www.dsy.it/forum/images/space.gif) |
fain182 |
[QUOTE][i]Originally posted by Spr1gg4N [/i]
... |
15-09-2009 23:11 |
|
![Contract Post Collapse](//www.dsy.it/forum/images/collapse.gif) |
fain182 |
dsy newser
Registered: Apr 2008
Posts: 126 (0.02 al dì)
Location: Milano
Corso: informatica
Anno: 3
Time Online: 2 Days, 1:09:39 [...]
Status: Offline
Edit | Report | IP: Logged |
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 ^_^
il problema dell'out of space generalmente lo da quando metti tanti dati come argomento ad un for, perchè in questo caso (suppongo) deve immagazzinare tutti i dati e poi prenderli uno ad uno..
nelle pipe invece l'errore dell'out of space non viene mai dato, perchè i dati vengono passati alla seconda applicazione poco a poco, quindi la shell non ha bisogno di tenerli tutti insieme in memoria.
sono solo supposizioni, ma dai tentativi che avevo fatto mi pare una ipotesi realistica..
|
15-09-2009 23:11 |
|
|
| ![](//www.dsy.it/forum/images/space.gif) |
![](//www.dsy.it/forum/images/space.gif) |
xSharKMaNx |
[QUOTE][i]Originally posted by mark [/i]
... |
16-09-2009 09:34 |
|
![Contract Post Collapse](//www.dsy.it/forum/images/collapse.gif) |
xSharKMaNx |
un gioco della follia
![](avatar.php?userid=10082&dateline=1192136312)
Registered: Sep 2007
Posts: 1477 (0.23 al dì)
Location:
Corso: F49
Anno: Laureato
Time Online: 10 Days, 17:15:29 [...]
Status: Offline
Edit | Report | IP: Logged |
Originally posted by mark
molto potente awk, però se devi stampare ad esempio i 5 file .c di dimensioni maggiori diventa problematico
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
L'awk utilizzato nell'esercizio precedente ti evita di effettuare un loop per effettuare la sommatoria.
__________________
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)
|
16-09-2009 09:34 |
|
|
| ![](//www.dsy.it/forum/images/space.gif) |
![](//www.dsy.it/forum/images/space.gif) |
mark |
[QUOTE][i]Originally posted by xSharKMaNx [/i]
... |
16-09-2009 10:14 |
|
![Contract Post Collapse](//www.dsy.it/forum/images/collapse.gif) |
mark |
.grande:maestro.
![](avatar.php?userid=2254&dateline=1076491576)
Registered: Oct 2003
Posts: 783 (0.10 al dì)
Location:
Corso: F49
Anno: finito!
Time Online: 8 Days, 18:34:33 [...]
Status: Offline
Edit | Report | IP: Logged |
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
L'awk utilizzato nell'esercizio precedente ti evita di effettuare un loop per effettuare la sommatoria.
uhm...sai che stavo pensando che invece sia possibile anche con awk ?
Trovare il processo con pid dispari che occupa più spazio in memoria
prima versione
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
seconda versione con awk
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.....
Last edited by mark on 16-09-2009 at 10:18
|
16-09-2009 10:14 |
|
|
| ![](//www.dsy.it/forum/images/space.gif) |
![](//www.dsy.it/forum/images/space.gif) |
All times are GMT. The time now is 08:43. |
|
|
![Post New Thread](images/newthread.gif) |
|
![Post A Reply](images/reply.gif) |
|
|
| ![](//www.dsy.it/forum/images/space.gif) |
Forum Rules:
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
|
HTML code is OFF
vB code is ON
Smilies are ON
[IMG] code is ON
|
|
|
|
|
|