[26357] 2021-01-26_怎么正经的实现Shell脚本单例运行?

文档创建者:s7ckTeam
浏览次数:3
最后更新:2025-01-19
2021-01-26_怎么正经的实现Shell脚本单例运行? S h e l l L i n u x   2 0 2 1 - 0 1 - 2 6   L i n u x   L i n u x / C / C + + / / 退 p s t e s t . s h 1 s h e l l f o r k t e s h . s h g r e p   . L i n u x C C + + # ! / u s r / b i n / e n v   b a s h # t e s t . s h   # t e s t . s h r u n C o u n t = $ ( p s   - e f | g r e p   t e s t . s h   |   g r e p   - v   g r e p   - c ) i f   [   " $ { r u n C o u n t } "   - g e   1   ] t h e n         e c h o   - e   " t e s t . s h   a l r e a d y   r u n n i n g , n u m : $ { r u n C o u n t } "         e x i t   1 ; f i w h i l e   t r u e d o         e c h o   " t e s t . s h   r u n "         s l e e p   1 d o n e $   . / t e s t . s h t e s t . s h   a l r e a d y   r u n n i n g , n u m : 2
2 C / C + + s h e l l 1 . 2 . 3 . i d 4 . 退 退 # ! / u s r / b i n / e n v   b a s h # L O C K F I L E = / t m p / t e s t . l o c k i f   [   - e   $ { L O C K F I L E }   ]   & &   k i l l   - 0   ` c a t   $ { L O C K F I L E } ` ;   t h e n         e c h o   "   $ 0   a l r e a d y   r u n n i n g "         e x i t f i #   退 t r a p   " r m   - f   $ { L O C K F I L E } ;   e x i t "   I N T   T E R M   E X I T # i d e c h o   $ $   >   $ { L O C K F I L E } #   s l e e p   1 0 0 0 #   r m   - f   $ { L O C K F I L E } $   . / t e s t . s h   . / t e s t . s h   a l r e a d y   r u n n i n g
  退   f l o c k f l o c k 使 f l o c k 9 9 9 9 ? 1 1 0 0 , 1 , 2   f l o c k 退 使 退 k i l l   - 0   ` c a t   $ { L O C K F I L E } ` t r a p   " r m   - f   $ { L O C K F I L E } ;   e x i t "   I N T   T E R M   E X I T r m   - f   { L O C K F I L E } # ! / u s r / b i n / e n v   b a s h # L O C K _ F I L E = / t m p / t e s t . l o c k e x e c   9 9 > " $ L O C K _ F I L E " f l o c k   - n   9 9 i f   [   " $ ? "   ! =   0   ] ;   t h e n         e c h o   " $ 0   a l r e a d y   r u n n i n g "         e x i t   1 f i # s l e e p   1 0 2 4 e x e c   9 9 > " $ L O C K _ F I L E " f l o c k   - n   9 9
f l o c k m a n 退 退     i d 0   1   2   >   [   " $ { F L O C K E R } "   ! =   " $ 0 "   ]   & &   e x e c   e n v   F L O C K E R = " $ 0 "   f l o c k   - e n     " $ 0 "     " $ 0 "     " $ @ "   | |   : # ! / u s r / b i n / e n v   b a s h # [   " $ { F L O C K E R } "   ! =   " $ 0 "   ]   & &   e x e c   e n v   F L O C K E R = " $ 0 "   f l o c k   - e n     " $ 0 "     " $ 0 "     " $ @ "   | |   : # s l e e p   1 0 2 4 $ { F L O C K E R } $ 0 $ @ $ $ $ ?

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则