鴿舍篩中的「停止」指令有什麼作用?

鴿舍篩中的「停止」指令有什麼作用?

規則檔案中有一個名為 的命令stop,它會停止處理。我不確定為什麼需要這樣做。如果它是規則內指令清單中的最後一個命令,那麼該規則是否已經完成處理?或者這是否意味著不要跳到清單中的下一條規則?換句話說,假設我的篩選文件有一個規則清單:

Rule A
Rule B
Rule C
Rule D

如果規則 Bstop末端有指令,規則 C 和 D 會被跳過嗎?我假設規則按照它們在篩子文件中出現的順序執行?

答案1

是的,如果規則 Bstop末尾包含該命令,則規則 C 和 D 將被跳過。

「停止」動作結束所有處理。如果隱式保持尚未取消,則採用它。
RFC 5228 第 3.3 節“控制停止”


這在偵測垃圾郵件和使用假期訊息或某些fileinto規則時非常有用。您可以跳過所有以下規則的discard垃圾郵件,stop這表示您不會透過假期規則回覆它們,而且它們不會透過 fileinto 規則放入另一個郵箱中。

如果你正在使用if並且elsif可以避免這個問題。

相關內容