我有一點要求,我需要同時執行兩個觸發器(在同一個包上),但不幸的是,RPM spec文件只執行一個觸發器(以先到者爲準)一次。RPM spec文件不在相同的包中執行兩個觸發器
任何人都可以告訴我如何執行以下兩個觸發器。
%triggerpostun - ODC#SHRTVER_NODOT#
%triggerpostun - odc1010 < = 10.10.01.00
這裏,SHRTVER_NODOT - > 1010
第一一個將適用於所有版本執行(它必須,例如:900,910,1000,1010 ...)
第二個只有當發現特定版本時才能執行(僅限於10.10.01.00)
我試着切換這兩個觸發器insi de規格文件,它工作正常(代碼明智!),但一次只有一個觸發器(以先到者爲準)。
任何人都可以告訴我如何使spec文件執行這兩個觸發器。
感謝您的幫助!
編輯::
謝謝你,但是這篇文章是指不同類型的觸發器和規範文件中執行的方式。我在我的spec文件中還有其他幾個觸發器,但不幸的是他們都沒有做出這種類型的行爲。
%triggerin - ODC < 10.10.01.00
%triggerpostun - ODC
這樣也我有兩個觸發器,但每當需要的版本包中找到這些完美執行。
提示...可能是... http://rpm.org/api/4.4.2.2/triggers.html .. –
似乎有一個與此相關的錯誤。我試圖找到解決方法來提取正在卸載的軟件包的版本;但是因爲這是一個「postun」觸發器;我們無法再提取該版本號。有一種方法可以使用「postun」和「un」觸發器的組合並將該版本存儲到臨時文件中,從而產生非常骯髒的解決方法... –
是的,對於解決方法,我已將兩個腳本組合在同一觸發器中,但不幸的是,新腳本(它應該只執行一個版本)與其他腳本一起執行每個版本。我沒有得到如何解決這個..?所以,我創建了兩個觸發器,但這裏只有一個觸發器正在執行。 –