io userei un sistema più semplice

========================
#!/bin/bash

y=qualchecosa

find . -type f -ctime $y -exec cp {} /altra/posizione/ \;

exit
========================




Il 01/03/13, brea...@rotellaweb.it<brea...@rotellaweb.it> ha scritto:
> Il 2013-03-01 21:16 Giovanni "Ivan" Alberotanza ha scritto:
>> MaX ha scritto:
>>> devi essere più chiaro quando scrivi gli script... impara a
>>> incolonnare i comandi
>>> in modo da creare una gerarchia.
>>> Inoltre ti consiglio:
>>> di usare sempre lo stesso stile di scrittrura, in quanto migliora il
>>> debug.
>>> di fare stampare a video le variabili prima di processarle o dopo...
>>> tipo...
>>> echo A=$A
>>> echo B=$B
>>> C=$(($A + $B))
>>> echo C=$C
>>>
>>> #!/bin/bash
>>>
>>> y=1
>>>
>>> while [ $y -le 15 ], do
>> qui sopra dopo la quadra chiusa ci va il punto e virgola non la
>> virgola
>>>
>>>         find ./ -type f -ctime $y > lista.txt
>>>
>>>         for i in `cat lista.txt`; do
>>>                 cp $i $y/
>>>                 y=$(( $y + 1 ))
>>>         done
>>> done
>>>
>>>
>>> Il 01/03/13, bodr...@mail.dm.unipi.it<bodr...@mail.dm.unipi.it> ha
>>> scritto:
>>>> Ciao,
>>>>
>>>> Il Ven, 1 Marzo 2013 8:11 pm, brea...@rotellaweb.it ha scritto:
>>>>> data una variabile y, genero un ciclo che incremento fino a 15,
>>>>> quindi
>>>>> vorrei cercare in una directory i file la cui data di creazione è
>>>>> uguale
>>>>> ad y e mettere l'elenco in un file.
>>>> ??? sinceramente non ho capito nulla di quel che vuoi fare :-)
>>>>
>>>>> Non funziona, nel senso che cp mi copia i file con -ctime 1 uno
>>>>> per
>>>>> directory (1-15).
>>>>> #!/bin/bash
>>>>>          y=1
>>>>>          while [ $y -le 15 ]
>>>>>          do
>>>>>          find ./ -type f -ctime $y > lista.txt
>>>>>          for i in `cat lista.txt`; do cp $i $y/
>>>>>                  y=$(( $y + 1 ))
>>>>>          done
>>>> C'è un ciclo for, che tra "do" e "done" contiene la copia di un
>>>> file e
>>>> l'incremento di y. Quindi fa giustamente quel che dici sopra.
>>>>
>>>> Questo ciclo è annidato dentro un while cui manca il "done", direi
>>>> che
>>>> questo è un problema.
>>>>
>>>> Cià,
>>>> m
>>>>
>>>> --
>>>> http://bodrato.it/papers/
>>>>
>>>>
>>>> --
>>>> Per REVOCARE l'iscrizione alla lista, inviare un email a
>>>> debian-italian-requ...@lists.debian.org con oggetto "unsubscribe".
>>>> Per
>>>> problemi inviare un email in INGLESE a listmas...@lists.debian.org
>>>>
>>>> To UNSUBSCRIBE, email to debian-italian-requ...@lists.debian.org
>>>> with a subject of "unsubscribe". Trouble? Contact
>>>> listmas...@lists.debian.org
>>>> Archive:
>>>>
>>>> http://lists.debian.org/36713.151.32.166.170.1362166035.squir...@mail.dm.unipi.it
>>>>
>>>>
>>>
> Questo è il codice scritto in maniera corretta e che non fa cosa
> vorrei, cioè copia sempre i file con -ctime 1 in tutte le cartelle:
>
> #!/bin/bash
>
> y=1
>
> while [ $y -le 15 ];
> do
>        find ./ -type f -ctime $y > lista
>          for i in `cat lista`;
>   do
>           cp $i $y/
> done
>        y=$(( $y + 1 ))
> done
>
>
>
> --
> Per REVOCARE l'iscrizione alla lista, inviare un email a
> debian-italian-requ...@lists.debian.org con oggetto "unsubscribe". Per
> problemi inviare un email in INGLESE a listmas...@lists.debian.org
>
> To UNSUBSCRIBE, email to debian-italian-requ...@lists.debian.org
> with a subject of "unsubscribe". Trouble? Contact
> listmas...@lists.debian.org
> Archive:
> http://lists.debian.org/8f1f5684c75c31827cc532f79e930...@rotellaweb.it
>
>


-- 
ciao,
MaX


--
Per REVOCARE l'iscrizione alla lista, inviare un email a
debian-italian-requ...@lists.debian.org con oggetto "unsubscribe". Per
problemi inviare un email in INGLESE a listmas...@lists.debian.org

To UNSUBSCRIBE, email to debian-italian-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Archive: 
http://lists.debian.org/CAEyAVmuF+Yt-Q_S9Bxfi5tKWdPDrUDknm3PtT�vzf3u-k...@mail.gmail.com

Rispondere a