Gene Heskett wrote:
> On Saturday 03 February 2007 09:49, Matt Kettler wrote:
>   
>> Gene Heskett wrote:
>>     
>>> On Friday 02 February 2007 22:28, Matt Kettler wrote:
>>>       
>>>> Gene Heskett wrote:
>>>>         
>>>>> Greetings;
>>>>>
>>>>> SA 3.1.7, driven by procmail, feeding it all on to kmail for
>>>>> sorting.
>>>>>
>>>>> I have ceased running sa-learn --ham on false positives for the last
>>>>> couple of months because it nulls the message since I installed FC6.
>>>>> Is there a way to preserve the message in the case of teaching it
>>>>> ham, that it made a mistake?
>>>>>           
>>>> Erm, can you be really specific on how you're calling sa-learn --ham?
>>>>
>>>> It's not supposed to modify the message file in any way.. if it is,
>>>> somethings wrong..
>>>>
>>>> Now, if you've got something trying to pipe a message through
>>>> sa-learn --ham, that will fail and generate an empty "message".
>>>> sa-learn isn't a pipe it does not echo the message back out to
>>>> stdout.
>>>>
>>>> However, running things like this should be safe for "somefile":
>>>>
>>>> sa-learn --ham /path/somefile
>>>>
>>>>
>>>> However this is not, and will destroy somefile:
>>>>
>>>> echo somefile | sa-learn --ham > somefile
>>>>         
>>> Actually, the correct syntax appears to be:
>>> sa-learn --ham (or --spam) -L -f /pathto/Mail/spam)|ham/cur.
>>>       
>> 1) -L is, at the moment, pointless. It does nothing. You can leave it
>> in, but in future versions this could reduce learning accuracy. Should
>> they ever add DNS or other network-dependent tokens to bayes, the -L
>> switch would suppress learning them. (This would be the only way -L
>> could matter). In general, I would say it's inadvisable to pass -L to
>> sa-learn, unless you always scan mail in -L mode. (no point in learning
>> network-test tokens when you're never going to scan for them..)
>>     
>
> Ok, thats not a problem to drop.
>
>   
>> 2) you DO NOT want to do -f, unless you've got a file containing a LIST
>> of files to be learned. If you want to learn a MESSAGE, drop the -f.
>>     
>
> The target is a directory containing messages I've drag & dropped there 
> with kmail because of an SA miss-fire.
>   
Then do NOT use -f.

Like I said, -f expects a FILE containing a LIST OF FILES. It does not
expect a directory. It does not expect an email.

If you feed sa-learn a directory name, without the -f, it will
automatically read all the files in the directory as individual emails.

ie, this command works:

sa-learn /home/training/spam/

Assuming /home/training/spam/ is a directory containing emails.

sa-learn -f /home/training/spam/

Will probably try to treat it as a directory full of files each
containing lists of files. That's not what you have. You have a
directory of emails.

Reply via email to