<html><head><meta http-equiv="Content-Type" content="text/html charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">I Think I figured it out? I would love feedback…<div class=""><br class=""></div><div class="">Script: /usr/bin/find /var/mail/vhosts/ -type d | grep -P "\/var\/mail\/vhosts\/[a-z0-9\-\_]+\.[a-z]+\/[a-z\.]+$" | xargs -i  /usr/bin/sa-learn --spam --progress "{}"/.Spam.New/* </div><div class=""><br class=""></div><div class="">It runs 18 times.</div><div class=""><br class=""></div><div class="">When I run: /usr/bin/find /var/mail/vhosts/ -type d | grep -P "\/var\/mail\/vhosts\/[a-z0-9\-\_]+\.[a-z]+\/[a-z\.]+$" | xargs -i /bin/echo "{}"/.Spam.New/</div><div class=""><br class=""></div><div class="">I get 18 results (which is expected).</div><div class=""><br class=""></div><div class="">So I think I have it figured out now.</div><div class=""><br class=""></div><div class=""><br class=""></div><div class=""><br class=""><div><blockquote type="cite" class=""><div class="">On Oct 22, 2015, at 10:13 AM, Ryan Coleman <<a href="mailto:ryan.coleman@cwis.biz" class="">ryan.coleman@cwis.biz</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><meta http-equiv="Content-Type" content="text/html charset=utf-8" class=""><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">Moving forward… <div class=""><br class=""></div><div class=""><br class=""></div><div class="">I have this command so far: </div><div class=""><blockquote type="cite" class="">/usr/bin/find /var/mail/vhosts/ -type d | grep -P "\/var\/mail\/vhosts\/[a-z0-9\-\_]+\.[a-z]+\/[a-z\.]+$" | xargs -0 /usr/bin/sa-learn --no-sync --spam —progress</blockquote><br class=""></div><div class="">But I need to put the folder name at the end of the xargs command along WITH a subfolder (like “/.Spam.New/*”)</div><div class=""><br class=""></div><div class="">Any thoughts on how I would do that?</div><div class=""><br class=""></div><div class=""><br class=""><div class=""><blockquote type="cite" class=""><div class="">On Oct 22, 2015, at 9:29 AM, Ryan Coleman <<a href="mailto:ryan.coleman@cwis.biz" class="">ryan.coleman@cwis.biz</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><meta http-equiv="Content-Type" content="text/html charset=utf-8" class=""><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">Cuz I’m smart like that…<div class=""><br class=""></div><div class="">find /var/mail/vhosts/ -type d | grep -P "\/var\/mail\/vhosts\/[a-z0-9\-\_]+\.[a-z]+\/[a-z\.]+$”</div><div class=""><br class=""></div><div class="">Finds just what I need… what a rPITA.</div><div class=""><br class=""></div><div class="">—</div><div class="">Ryan</div><div class=""><br class=""></div><div class=""><br class=""></div><div class=""><div class=""><blockquote type="cite" class=""><div class="">On Oct 22, 2015, at 9:09 AM, Ryan Coleman <<a href="mailto:ryan.coleman@cwis.biz" class="">ryan.coleman@cwis.biz</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><meta http-equiv="Content-Type" content="text/html charset=utf-8" class=""><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">I have my spam-learning script which runs against all the folders that meet a criteria… however the parent directories share the same style…<div class=""><br class=""></div><div class="">So what I have is…</div><div class=""><br class=""></div><div class="">/var/mail/vhosts/domain.ltd/first.lastname/.folders{…}</div><div class=""><br class=""></div><div class="">The scan I have search for .Spam.New and .Spam.Suspected and runs those…</div><div class=""><br class=""></div><div class="">but I would like to scan through the entire structure and grab each first.lastname folder (it would be the *2nd* level of my scan as I have a half-dozen domains and will add more soon)…</div><div class=""><br class=""></div><div class="">That point behind it is I can scan specific folders as SPAM and any other folders (other than Inbox, Sent and Trash) as HAM.</div><div class=""><br class=""></div><div class="">So here’s my folder for this specific email address (<a href="http://cwis.biz/" class="">cwis.biz</a>):</div><div class=""><font face="Courier New" class="">drwxrws---  5 vmail spamd   4096 Oct 22 09:07 .Drafts<br class="">-rwxrwx---  1 vmail spamd      0 Jan 21  2015 maildirfolder<br class="">drwxrws---  5 vmail spamd   4096 Mar 19  2015 .Mailing Lists<br class="">drwxrws---  5 vmail spamd   4096 Oct 22 05:49 .Mailing Lists.MySQL<br class="">drwxrws---  5 vmail spamd   4096 Oct 15 16:44 .Mailing Lists.Nextdoor<br class="">drwxrws---  5 vmail spamd   4096 Oct 17 09:38 .Mailing Lists.PFSense<br class="">drwxrws---  5 vmail spamd   4096 Oct 22 07:38 .Mailing Lists.spamassassin<br class="">drwxrws---  5 vmail spamd   4096 Oct 21 14:25 .Mailing Lists.TCLUG<br class="">drwxrws---  5 vmail spamd   4096 Oct 21 12:59 .Mailing Lists.TCPHP<br class="">drwxrws---  2 vmail spamd  16384 Oct 22 09:06 new<br class="">drwxrws---  5 vmail spamd   4096 Jan 21  2015 .Notes<br class="">drwxrws---  5 vmail spamd   4096 Oct 21 22:34 .Sent Messages<br class="">drwxrws---  3 vmail spamd   4096 Oct 15 17:02 sieve<br class="">drwxrws---  5 vmail spamd   4096 Oct 22 07:19 .Spam.New<br class="">drwxrws---  5 vmail spamd   4096 Oct 22 07:25 .Spam.Scanned<br class="">drwxrws---  5 vmail spamd   4096 Oct 22 09:06 .Spam.Suspected<br class="">drwxrws---  5 vmail spamd   4096 Oct 22 09:06 .Spam.Tagged<br class="">-rwxrwx---  1 vmail spamd    282 Oct 15 16:43 subscriptions<br class="">drwxrws---  2 vmail spamd   4096 Oct 22 09:06 tmp<br class="">drwxrws---  5 vmail spamd   4096 Oct 22 01:25 .Trash</font><br class=""><br class=""></div><div class="">Basically I want to get any folder that starts with “." inside of <i class="">/var/mail/vhosts/<a href="http://cwis.biz/ryan.coleman/" class="">cwis.biz/ryan.coleman/</a></i></div><div class=""><i class=""><br class=""></i></div><div class="">And then run the following commands:</div><div class=""><br class=""></div><div class=""><font face="Courier New" class="">/usr/bin/find /var/mail/vhosts/ -name '*.Spam.New*' -type d -exec /usr/bin/sa-learn  --spam --progress {}* \;<br class="">/usr/bin/find /var/mail/vhosts/ -name '*.Spam.Suspected*' -type d -exec /usr/bin/sa-learn --spam --progress {}* \;<br class="">/bin/mv /var/mail/vhosts/<a href="http://cwis.biz/ryan.coleman/.Spam.New/cur/*" class="">cwis.biz/ryan.coleman/.Spam.New/cur/*</a> /var/mail/vhosts/<a href="http://cwis.biz/ryan.coleman/.Spam.Scanned/cur/" class="">cwis.biz/ryan.coleman/.Spam.Scanned/cur/</a><br class="">/bin/mv /var/mail/vhosts/<a href="http://cwis.biz/ryan.coleman/.Spam.New/new/*" class="">cwis.biz/ryan.coleman/.Spam.New/new/*</a> /var/mail/vhosts/<a href="http://cwis.biz/ryan.coleman/.Spam.Scanned/cur/" class="">cwis.biz/ryan.coleman/.Spam.Scanned/cur/</a></font></div><div class=""><div class=""><i class=""><br class=""></i></div><div class="">My regex-foo is not very good. I know there’s a way to do that with find(1) but I wouldn’t be able to wrap my head around it anyway.</div></div><div class=""><br class=""></div><div class="">TIA!</div><div class=""><br class=""></div><div class="">—</div><div class="">Ryan</div></div>_______________________________________________<br class="">TCLUG Mailing List - Minneapolis/St. Paul, Minnesota<br class=""><a href="mailto:tclug-list@mn-linux.org" class="">tclug-list@mn-linux.org</a><br class=""><a href="http://mailman.mn-linux.org/mailman/listinfo/tclug-list" class="">http://mailman.mn-linux.org/mailman/listinfo/tclug-list</a><br class=""></div></blockquote></div><br class=""></div></div>_______________________________________________<br class="">TCLUG Mailing List - Minneapolis/St. Paul, Minnesota<br class=""><a href="mailto:tclug-list@mn-linux.org" class="">tclug-list@mn-linux.org</a><br class=""><a href="http://mailman.mn-linux.org/mailman/listinfo/tclug-list" class="">http://mailman.mn-linux.org/mailman/listinfo/tclug-list</a><br class=""></div></blockquote></div><br class=""></div></div>_______________________________________________<br class="">TCLUG Mailing List - Minneapolis/St. Paul, Minnesota<br class=""><a href="mailto:tclug-list@mn-linux.org" class="">tclug-list@mn-linux.org</a><br class="">http://mailman.mn-linux.org/mailman/listinfo/tclug-list<br class=""></div></blockquote></div><br class=""></div></body></html>