Andrew Donkin wrote: > Matt Kettler <[EMAIL PROTECTED]> writes: > > >>if [ -f /var/spool/mail/spamtrap ]; then >> echo learning spam mailbox - spamtrap >> mv /var/spool/mail/spamtrap . >> /usr/bin/sa-learn --spam --mbox spamtrap >> rm spam/spamtrap.alearn5.gz >> mv spam/spamtrap.alearn4.gz spam/spamtrap.alearn5.gz >> mv spam/spamtrap.alearn3.gz spam/spamtrap.alearn4.gz >> mv spam/spamtrap.alearn2.gz spam/spamtrap.alearn3.gz >> gzip spam/spamtrap.alearn1 >> mv spam/spamtrap.alearn1.gz spam/spamtrap.alearn2.gz >> >> mv spamtrap spam/spamtrap.alearn1 >>fi > > > I'll put my Captain Pedantic hat on and point out that if your MTA is > writing to /var/spool/mail/spamtrap at the time that you learn it, > which is quite possible if /var/spool/training/ is on the same > filesystem as /var/spool/mail/, sa-learn may end up chewing on a > half-finished message.
Actually, they're on separate filesystems. But you're right, I forgot that mv can "move" a file within a filesystem and another process can still write to it with an old file descriptor.