5. º¯¼ö

´Ù¸¥ ÇÁ·Î±×·¡¹Ö ¾ð¾î¸¦ »ç¿ëÇÒ ¶§¿Í ¸¶Âù°¡Áö·Î, ¼Ð ÇÁ·Î±×·¡¹ÖÀ» ÇÒ ¶§µµ º¯¼ö¸¦ »ç¿ëÇÒ ¼ö ÀÖ´Ù. °Ô´Ù°¡ bash¿¡¼­´Â µ¥ÀÌÅÍ Å¸ÀÔÀ» ¹Ì¸® Á¤ÇÒ ÇÊ¿ä ¾øÀÌ, ¼ýÀÚ³ª ¹®ÀÚ, ȤÀº ¹®ÀÚ¿­À» ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù.

¾î¶² º¯¼ö°¡ óÀ½ »ç¿ëµÇ´Â ¼ø°£ ÂüÁ¶°¡ »ý¼ºµÇ¹Ç·Î, º¯¼ö¸¦ µû·Î ¼±¾ðÇÒ ÇÊ¿ä´Â ¾ø´Ù.

5.1. ¿¹Á¦ : º¯¼ö¸¦ »ç¿ëÇÑ Hello World! Ãâ·Â

 
#!/bin/bash 
STR="Hello World!" 
echo $STR 

2¹øÂ° ÁÙ¿¡¼­ STRÀ̶ó´Â À̸§ÀÇ º¯¼ö°¡ »ý¼ºµÇ¸ç "Hello World!"¸¦ ¹Þ¾Ò´Ù. ÀÌ º¯¼ö¿¡ µé¾îÀÖ´Â °ªÀ» »ç¿ëÇϱâ À§Çؼ­´Â '$'¸¦ º¯¼ö À̸§ ¾Õ¿¡ »ç¿ëÇÏ¿© À̰ÍÀÌ º¯¼ö¶ó´Â »ç½ÇÀ» ¾Ë·Á ÁÖ¾î¾ß ÇÑ´Ù. º¯¼ö À̸§ ¾Õ¿¡ '$'¸¦ »©³õ¾ÒÀ» °æ¿ì¿¡´Â ¿¹»óÇß´ø °Í°ú´Â ´Ù¸¥ °á°ú°¡ ³ª¿Ã °ÍÀÌ´Ù. ¿¹ÄÁ´ë, ÀÌ·± °æ¿ì ¼ÐÀº ÀÌ º¯¼ö ÀÚü¸¦ ¹®ÀÚ¿­·Î ÀνÄÇØ ¹ö¸®°Å³ª Çϱ⠶§¹®¿¡ ÁÖÀÇÇØ¾ß ÇÑ´Ù.

5.2. ¿¹Á¦ : ¿©ÀüÈ÷ °£´ÜÇÑ ¹é¾÷ ½ºÅ©¸³Æ®

 
#!/bin/bash 
OF=/var/my-backup-$(date +%Y%m%d).tgz 
tar -cZf $OF /home/me/ 

ÀÌ ½ºÅ©¸³Æ®´Â ¾Õ¼­ »ìÆìº» °Í°ú´Â ÁúÀûÀ¸·Î ´Ù¸¥ ¹°°ÇÀÌ´Ù. ÀÏ´Ü À̰ÍÀº »ý¼º ³¯Â¥°¡ ÆÄÀÏ À̸§ÀÌ µÇ±â ¶§¹®¿¡ ÆÄÀϸíÀÌ Áߺ¹µÇÁö ¾Ê¾Æ, ¹é¾÷Çϱ⠿ëÀÌÇÏ´Ù. µÎ ¹øÂ° ÁÙÀÇ '$(date +%Y%m%d)'°¡ ¹Ù·Î ±× ºÎºÐÀÌ´Ù. ¸ÅÀÏ ÆÄÀÏ À̸§ÀÌ ´Þ¶óÁø´Ù´Â °ÍÀ» ¾Ë ¼ö ÀÖ´Ù. date´Â ¿øÇÏ´Â ´ë·Î ¿É¼ÇÀ» Á¶ÀýÇÏ¿© ´Ù¸¥ Æ÷¸ËÀ¸·Î Ãâ·ÂÇÒ ¼öµµ ÀÖÀ¸´Ï È®ÀÎÇØ º¸ÀÚ. ¶ÇÇÑ ÀÌ ½ºÅ©¸³Æ®¸¦ ½ÇÇàÇÏ¸é ¸í·É ½ÇÇà °úÁ¤ÀÌ È­¸é¿¡ ±×´ë·Î Ãâ·ÂµÈ´Ù´Â Á¡µµ Âü°íÇØ µÎÀÚ.

Âü°íÇÒ ¸¸ÇÑ °ÍÀ» Á» º¸ÀÚ. ´ÙÀ½ ³»¿ëÀ» °¢°¢ Á÷Á¢ ½ÇÇàÇØ º¸ÀÚ.

 
echo ls 
echo $(ls) 

¹«¾ùÀÌ ´Ù¸¥Áö È®ÀÎÇϰí, ¿Ö ´Ù¸¥Áöµµ ¾Ë¾Æº¸ÀÚ.

5.3. Áö¿ª º¯¼ö

Áö¿ª º¯¼ö´Â localÀ̶ó´Â Ű¿öµå¸¦ »ç¿ëÇÏ¿© »ý¼ºµÈ´Ù.

 
#!/bin/bash 
HELLO=Hello 
function hello { 
local HELLO=World 
echo $HELLO 
} 
echo $HELLO 
hello 
echo $HELLO 

ÀÌ ¿¹Á¦´Â Áö¿ª º¯¼ö¸¦ »ç¿ëÇÏ´Â ¹æ¹ý¿¡ ´ëÇÑ °ÍÀÌ´Ù. ÀÌ¹Ì ÇÁ·Î±×·¡¹Ö ¾ð¾î¸¦ Á¶±ÝÀÌ¶óµµ ´Ù·ç¾î º¸¾Ò´Ù¸é ÀÌ·± ¹æ½ÄÀÇ Äڵ带 º» ÀûÀÌ ÀÖÀ» °ÍÀÌ´Ù. ¿©±â¿¡¼­´Â ÇÔ¼ö¸¦ È£ÃâÇÏ´Â ¹æ¹ý¿¡µµ ÁÖÀÇÇÏÀÚ.