[18750] 2017-04-30_php实现简易命令行

文档创建者:s7ckTeam
浏览次数:4
最后更新:2025-01-18
2017-04-30_php实现简易命令行 p h p c r h u a   h u a s e c   2 0 1 7 - 0 4 - 3 0 0 x 0 0   P H P W e b H T M L P H P W e b A p a c h e M i c r o s o f t   I I S W e b P H P P H P 使 P H P 0 x 0 1     P H P L i n u x C L I P H P # ! / u s r / b i n / p h p   - q   / u s r / l o c a l / b i n /   / u s r / b i n L i n u x P H P # ! / u s r / b i n / p h p   - q < ? p h p       e c h o   " h e l l o   w o r l d " ; ? > W i n d o w s 使 C L I p h p . e x e P H P # ! C : p h p p h p . e x e   - q < ? p h p       e c h o   " h e l l o   w o r l d " ; ? > 0 x 0 2     p h p   - v                                     p h p p h p   - - i n i                             p h p   - - r f     f u n c t i o n   < n a m e >       p h p   p h p   - - r i       < e x t e n s i o n >       p h p   p h p   - i                                         p h p   p h p i n f o ( ) p h p   - m                                     0 x 0 3     P H P C L I S T D O U T   S T D I N       S T D E R R    
0 x 0 4     P H P s h e l l l s     c d     h i s t o r y     c a t         t o u c h       # ! / u s r / b i n / p h p   - q < ? p h p         i f ( ! d e f i n e d ( " S T D I N " ) ) {                 d e f i n e ( " S T D I N " , f o p e n ( " p h p : / / s t d i n " , " r " ) ) ;         }         $ S H E L L _ R U N   =   1 ;         w h i l e     ( $ S H E L L _ R U N )   {                 e c h o   " [ " . e x e c ( ' w h o a m i ' ) . " @ " . g e t c w d ( ) . " ] " ;                 $ c o m m a n d   =   t r i m ( f g e t s ( S T D I N ) ) ;                 i f ( $ c o m m a n d   ! =     ' e x i t ' ) {                         $ f p   =   f o p e n ( ' / r o o t / p h p / s h e l l / c o m m a n d . t x t ' ,   ' a + ' ) ;                         f w r i t e ( $ f p ,   $ c o m m a n d . " n " ) ;                 }                               $ a   =   s u b s t r ( $ c o m m a n d ,   0 , 2 ) ;                 i f ( $ a = =   ' c d ' ) {                         $ c o m m a n d   =   s u b s t r ( $ c o m m a n d ,   3 ) ;                         c d ( $ c o m m a n d ) ;                 }                 i f ( $ c o m m a n d   = =   ' l s ' ) {                         l s ( g e t c w d ( ) ) ;                 }                 i f ( $ c o m m a n d   = =   ' e x i t ' ) {                         $ S H E L L _ R U N   =   0 ;                 }                 i f ( $ c o m m a n d   = =   ' h i s t o r y ' ) {                         $ h i s t o r y   =   f i l e _ g e t _ c o n t e n t s ( ' c o m m a n d . t x t ' ) ;                         e c h o   $ h i s t o r y ;                 }                 $ c a t   =   s u b s t r ( $ c o m m a n d ,   0 , 3 ) ;                 i f ( $ c a t   = =   ' c a t ' ) {                         $ c o m m a n d   =   s u b s t r ( $ c o m m a n d ,   4 ) ;                         $ c a t   =   f i l e _ g e t _ c o n t e n t s ( $ c o m m a n d ) ;                         e c h o   $ c a t ;                 }                 $ t o u c h   =   s u b s t r ( $ c o m m a n d ,   0 , 5 ) ;                 i f ( $ t o u c h   = =   ' t o u c h ' ) {                         $ c o m m a n d   =   s u b s t r ( $ c o m m a n d ,   6 ) ;                         $ c a t   =   f o p e n ( $ c o m m a n d , ' a + ' ) ;                         f c l o s e ( $ c a t ) ;                 }         }         f u n c t i o n   c d   ( $ p a t h ) {
                c h d i r ( $ p a t h ) ;         }         f u n c t i o n   l s ( $ c o m m a n d ) {                 i f ( i s _ d i r ( $ c o m m a n d ) ) {                         i f ( $ d h   =   o p e n d i r ( $ c o m m a n d ) ) {                                 w h i l e ( ( $ f i l e   =   r e a d d i r ( $ d h ) )   ! =   f a l s e ) {                                         e c h o   $ f i l e   . " n " ;                                 }                                 c l o s e d i r ( $ d h ) ;                         }                 }         } ? >

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

本版积分规则