If you use a
system to make temporary files (21.3
)
,
your .logout
file can clean up the temporary files.
The exact cleanup command you'll use depends on how you create the files,
of course.
The overall setup looks something like this in .logout
:
~
|
(set nonomatch; cd ~/temp && rm -f *) &
|
The parentheses run the commands in a
subshell (13.7
)
so the cd
command
won't change the current shell's working directory.
The C shell needs a
set
nonomatch
(15.4
)
command so the shell will be quiet if there
aren't any temp
files to clean up;
omit that command in Bourne-type shells.
The
&&
(44.9
)
means that rm
won't run unless the cd
succeeds.
Using cd ~/temp
first, instead of just rm ~/temp/*
,
helps to
keep rm
's command-line arguments from
getting too long (15.6
)
if there are lots of temporary files to remove.
If you could be logged in more than once, be careful not to remove temp
files that other login sessions might still be using.
One way to do this is with the
find
(17.2
)
command - only remove files that
haven't been modified in the last day:
xargs
|
find ~/temp -type f -mtime +1 | xargs rm -f &
|