[24092] 2015-07-14_Node.js命令行程序开发教程

文档创建者:s7ckTeam
浏览次数:2
最后更新:2025-01-18
2015-07-14_Node.js命令行程序开发教程 N o d e . j s   L i n u x   2 0 1 5 - 0 7 - 1 4 N o d e . j s   使   W e b   N p m 使   J a v a S c r i p t     h e l l o     h e l l o   h e l l o     h e l l o     h e l l o     P A T H   p a c k a g e . j s o n   1 .   # ! / u s r / b i n / e n v   n o d e 2 .   c o n s o l e . l o g ( ' h e l l o   w o r l d ' ) ; 1 .   $   c h m o d   7 5 5   h e l l o 1 .   $   . / h e l l o 2 .   h e l l o   w o r l d 1 .   { 2 .       " n a m e " :   " h e l l o " , 3 .       " b i n " :   { 4 .           " h e l l o " :   " h e l l o "
  n p m   l i n k     h e l l o     p r o c e s s . a r g v     c h i l d _ p r o c e s s     U n i x   4 .   4 .           " h e l l o " :   " h e l l o " 5 .       } 6 .   } 1 .   $   n p m   l i n k 1 .   $   h e l l o 2 .   h e l l o   w o r l d 1 .   # ! / u s r / b i n / e n v   n o d e 2 .   c o n s o l e . l o g ( ' h e l l o   ' ,   p r o c e s s . a r g v [ 2 ] ) ; 1 .   $   . / h e l l o   t o m 2 .   h e l l o   t o m 1 .   # ! / u s r / b i n / e n v   n o d e 2 .   v a r   n a m e   =   p r o c e s s . a r g v [ 2 ] ; 3 .   v a r   e x e c   =   r e q u i r e ( ' c h i l d _ p r o c e s s ' ) . e x e c ; 5 .   v a r   c h i l d   =   e x e c ( ' e c h o   h e l l o   '   +   n a m e ,   f u n c t i o n ( e r r ,   s t d o u t ,   s t d e r r )   { 6 .       i f   ( e r r )   t h r o w   e r r ; 7 .       c o n s o l e . l o g ( s t d o u t ) ; 8 .   } ) ; 1 .   $   . / h e l l o   t o m
