On Thu, Nov 17, 2005 at 11:20:33AM +0100, Maurizio Lemmo - Tannoiser wrote:
> * giovedì 17 novembre 2005, alle 11:15, Maurizio Lemmo - Tannoiser scrive:
> > +rm /tmp/pappa.$$
> Ignora questo, non serve, fatto confusione io nel debug.
Colgo l'occasione per ricordare di non usare MAI /tmp/pappa.$$ come file
temporaneo in uno shellscript, pena la morte[1].
Il modo giusto è usare TMPFILE=`mktemp`.
Secondo la stessa linea, il modo giusto per ricreare un file
atomicamente non è:
FILE=cippolippo
crea_file > $FILE.tmp
mv $FILE.tmp $FILE
ma è:
FILE=cippolippo
NEWFILE=`mktemp $FILE.XXXXXX`
crea_file > $NEWFILE
chmod $NEWFILE 0644
mv $NEWFILE $FILE
Ciao,
Enrico
[1] for i in `seq 1 65535`; do ln -s /etc/passwd /tmp/pappa.$i; done
--
GPG key: 1024D/797EBFAB 2000-12-05 Enrico Zini <enrico@xxxxxxxxxx>
signature.asc
Description: Digital signature
|