Çø®½º³¢¸®ÆÄÀ̽ãÀ»À§ÇÑ ½© ½ºÅ©¸³Æà ¶óÀ̺귯¸® | |
Áö±Ý ´Ù¿î·Îµå |
Çø®½º³¢¸® ¼øÀ§ ¹× ¿ä¾à
±¤°í
Çø®½º³¢¸® ű×
Çø®½º³¢¸® ¼³¸í
½© ½ºÅ©¸³Æà ¶óÀ̺귯¸® ÆÄÀ̽ã pyscriptingÀº ÆÄÀ̽ãÀ» ½±°Ô »ç¿ëÇÏ¿© ½© ½ºÅ©¸³ÆÃÀ» Á¦°øÇÏ´Â ´Ù¾çÇÑ À¯Æ¿¸®Æ¼¸¦ Á¦°øÇÕ´Ï´Ù. Scripting.py °¡Á® ¿À±â ½ÃÀÛÇÕ´Ï´Ù. PIP ¼³Ä¡ Pyscripting Python ½© ½ºÅ©¸³Æ® ¸¸µé±â MyScript.py : #! / usr / bin / env python scripting sh sh sh. ls ( '-l') ½ºÅ©¸³Æ®¸¦ »ç¿ëÇϽʽÿÀ. chmod + x myscript.py ./myscript.pycalling ¿ÜºÎ ¸í·É ½ºÅ×À̼ÇÀº ¿ÜºÎ ¸í·ÉÀ» È£ÃâÇÏ´Â ¼¼ °¡Áö ¹æ¹ýÀÔ´Ï´Ù. °¡´ÉÇÑ °æ¿ì, ¿ÜºÎ ¸í·ÉÀÇ ÆÄÀ̽㠱³Ã¼°¡ »ç¿ëµË´Ï´Ù. ´ëü´Â Á÷Á¢ ÅëÈ¿¡¼¸¸ »ç¿ëµÇÁö ¾Ê½À´Ï´Ù. ¸ðµç ´ëü µÈ ¸í·ÉÀº ´ëü µÈ ¸í·ÉÀ» ÂüÁ¶ÇϽʽÿÀ. Direct CallingReturns Á¾·á code.sh ( 'ls', '-l') °£Á¢Àû ÀÎ CallingReturns Á¾·á code.sh.ls ( '- l') ÅëÈ ¹× Return OutputReturns ½ºÆ®¸³ µÈ stdout (stderr´Â Æ÷ÇÔµÇÁö ¾ÊÀ½).ÀÌ ¸Þ¼Òµå¸¦ »ç¿ëÇÏ¸é ¸í·ÉÀÇ Ãâ·ÂÀº stdoutÀ¸·Î ÀμâµÇÁö ¾Ê½À´Ï´Ù. Ãâ·ÂÀ» ¹ÝȯÇϱâ Àü¿¡ ¼±Çà µÈ Èò»ö °ø¹éÀÌ Á¦°ÅµË´Ï´Ù. Å« Ãâ·ÂÀ» À§ÇØÀÌ ¸Þ½º¸¦ »ç¿ëÇÏÁö ¸¶½Ê½Ã¿À .Output = sh.get ( 'ls', '-l') Àμâ ( 'Ãâ·Â : % s'% Ãâ·Â) Àμö Çڵ鸵 youu argv ¼Ó¼ºÀ» »ç¿ëÇÏ¿© ½ºÅ©¸³Æ®¿¡ Àü´Þ µÈ Àμö¿¡ ¾×¼¼½º ÇÒ ¼ö ÀÖ½À´Ï´Ù. sh.argv - ½ºÅ©¸³Æ® À̸§ script.argv - ¿À¹ö Çìµå¸¦ ÇÇÇÏ°í °£´ÜÇÑ ÀÌÀ¯·Î ÀϺΠ¿ÜºÎ ¸í·ÉÀº ÆÄÀ̽ãÀÇ ³»ºÎ ±â´ÉÀ¸·Î ´ëüµÇ¾úÀ¸¸ç, ÀÌ´Â ÈξÀ ´õ ºü¸£°Ô ÀÛµ¿ÇÕ´Ï´Ù. ¿ÜºÎ Command.BaseNameÀ» ¿ÜºÎ BaseName°ú µ¿ÀÏÇÏ°Ô È£ÃâÇÕ´Ï´Ù. ¿ÜºÎ find ¸í·É°ú À¯»çÇÑ ¿ÜºÎ exit¿Í µ¿ÀÏÇÑ string.exitÀ» ¹ÝȯÇÕ´Ï´Ù. ¹ß°ß µÈ ¸ðµç ÆÄÀÏÀÇ ¹Ýº¹ÀÚ¸¦ ¹ÝȯÇÕ´Ï´Ù. ¿¹Á¦ »ç¿ë¹ý : sh.find (type = 'f', exclude = ¿¡¼ fÀÇ °æ¿ì ¿ÜºÎ mkdir.mkdirs¿Í µ¿ÀÏÇÑ print (f) ¿ÜºÎ Å×½ºÆ®¿Í µ¿ÀÏÇÑ ¿ÜºÎ Å×½ºÆ®¿Í µ¿ÀÏÇÑ mkdir.mkdir ...¿¡ ¹Ýȯ °ª ºÎ¿ï. ¿¹Á¦ »ç¿ë¹ý : sh.test ( '- d', '/ tmp') : print ( '/ tmp is directory.') makefile functionExample (myscript.py) : #! / usr / bin / env pythonfrom ½ºÅ©¸³Æà ¼öÀÔ Sh, makeFileMake = makefile (sh) @make ( '/ tmp / myfile.txt') def myRule (target) : sh.touch (´ë»ó) @make () def main (´ë»ó) : myRule () make.run (¸ÞÀÎ) ¸¶Áö¸· line make.run (¸ÞÀÎ) sys.argv¸¦ È®ÀÎÇÏ°í ƯÁ¤ ±ÔÄ¢ÀÌ ÁöÁ¤µÇÁö ¾ÊÀº °æ¿ì ÁöÁ¤µÈ ±ÔÄ¢À» ½ÇÇàÇϰųª ±âº»°ªÀ» ½ÇÇàÇÕ´Ï´Ù. myRuleÀº ´ë»ó ÆÄÀÏ /tmp/myfile.txt°¡ Á¸ÀçÇÏÁö ¾Ê´Â °æ¿ì¿¡¸¸ ½ÇÇàµË´Ï´Ù .:./myscript.pynow call ƯÁ¤ ±ÔÄ¢ : ./ myscript.py myrule ¿ä±¸ »çÇ× : ¡¤ ÆÄÀ̽ã
Çø®½º³¢¸® °ü·Ã ¼ÒÇÁÆ®¿þ¾î