PDA

View Full Version : help devo fare un programma!


Gremo
17-01-2005, 17:54
aiutatemi :( devo fare un programma per l'uni e non so proprio da dove iniziare...il testo è questo:

Utilizzando come base dell'implementazione il comando di shell mv, per spostare file e direttori da un direttorio all'altro, si realizzi un comando di ripulitura purge del contenuto del direttorio (passato come secondo parametro) nel cestino .wastebasket, posizionato nella home directory in base alla data dell'ultima modifica così come apppare dall'esecuzione del comando ls -l di long listing.

La sintassi generale del comndo da implementare deve seguire lo schema riportato di seguito
purge [-opt1 [-opt2 ...]] date dir

dove le opzioni opt1, opt2, ... sono le stesse del comando mv, mentre date rappresenta la data in base alla quale tutti i file e directory la cui data di ultima modifica è inferiore ad essa, devono essere spostati nel cestino.

Si impieghi il parametro $* per rappresentare la lista dei parametri passati al comando in questione. Inoltre, se lo si ritiene opportuno, si utilizzi ls -l --time-style=+'FORMAT' come comando di listing, dove FORMAT è lo stesso di quello specificato dal comando date.

NA01
17-01-2005, 18:29
ma in bash?

cia

Gremo
17-01-2005, 21:18
Originariamente inviato da NA01
ma in bash?

cia

si in bash!

NA01
18-01-2005, 08:06
è abbastanza semplice, solo mi manca il signiificato di


.wastebasket, posizionato nella home directory in base alla data dell'ultima modifica così come apppare dall'esecuzione del comando ls -l di long listing.



ciao

Black imp
18-01-2005, 11:20
mi sembra che ti stia dicendo che dalla directory .wastebasket devono essere progressivamente rimossi i file più vecchi, vecchi in base alla data e all'ora che vengono fuori con il comando ls -l applicato alla directory .wastebasket

NA01
18-01-2005, 11:46
questo già non lo so fare :(

Black imp
18-01-2005, 12:00
credo tu possa usare find per trovare i più vecchi - non so con che criterio, tipo 'quelli più vecchi di una settimana' oppure addirittura con una formula che trova i 10 più vecchi - usando l'opzione che controlla tempo e data dell'ultima modifica come appare da ls -l. poi con mv li sposti a /dev/null credo