s h e l l j s   s h e l l j s     c h i l d _ p r o c e s s 便 使 4 .     s h e l l j s     e x e c     s h e l l     s h e l l   2 .   7 .   1 0 .   1 8 .   y a r g s   2 .   h e l l o   t o m 1 .   n p m   i n s t a l l   - - s a v e   s h e l l j s 1 .   # ! / u s r / b i n / e n v   n o d e 2 .   v a r   n a m e   =   p r o c e s s . a r g v [ 2 ] ; 3 .   v a r   s h e l l   =   r e q u i r e ( " s h e l l j s " ) ; 5 .   s h e l l . e x e c ( " e c h o   h e l l o   "   +   n a m e ) ; 1 .   r e q u i r e ( ' s h e l l j s / g l o b a l ' ) ; 3 .   i f   ( ! w h i c h ( ' g i t ' ) )   { 4 .       e c h o ( ' S o r r y ,   t h i s   s c r i p t   r e q u i r e s   g i t ' ) ; 5 .       e x i t ( 1 ) ; 6 .   } 8 .   m k d i r ( ' - p ' ,   ' o u t / R e l e a s e ' ) ; 9 .   c p ( ' - R ' ,   ' s t u f f / * ' ,   ' o u t / R e l e a s e ' ) ; 1 1 .   c d ( ' l i b ' ) ; 1 2 .   l s ( ' * . j s ' ) . f o r E a c h ( f u n c t i o n ( f i l e )   { 1 3 .       s e d ( ' - i ' ,   ' B U I L D _ V E R S I O N ' ,   ' v 0 . 1 . 2 ' ,   f i l e ) ; 1 4 .       s e d ( ' - i ' ,   / . * R E M O V E _ T H I S _ L I N E . * n / ,   ' ' ,   f i l e ) ; 1 5 .       s e d ( ' - i ' ,   / . * R E P L A C E _ L I N E _ W I T H _ M A C R O . * n / ,   c a t ( ' m a c r o . j s ' ) ,   f i l e ) ; 1 6 .   } ) ; 1 7 .   c d ( ' . . ' ) ; 1 9 .   i f   ( e x e c ( ' g i t   c o m m i t   - a m   " A u t o - c o m m i t " ' ) . c o d e   ! = =   0 )   { 2 0 .       e c h o ( ' E r r o r :   G i t   c o m m i t   f a i l e d ' ) ; 2 1 .       e x i t ( 1 ) ; 2 2 .   }
s h e l l j s     s h e l l     y a r g s   y a r g s     a r g v     h e l l o   3 .   使 3 .     a r g v . n a m e     a r g v . n 使 使   a l i a s     n a m e     n   5 .   使 1 .   $   n p m   i n s t a l l   - - s a v e   y a r g s 1 .   # ! / u s r / b i n / e n v   n o d e 2 .   v a r   a r g v   =   r e q u i r e ( ' y a r g s ' ) . a r g v ; 4 .   c o n s o l e . l o g ( ' h e l l o   ' ,   a r g v . n a m e ) ; 1 .   $   h e l l o   - - n a m e = t o m 2 .   h e l l o   t o m 4 .   $   h e l l o   - - n a m e   t o m 5 .   h e l l o   t o m 1 .   $   h e l l o   - n   t o m 2 .   h e l l o   t o m 1 .   # ! / u s r / b i n / e n v   n o d e 2 .   v a r   a r g v   =   r e q u i r e ( ' y a r g s ' ) 3 .       . a l i a s ( ' n ' ,   ' n a m e ' ) 4 .       . a r g v ; 6 .   c o n s o l e . l o g ( ' h e l l o   ' ,   a r g v . n ) ; 1 .   $   h e l l o   - n   t o m 2 .   h e l l o   t o m 3 .   $   h e l l o   - - n a m e   t o m 4 .   h e l l o   t o m
a r g v   线 _ 线 3 .   y a r g s   3 d e m a n d d e f a u l t d e s c r i b e 7 .     n     t o m o p t i o n s   1 .   # ! / u s r / b i n / e n v   n o d e 2 .   v a r   a r g v   =   r e q u i r e ( ' y a r g s ' ) . a r g v ; 4 .   c o n s o l e . l o g ( ' h e l l o   ' ,   a r g v . n ) ; 5 .   c o n s o l e . l o g ( a r g v . _ ) ; 1 .   $   h e l l o   A   - n   t o m   B   C 2 .   h e l l o     t o m 3 .   [   ' A ' ,   ' B ' ,   ' C '   ] 1 .   # ! / u s r / b i n / e n v   n o d e 2 .   v a r   a r g v   =   r e q u i r e ( ' y a r g s ' ) 3 .       . d e m a n d ( [ ' n ' ] ) 4 .       . d e f a u l t ( { n :   ' t o m ' } ) 5 .       . d e s c r i b e ( { n :   ' y o u r   n a m e ' } ) 6 .       . a r g v ; 8 .   c o n s o l e . l o g ( ' h e l l o   ' ,   a r g v . n ) ; 1 .   # ! / u s r / b i n / e n v   n o d e 2 .   v a r   a r g v   =   r e q u i r e ( ' y a r g s ' ) 3 .       . o p t i o n ( ' n ' ,   { 4 .           a l i a s   :   ' n a m e ' , 5 .           d e m a n d :   t r u e , 6 .           d e f a u l t :   ' t o m ' , 7 .           d e s c r i b e :   ' y o u r   n a m e ' , 8 .           t y p e :   ' s t r i n g '
1 1 .     b o o l e a n   5 .     n   b o o l e a n     o p t i o n   7 .   y a r g s   u s a g e e x a m p l e h e l p e p i l o g 9 .       } ) 1 0 .       . a r g v ; 1 2 .   c o n s o l e . l o g ( ' h e l l o   ' ,   a r g v . n ) ; 1 .   # ! / u s r / b i n / e n v   n o d e 2 .   v a r   a r g v   =   r e q u i r e ( ' y a r g s ' ) 3 .       . b o o l e a n ( [ ' n ' ] ) 4 .       . a r g v ; 6 .   c o n s o l e . l o g ( ' h e l l o   ' ,   a r g v . n ) ; 1 .   $   h e l l o 2 .   h e l l o     f a l s e 3 .   $   h e l l o   - n 4 .   h e l l o     t r u e 5 .   $   h e l l o   - n   t o m 6 .   h e l l o     t r u e 1 .   # ! / u s r / b i n / e n v   n o d e 2 .   v a r   a r g v   =   r e q u i r e ( ' y a r g s ' ) 3 .       . o p t i o n ( ' n ' ,   { 4 .           b o o l e a n :   t r u e 5 .       } ) 6 .       . a r g v ; 8 .   c o n s o l e . l o g ( ' h e l l o   ' ,   a r g v . n ) ;
1 6 .   2 .   4 .   8 .   1 1 .   y a r g s     c o m m a n d     G i t   1 .   # ! / u s r / b i n / e n v   n o d e 2 .   v a r   a r g v   =   r e q u i r e ( ' y a r g s ' ) 3 .       . o p t i o n ( ' f ' ,   { 4 .           a l i a s   :   ' n a m e ' , 5 .           d e m a n d :   t r u e , 6 .           d e f a u l t :   ' t o m ' , 7 .           d e s c r i b e :   ' y o u r   n a m e ' , 8 .           t y p e :   ' s t r i n g ' 9 .       } ) 1 0 .       . u s a g e ( ' U s a g e :   h e l l o   [ o p t i o n s ] ' ) 1 1 .       . e x a m p l e ( ' h e l l o   - n   t o m ' ,   ' s a y   h e l l o   t o   T o m ' ) 1 2 .       . h e l p ( ' h ' ) 1 3 .       . a l i a s ( ' h ' ,   ' h e l p ' ) 1 4 .       . e p i l o g ( ' c o p y r i g h t   2 0 1 5 ' ) 1 5 .       . a r g v ; 1 7 .   c o n s o l e . l o g ( ' h e l l o   ' ,   a r g v . n ) ; 1 .   $   h e l l o   - h 3 .   U s a g e :   h e l l o   [ o p t i o n s ] 5 .   O p t i o n s : 6 .       - f ,   - - n a m e     y o u r   n a m e   [ s t r i n g ]   [ r e q u i r e d ]   [ d e f a u l t :   " t o m " ] 7 .       - h ,   - - h e l p     S h o w   h e l p   [ b o o l e a n ] 9 .   E x a m p l e s : 1 0 .       h e l l o   - n   t o m     s a y   h e l l o   t o   T o m 1 2 .   c o p y r i g h t   2 0 1 5 1 .   # ! / u s r / b i n / e n v   n o d e 2 .   v a r   a r g v   =   r e q u i r e ( ' y a r g s ' ) 3 .       . c o m m a n d ( " m o r n i n g " ,   " g o o d   m o r n i n g " ,   f u n c t i o n   ( y a r g s )   { 4 .           c o n s o l e . l o g ( " G o o d   M o r n i n g " ) ; 5 .       } ) 6 .       . c o m m a n d ( " e v e n i n g " ,   " g o o d   e v e n i n g " ,   f u n c t i o n   ( y a r g s )   { 7 .           c o n s o l e . l o g ( " G o o d   E v e n i n g " ) ;
1 0 .     s h e l l o j s   1 1 .     r e s e t     y a r g s   1 4 .   7 .           c o n s o l e . l o g ( " G o o d   E v e n i n g " ) ; 8 .       } ) 9 .       . a r g v ; 1 1 .   c o n s o l e . l o g ( ' h e l l o   ' ,   a r g v . n ) ; 1 .   $   h e l l o   m o r n i n g   - n   t o m 2 .   G o o d   M o r n i n g 3 .   h e l l o   t o m 1 .   # ! / u s r / b i n / e n v   n o d e 2 .   r e q u i r e ( ' s h e l l j s / g l o b a l ' ) ; 3 .   v a r   a r g v   =   r e q u i r e ( ' y a r g s ' ) 4 .       . c o m m a n d ( " m o r n i n g " ,   " g o o d   m o r n i n g " ,   f u n c t i o n   ( y a r g s )   { 5 .           e c h o ( " G o o d   M o r n i n g " ) ; 6 .       } ) 7 .       . c o m m a n d ( " e v e n i n g " ,   " g o o d   e v e n i n g " ,   f u n c t i o n   ( y a r g s )   { 8 .           e c h o ( " G o o d   E v e n i n g " ) ; 9 .       } ) 1 0 .       . a r g v ; 1 2 .   c o n s o l e . l o g ( ' h e l l o   ' ,   a r g v . n ) ; 1 .   # ! / u s r / b i n / e n v   n o d e 2 .   r e q u i r e ( ' s h e l l j s / g l o b a l ' ) ; 3 .   v a r   a r g v   =   r e q u i r e ( ' y a r g s ' ) 4 .       . c o m m a n d ( " m o r n i n g " ,   " g o o d   m o r n i n g " ,   f u n c t i o n   ( y a r g s )   {     5 .           e c h o ( " G o o d   M o r n i n g " ) ; 6 .           v a r   a r g v   =   y a r g s . r e s e t ( ) 7 .               . o p t i o n ( " m " ,   { 8 .                   a l i a s :   " m e s s a g e " , 9 .                   d e s c r i p t i o n :   " p r o v i d e   a n y   s e n t e n c e " 1 0 .               } ) 1 1 .               . h e l p ( " h " ) 1 2 .               . a l i a s ( " h " ,   " h e l p " ) 1 3 .               . a r g v ;
1   U n i x     0   1   2 U n i x   使 d a t a   3 1 5 .           e c h o ( a r g v . m ) ; 1 6 .       } ) 1 7 .       . a r g v ; 1 .   $   h e l l o   m o r n i n g   - m   " A r e   y o u   h u n g r y ? " 2 .   G o o d   M o r n i n g 3 .   A r e   y o u   h u n g r y ? 1 .   i f   ( e r r )   { 2 .       p r o c e s s . e x i t ( 1 ) ; 3 .   }   e l s e   { 4 .       p r o c e s s . e x i t ( 0 ) ; 5 .   } 1 .   $   p s   a u x   |   g r e p   ' n o d e ' 1 .   p r o c e s s . s t d i n . r e s u m e ( ) ; 2 .   p r o c e s s . s t d i n . s e t E n c o d i n g ( ' u t f 8 ' ) ; 3 .   p r o c e s s . s t d i n . o n ( ' d a t a ' ,   f u n c t i o n ( d a t a )   { 4 .       p r o c e s s . s t d o u t . w r i t e ( d a t a ) ; 5 .   } ) ; 1 .   $   e c h o   ' f o o '   |   . / h e l l o 2 .   h e l l o   f o o
p r o c e s s   1 .   p r o c e s s . o n ( ' S I G I N T ' ,   f u n c t i o n   ( )   { 2 .       c o n s o l e . l o g ( ' G o t   a   S I G I N T ' ) ; 3 .       p r o c e s s . e x i t ( 0 ) ; 4 .   } ) ; 1 .   $   k i l l   - s   S I G I N T   [ p r o c e s s _ i d ]
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则