linux user group brescia

immagine del castello

Archivio della mailing list

[LugBS] domanda stupida su bash

Rampage * atomikramp a gmail.com
Gio 2 Dic 2010 08:35:32 UTC
2010/12/2 Rampage * <atomikramp a gmail.com>

>
>
>
> 2010/12/1 Andrea Gelmini <andrea.gelmini a lugbs.linux.it>
>
>> Il 01 dicembre 2010 20:52, Rampage * <atomikramp a gmail.com> ha scritto:
>>
>> > du -sh /directory/acaso/* | mail -s "ciccio" indirizzo a email.tld
>> >
>> > non va, mi dice che il parametro * non è valido... ma che caxx....
>>
>> Riporta l'errore intero, diversamente bisogna andare ad intuito.
>> Due cose:
>> a) chiaramente se vuoi il totale della directory acaso, non ti serve
>> l'asterisco finale (anzi, eviti che il globbing della shell possa
>> darti noie);
>> b) se invece vuoi davvero le singole entry nella dir acaso tieni
>> presente quando segue:
>>
>> gelma a vaio:/tmp/test$ touch -- -f
>> gelma a vaio:/tmp/test$ ls -la
>> totale 0
>> drwxr-xr-x  2 gelma gelma   60 2010-12-01 21:00 ./
>> drwxrwxrwt 25 root  root  1200 2010-12-01 21:00 ../
>> -rw-r--r--  1 gelma gelma    0 2010-12-01 21:00 -f
>> gelma a vaio:/tmp/test$ du -sh *
>> du: opzione non valida -- "f"
>> Usare `du --help' per ulteriori informazioni.
>> gelma a vaio:/tmp/test$ du -sh -- *
>> 0       -f
>>
>> c) sempre tenendo valida la prima ipotesi, sarebbe meglio scrivere il
>> lo script così (in modo tale da avere la garanzia che l'affare
>> funzioni a prescindere dal contenuto/quantita' della directory):
>> find /tmp/test -maxdepth 1 -type d -exec du -sh {} \; | mail ecc
>>
>> Ciao,
>> gelma
>>
>> --
>>
>
> Ciao Gelma,
> grazie delle dritte.
>
> il mio caso è questo, e anche qui mi dirai che sono nab e che non si fa
> così, e io annuirò perchè effettivamente non credo sia quella corretta
>
> #!/bin/sh
>
> BASEDIR=/var/utenti
> DOMINI=$(ls $BASEDIR)
>
> for A in $DOMINI;
> do
> echo "===== $(basename $A) =====";
> cd $BASEDIR/$A
> for B in $(ls);
> do
> du -sh $B;
> done
> done
>
> questo scriptino sciocco (formattato benissimo per altro grazie alla
> webmail)
>
> mi tira fuori la dimensione di tutte le directory in /var/utenti/xx/yy
> quindi se per ogni directory xx ci sono un numero arbitrario e variabile di
> directory yy lui mi da le dimensioni di tutte le yy suddivise per xx.
>
> il problema è che se io faccio
> # ./scriptinosciocco.sh | mail -s "prova" ciccio a prova.mail
>
> non va, la mail arriva noin ritornano errori, ma il body è vuoto.
>
> suggestions?
> in STDOUT l'output viene proposto correttamente.
>
> Grazie
> Francesco
>

Come non detto scusate, tutto a posto, sbagliavo io.

Francesco
-------------- parte successiva --------------
Un allegato HTML è stato rimosso...
URL: <http://lugbs.linux.it/pipermail/lug/attachments/20101202/852af8bc/attachment.html>


Maggiori informazioni sulla lista Lug