ShellÀº ¿î¿µÃ¼Á¦¿Í »ç¿ëÀÚ°£ÀÇ Áß°è ¿ªÇÒÀ» ´ã´çÇÑ´Ù. ShellÀÇ »ç¿ëÀÚ¿Í ¿î¿µÃ¼Á¦ »çÀÌ´Â ´ëÈ½Ä »ç¿ë¹æ¹ý°ú Shell Program½Ä »ç¿ë ¹æ¹ýÀÌ ÀÖ´Ù.
¡¡¿©±â¼´Â C ShellÀÇ ´ëÈ½Ä »ç¿ëÀ» À§ÇÑ »ç¿ëÀÚÀÇ (1) ȯ°æ¼³Á¤ ÆÄÀϵé°ú (2) ´ëÈ½Ä »ç¿ë ¹æ¹ýµé¿¡ ´ëÇØ ¼³¸íÇÑ´Ù.
°¢ Shell ¸¶´Ù »ç¿ëÀÚÀÇ È¯°æ ¼³Á¤À» À§ÇÑ È¯°æ ÆÄÀÏÀÌ ÀÖ´Ù. ShellµéÀº »ç¿ëÀÚ°¡ °¢ ShellÀÌ »ç¿ëÇϴ ȯ°æÆÄÀÏÀ» ¼öÁ¤ÇÏ¿© ÀÚ½ÅÀÌ ¿øÇÏ´Â ÀÛ¾÷ ȯ°æÀ» ¸¸µé ¼ö ÀÖµµ·Ï Áö¿øÇÑ´Ù.
Csh¿¡¼´Â »ç¿ëÀÚÀÇ È¯°æ¼³Á¤À» À§ÇØ ´ÙÀ½ÀÇ 3 °³ÀÇ ÆÄÀÏÀ» »ç¿ëÇϸç, kshÀÇ °æ¿ì´Â .profileÀ» »ç¿ëÇÑ´Ù. (ȯ°æ ÆÄÀÏ¿¡ ´ëÇÑ ¼³¸íÀº UNIX IÀ» ÂüÁ¶Çϱ⠹ٶõ´Ù.)
2.1.1 .cshrc (c-shell run commands)
C-shellÀ» »ç¿ëÇÒ ¶§ Ç×»ó »ç¿ëµÇ´Â ¸í·É, º¯¼ö, alias µîÀ» ±â·ÏÇÑ´Ù. CshÀº ÇϳªÀÇ shellÀÌ ¿¸± ¶§(window open) ¸¶´Ù ~/.cshrc¸¦ ÀÐ¾î »ç¿ëÀÚÀÇ È¯°æÀ» ¼³Á¤ÇÑ´Ù. »ç¿ëÀÚ°¡ À©µµ¿ì ȯ°æ (X-Window)¿¡¼ ÀÛ¾÷À» ÇÏ¸é °¢ À©µµ¿ì°¡ ¿¸± ¶§ ¸¶´Ù Shell ȯ°æÀÌ ¼³Á¤µÈ´Ù. ÀÌ¹Ì OpenµÈ À©µµ¿ì shell¿¡ º¯°æµÈ .cshrcÀÇ È¯°æÀ» »ç¿ëÇÏ·Á¸é source ~/.cshrc¸¦ ½ÇÇàÇÏ¸é µÈ´Ù.
2.1.2 .login
óÀ½ system¿¡ loginÇÒ ¶§ login shell¿¡¼ ÇÑ ¹ø¸¸ Àд´Ù. Å͹̳Π¼³Á¤°ú ȯ°æ º¯¼ö ¼³Á¤ µîÀ» ±â·ÏÇÑ´Ù. login ÇÒ ¶§¸¶´Ù ±âº»ÀûÀÎ ÀÏÀ» ½ÇÇàÇÏ´Â °ÍÀ» ±â·ÏÇÑ´Ù.
2.1.3 .logout
»ç¿ëÀÚ°¡ logoutÀ» ÇÒ ¶§ ½ÇÇàµÉ ¸í·ÉÀ» ±â·ÏÇÑ´Ù.
´ëÈ½Ä »ç¿ë ¹æ¹ý¿¡¼´Â ¿©·¯ °¡Áö ¸í·ÉÀÔ·Â ¹æ¹ý°ú ¸í·ÉÀÔ·ÂÀ» ´ÜÃàÇÏ´Â ¹æ¹ý, ½ÇÇàÇÒ(ÇÑ) ¸í·ÉÀÇ ½ÇÇà¸ðµå¸¦ º¯°æÇÏ´Â Job Control, ±×¸®°í C ShellÀ» º¸´Ù Æí¸®ÇÏ°Ô »ç¿ëÅä·Ï ÇØÁÖ´Â History¿Í Alias ±â´É¿¡ ´ëÇØ ¼³¸íÇÑ´Ù.
2.2.1 ¸í·É ÀÔ·Â (Issuing commands)
(1) Single command
¿ì¸®°¡ °¡Àå ÈçÈ÷ »ç¿ëÇÏ´Â ¹æ¹ýÀÌ´Ù. ½Ã½ºÅÛÀÇ ¸í·É¾î ÀÔ·Â ¶óÀο¡ ½ÇÇàÇϰíÀÚ ÇÏ´Â ¸í·É¾î¸¦ ÀÔ·ÂÇÑ´Ù. À̶§ ÀÌ ¸í·É¾î´Â ȯ°æ ÆÄÀÏ(CshÀÇ °æ¿ì ~/.cshrc)ÀÇ °æ·Î¸í¿¡ Æ÷ÇÔµÈ ¸í·É¾îÀ̰ųª ÆÐ½º(PATH)¸¦ Æ÷ÇÔÇÑ ¸í·É¾îÀÌ´Ù.
¸í·É Çü½Ä :
% command [argument] <ENTER>
(2) Multiple command
ÇÑ ¸í·É¾î ¶óÀο¡ ¿©·¯ °³ÀÇ ¸í·É¾î¸¦ µ¿½Ã¿¡ ÀÔ·ÂÇÏ´Â °ÍÀ¸·Î ¸í·É¾î¿Í ¸í·É¾î »çÀÌ´Â ¼¼¹ÌÄÝ·Ð(;)À¸·Î ±¸ºÐÇÑ´Ù.
¸í·É Çü½Ä :
% command1; command2; ... ; commandn <ENTER>
(3) Command group
ÇÑ ¸í·É¾î ¶óÀο¡ ¿©·¯ °³ÀÇ ¸í·É¾î¸¦ µ¿½Ã¿¡ ÀÔ·ÂÇÏ´Â °ÍÀº Mutiple command¿Í °°À¸³ª ¸í·É¾îÀÇ ±ºÀ» °ýÈ£·Î ½Î¼ ½ÇÇàÇÑ´Ù. Command groupÀ¸·Î ½ÇÇàÀ» Çϸé ÇöÀçÀÇ »ç¿ëÀÚ Interface ShellÀº ÀÚ½ÅÀ» º¹Á¦ÇÑ Sub ShellÀ» ¸¸µé¾î ÀÌ Shell¿¡¼ ÀÌ ¸í·É¾î ±ºÀ» ½ÇÇàÇÑ´Ù.
¸í·É Çü½Ä :
% (command1; command2; ... ; commandn) <ENTER>
(4) Command pipe
UNIX ½Ã½ºÅÛÀ» »ç¿ëÇÏ¸é¼ °¡Àå ¸¹ÀÌ Á¢ÇÏ´Â ¸í·É¾î ÀÔ·Â ¹æ¹ýÀ¸·Î ¾Õ ¸í·ÉÀÇ ½ÇÇà°á°ú¸¦ ´ÙÀ½ ¸í·É¾îÀÇ ÀÔ·ÂÀ¸·Î »ç¿ëÇÑ´Ù.
¸í·É Çü½Ä :
% command1 | command2 | ... | commandn <ENTER>
(5) Conditional command
¾Õ ¸í·ÉÀÇ ½ÇÇà °á°ú¿¡ µû¶ó µÚ¿¡ ¿À´Â ¸í·É¾î¸¦ ½ÇÇàÇÑ´Ù. ¾Õ ¸í·ÉÀÇ ½ÇÇà °á°ú°¡ ¼º°ø ½Ã µÚÀÇ ¸í·ÉÀ» ½ÇÇà ½Ã´Â &&, ½ÇÆÐ ½Ã µÚÀÇ ¸í·ÉÀ» ½ÇÇà ½Ã´Â || ¸¦ »ç¿ëÇÑ´Ù.
¸í·É Çü½Ä :
% command1 && command2 <ENTER>
% command1 || command2 <ENTER>
¿¹ Á¦ :
% ls -l /usr/bin
command = ls, argument = -l /usr/bin (option+file name)
% mkdir temp; cp aa bb temp; cd temp; ls -l <ENTER>
C-shellÀº semi-colon(;)À» ¸í·É ±¸ºÐÀÚ(command delimiter)·Î ÀνÄÇÑ´Ù.
(½ÇÇà ÈÄ¿¡´Â temp µð·ºÅ丮¿¡ À§Ä¡ÇÑ´Ù.)
% (cd /usr/bin; ls -al)
¸í·ÉÀ» ÇöÀçÀÇ shell¿¡¼ ½ÇÇàÇÏÁö ¾Ê°í sub shellÀ» ¸¸µç ÈÄ ½ÇÇàÇÑ´Ù.
(½ÇÇà ÈÄ¿¡µµ µð·ºÅ丮°¡ º¯°æ(/usr/bin) µÇÁö ¾Ê°í À¯ÁöµÈ´Ù.)
% who | wc -l
ÆÄÀÌÇÁ¶óÀÎ ¾Õ ¸í·ÉÀÇ °á°ú¸¦ µÚ ¸í·ÉÀÇ ÀÔ·ÂÀ¸·Î ó¸®ÇÑ´Ù.
% grep OPENWIN ~/.cshrc > costs && lpr costs
ù ¹øÂ° ¸í·ÉÀÌ ¼º°ø(&&) ¶Ç´Â ½ÇÆÐ(||)ÇÑ °æ¿ì¿¡¸¸ µÎ ¹øÂ° ¸í·ÉÀ» ½ÇÇàÇÑ´Ù.
2.2.2 ¸í·É ´ÜÃà (Command shorthand)
(1) ÆÄÀÏ À̸§ È®Àå (file name expansion)
UNIX¿¡¼´Â ¿©·¯ °¡Áö ±âÈ£¹®ÀÚ¸¦ »ç¿ëÇÏ¿© ¹®ÀÚ³ª ¹®ÀÚµéÀ» ´ë½ÅÇÒ ¼ö ÀÖ´Ù. ´ÙÀ½°ú °°Àº wildcard ¹®ÀÚ¸¦ ÀÌ¿ëÇÏ¿© ÆÄÀÏ À̸§À» È®ÀåÇÒ ¼ö ÀÖ´Ù.
? : ¸ðµç ¹®ÀÚ Çϳª¿Í ´ëÀÀ
* : ¿µ(null) ¶Ç´Â ±× ÀÌ»óÀÇ ¿¬¼ÓÀûÀÎ ¸ðµç ¹®ÀÚ¿Í ´ëÀÀ
~ : Home µð·ºÅ丮¸¦ ÀǹÌ
{} : º¹¼ö °³ÀÇ ÆÐÅÏÀ» ½°Ç¥·Î ºÐ¸®ÇÏ¿© »ç¿ë
[list] : "list" ³»¿¡ ÀÖ´Â ¹®ÀÚ Áß Çϳª¿Í ´ëÀÀ
[lower-upper] : "lower"¿Í "upper"¸¦ Æ÷ÇÔÇÑ ±× »çÀÌ ¹üÀ§¿¡ ÀÖ´Â ¹®ÀÚ Çϳª¿Í ´ëÀÀÇÑ´Ù.
¿¹ Á¦ :
% ls /bin/t* : /bin µð·ºÅ丮¿¡ ÀÖ´Â t ·Î ½ÃÀÛÇÏ´Â ¸ðµç ÆÄÀÏ
% ls /usr/openwin/lib/*X11* : ÆÄÀϸíÀÇ Áß°£¿¡ X11ÀÌ µé¾î°£ ÆÄÀÏ
% ls d? : d·Î ½ÃÀÛÇÏ°í ±× ´ÙÀ½¿¡ ¹®ÀÚ Çϳª¸¸ ¿À´Â ÆÄÀÏ
% ls ?? : µÎ ±ÛÀڷθ¸ µÇ¾î ÀÖ´Â ¸ðµç ÆÄÀÏ
% ls ok.[ac] : ok. µÚ¿¡ a ³ª c·Î ³¡³ª´Â ÆÄÀÏ
(% ls ok.a ok.c ¿Í °°Àº ÀǹÌ)
% cat file[1-3] : %cat file1 file2 file3 °ú °°Àº ÀǹÌ
% mkdir ~/proj; mkdir porj/us{1,2,3} : proj µð·ºÅ丮¿¡ us1, us2, us3 µð·ºÅ丮 »ý¼º
(2) ¸í·É ġȯ (command substitution)
ÇϳªÀÇ ¸í·É °á°ú¸¦ ´Ù¸¥ ¸í·ÉÀÇ ÀϺκÐÀ¸·Î »ç¿ëÇÒ ¼ö ÀÖ°Ô ÇÏ´Â °ÍÀ¸·Î ¸í·É ġȯÀ» ÇϰíÀÚ ÇÏ´Â ºÎºÐÀº ÀÎ¿ë ºÎÈ£ " ` " ·Î ¹¾î¾ß ÇÑ´Ù. C shellÀº ¿ª ÀÎ¿ë ºÎÈ£ ¾È¿¡ ÀÖ´Â ºÎºÐÀ» ¸í·É¾î ±× ÀÚü·Î ÀνÄÇÑ´Ù.
¿¹ Á¦ :
1. shellÀº date ¸í·ÉÀ» ½ÇÇà ½ÃÄ×°í ±× °á°ú¸¦ echo ¸í·ÉÀÇ ÀϺηΠġȯÇÑ ´ÙÀ½ »õ·Ó°Ô ±¸¼ºµÈ echo ¸í·ÉÀ» ½ÇÇàÇÑ´Ù.
% echo The time is `date`
The time is Mon Apr 21 17:52:38 KST 1997
2. º¹ÀâÇÑ ¸í·ÉÀ» °£´ÜÈ÷ ¸¸µç´Ù.
% setenv DISPLAY `who am i | cut -d¡±(¡° -f2 | cut -d¡±)¡± -f`:0
% alias dsp ¡®setenv DISPLAY ......¡¯
2.2.3 Job Control
ÇÑ °³ÀÇ ¸í·É ÁÙ ³»¿¡ ±â¼úµÈ ÀÏ·ÃÀÇ ¸í·Éµé·Î ±¸¼ºµÇ¸ç, ÇϳªÀÇ job¿¡´Â ½ÇÇà ÇÁ·Î±×·¥À¸·Î ±¸¼ºµÈ ÇÁ·Î¼¼½º°¡ ¸î °³ ÀÖÀ» ¼ö ÀÖ´Ù. JobÀ» ±¸¼ºÇÏ´Â °¢°¢ÀÇ ÇÁ·Î¼¼½º´Â À¯ÀÏÇÑ ÇÁ·Î¼¼½ºID(PID)¸¦ °®´Â´Ù.
(1) Foreground Job (fg)
»ç¿ëÀÚ°¡ ¸í·ÉÀ» ÀÔ·ÂÇÏ¸é ±× ¸í·ÉÀÌ ³¡³¯ ¶§ ±îÁö Å͹̳ÎÀ» ´Ù¸¥ ¿ëµµ·Î »ç¿ëÇÒ ¼ö ¾ø°í, ÇöÀç ½ÇÇà ÁßÀÎ ¸í·ÉÀÌ Å͹̳ÎÀ» ÅëÇØ »ç¿ëÀÚ¿Í Á¤º¸¸¦ Á÷Á¢ ±³È¯ÇÑ´Ù.
°¡Àå ÀüÇüÀûÀÎ º¸±â´Â vi ÆíÁý±âÀÌ´Ù.
(2) Background Job (bg)
»ç¿ëÀÚ°¡ ¸í·ÉÀ» ÀÔ·ÂÇÑ ÈÄ¿¡ ±× ¸í·ÉÀÌ ³¡³ª±â Àü¿¡ Å͹̳ÎÀ» ´Ù¸¥ ÀÏ¿¡ ¾µ ¼ö ÀÖ´Ù. »ç¿ëÀÚ°¡ óÀ½ ½ÇÇàÇÒ ¶§ background jobÀ¸·Î ½ÇÇàÇÏ·Á¸é ¸í·É¾î ¸Ç µÚ¿¡ "&"¸¦ ºÙÀδÙ.
(3) Job change
ƯÁ¤ jobÀÇ ½ÇÇà ¹æ¹ýÀ» ½ÇÇà Áß¿¡µµ º¯°æÇÒ ¼ö°¡ ÀÖ´Ù. Áï fg jobÀ» bg jobÀ¸·Î, bg jobÀ» fg jobÀ¸·Î º¯°æÇÒ ¼ö ÀÖ´Ù. ¶ÇÇÑ Æ¯Á¤ jobÀÇ ½ÇÇàÀ» Àá½Ã ¸ØÃß°Ô ÇÒ ¼ö ÀÖ´Ù.
command & : ¸í·ÉÀ» background·Î ½ÇÇàÇÑ´Ù.
jobs : background job number¿Í status¸¦ Ç¥½ÃÇÑ´Ù.
nohup command & : logout ÈÄ¿¡µµ ¸í·ÉÀÌ ½ÇÇàÇÒ ¼ö ÀÖ°Ô ÇÑ´Ù.
¿¹ Á¦ :
fg : ÇöÀçÀÇ jobÀ» foreground·Î °¡Á®¿Â´Ù
fg %n : job number nÀ» °®´Â jobÀ» foreground·Î °¡Á®¿Â´Ù.
bg : ÇöÀçÀÇ jobÀ» background·Î º¸³½´Ù.
bg %n : job number nÀ» °®´Â jobÀ» background·Î º¸³½´Ù.
^Z : ÇöÀçÀÇ foreground jobÀ» ÀϽà Á¤Áö(suspend) ½ÃŲ´Ù.
(fg·Î ½ÇÇàÇÑ ÇÁ·Î±×·¥À» bg·Î ½ÇÇàÇÏ·Á¸é ^z(CTRL+Z)¸¦ ´·¯ ÀϽà Á¤Áö½ÃŲ ÈÄ bg¶ó°í ÀÔ·ÂÇÏ¸é µÈ´Ù. À̶§ CTRL+C¸¦ ´©¸£´Â
°Í°ú È¥µ¿ÇÏÁö ¸»¾Æ¾ß ÇÑ´Ù.)
stop % : ÇöÀçÀÇ background jobÀ» ÀϽà Á¤½Ã ½ÃŲ´Ù.
stop %n : job number nÀ» °®´Â background jobÀ» ÀϽà Á¤Áö ½ÃŲ´Ù.
tostop : Terminal Output STOP
stty tostop : background jobÀÌ terminal¿¡ Ãâ·ÂÇÏ·Á°í ½ÃµµÇϸé ÀϽà Á¤Áö ½ÃŲ´Ù.
stty -tostop : background jobÀÌ terminal¿¡ Ãâ·ÂÇÏ´Â °ÍÀ» Çã¿ëÇÑ´Ù.
notify : ÇöÀçÀÇ jobÀÌ »óŰ¡ ¹Ù²î¸é ±×°ÍÀ» Åëº¸ÇØ ÁØ´Ù
notify %n : job nÀÇ »óŰ¡ ¹Ù²î¸é ±×°ÍÀ» Åëº¸ÇØ ÁØ´Ù
set notify : ¾î¶² jobÀÌµç »óŰ¡ ¹Ù²î¸é ±×°ÍÀ» Åëº¸ÇØ ÁØ´Ù.
2.2.4 History
ÀÌÀü¿¡ »ç¿ëÇß´ø ¸í·ÉÀ» ´Ù½Ã ÀÔ·ÂÇÏÁö ¾Ê°í ÀçÀÔ·Â Çϵµ·Ï ÇØ ÁÖ´Â ±â´ÉÀ¸·Î Àü¿¡ ÀÔ·ÂÇÑ ¸í·ÉÀ» ¹øÈ£³ª ½ÃÀÛÇÏ´Â ¹®ÀÚ·Î ÂüÁ¶ÇÒ ¼ö ÀÖ´Ù. ¶ÇÇÑ ¹Ù·Î Á÷Àü¿¡ ÀÔ·ÂÇÑ ¸í·ÉÀÇ ÀϺθ¦ ġȯÇÏ¿© ÀçÀÔ·ÂÇÒ ¼öµµ ÀÖ´Ù.
HistoryÀÇ ±â´ÉÀº ¿¹¾àµÈshell º¯¼öÀÎ ¡°history¡±¿¡ shellÀÌ ±â¾ïÇØ¾ß ÇÒ ¸í·ÉÀÇ °³ ¼ö¸¦ ÁöÁ¤Çϸé shellÀº ÀÌ °³ ¼ö¸¸Å »ç¿ëÀÚ°¡ ÀÔ·ÂÇÑ ¸í·ÉÀ» º°µµÀÇ ±â¾ïÀå¼Ò¿¡ ÀúÀåÀ» Çϰí ÀÖ´Ù°¡ history°¡ ÂüÁ¶µÇ¸é ÀÌ ¸í·ÉÀ» ½ÇÇàÇÑ´Ù.
ƯÈ÷ C ShellÀº À©µµ¿ì º°·Î º°µµÀÇ È¯°æÀ» °ü¸®ÇÑ´Ù. Áï historyµµ À©µµ¿ì ¸¶´Ù º°µµ·Î °ü¸®ÇÑ´Ù.
HistoryÀÇ ¼³Á¤Àº .cshrc ÆÄÀÏÀ̳ª ¸í·É¾î ¶óÀο¡¼ ´ÙÀ½°ú °°ÀÌ ¼³Á¤ÇÑ´Ù.
set history = 30 (30°³ÀÇ history°¡ ÀúÀåµÈ´Ù.)
History¿¡ »ç¿ëµÇ´Â ¸í·ÉÀº ´ÙÀ½°ú °°´Ù.
! : ÇöÀç ¸í·ÉÀ» ÀÔ·ÂÇϰí ÀÖ´Â ÁÙ ÀÚü¸¦ ³ªÅ¸³½´Ù (current).
!! : ¹Ù·Î ÀÌÀü¿¡ ÀÔ·ÂÇÑ ¸í·ÉÀ» ³ªÅ¸³½´Ù (just before).
!c : ÀÌÀüÀÇ ¸í·É Áß c·Î ½ÃÀÛÇÏ´Â ¸í·ÉÀ» ³ªÅ¸³½´Ù.
!12 : 12¹øÂ° ÀÔ·ÂÇÑ ¸í·ÉÀ» ³ªÅ¸³½´Ù.
^aa^bb : ÀÌÀü¿¡ ÀÔ·ÂÇÑ aaºÎºÐÀ» bb·Î ġȯÇÑ´Ù.
¿¹ Á¦ :
% ls ?al /etc
% ls /usr/bin
% cat /etc/hosts
% ps -ef
¡¡% !! (¹Ù·Î Á÷Àü¿¡ ½ÇÇàÇÑ ps ?ef ¸¦ ¹Ýº¹ÇÑ´Ù.)
% !c (ÀÌÀüÀÇ ¸í·ÉÁß c·Î ½ÃÀÛÇÑ ¸í·ÉÀÎ cat /etc/hosts¸¦ ½ÇÇà)
% !ps (ÀÌÀüÀÇ ¸í·É Áß ps·Î ½ÃÀÛÇÑ ¸í·ÉÀÎ ps ?ef ¸¦ ½ÇÇà)
% history (history bufferÀÇ ³»¿ëÀ» º¸¿©ÁØ´Ù.)
% !10 (10¹øÂ°ÀÇ ³»¿ëÀ» ¹Ýº¹ÇÑ´Ù.)
2.2.5 Alias
ÇϳªÀÇ ¸í·É ¶Ç´Â ¸í·ÉÀÇ ÁýÇÕ¿¡ ºÙ¿© ÁÖ´Â ¾î¶² À̸§À» alias¶ó ÇÑ´Ù. ÀÚÁÖ »ç¿ëµÇ´Â º¹ÀâÇÑ ¸í·ÉÀ» alias¸¦ »ç¿ëÇÏ¿© ´ÜÃà ¸í·É¾î·Î ¸¸µé¾î µÑ ¼ö ÀÖÀ¸¹Ç·Î alias ±â´ÉÀ» Àß ÀÌ¿ëÇϸé UNIX ½Ã½ºÅÛÀ» Æí¸®ÇÏ°Ô »ç¿ëÇÒ ¼ö ÀÖ´Ù.
AliasÀÇ Á¤ÀǴ ȯ°æ ÆÄÀÏÀÎ ~/.cshrc ÆÄÀÏ¿¡ Á¤ÀǸ¦ Çϰųª ¸í·É¾î ¶óÀο¡¼ Á¤ÀÇÇÒ ¼ö ÀÖ´Ù. C ShellÀº â(Shell)ÀÌ ¸¸µé¾î Áú ¶§ ¸¶´Ù ȯ°æ ÆÄÀÏÀÎ ~/.cshrc ¸¦ Àоî ȯ°æÀ» ¼³Á¤ÇϹǷΠ~/.cshrc¿¡ Á¤ÀÇµÈ ³»¿ëÀº µµµç â¿¡ ¿µÇâÀ» ¹ÌÄ£´Ù.(xterm, dtterm, hantermµîÀÇ ¸í·É¿¡ ÀÇÇØ âÀÌ ¸¸µé¾î Áø´Ù.) ±×¸®°í ÀÎÀÚ(argument) ¾øÀÌ alias ¸í·ÉÀ» ÀÔ·ÂÇϸé ÇöÀç Á¤ÀÇµÈ ¸ðµç alias À̸§°ú ±× Á¤Àǰ¡ listµÈ´Ù.
¸í·É Çü½Ä :
1. alias name ¡®definition¡¯
2. unalias name
¿¹ Á¦ :
1. ~/.cshrc ¿¡ Á¤ÀÇµÈ aliasÀÇ ³»¿ëÀ» º»´Ù.
% alias
2. alias¸¦ Á¤ÀÇÇÑ´Ù.
% alias dir ¡®ls -al | more¡¯
% alias psl ¡®/bin/ps -efl¡¯
% alias vc ¡®vi ~/.cshrc; source ~/.cshrc¡¯
3. alias¿¡ Á¤ÀÇµÈ ³»¿ëÀ» ½ÇÇàÇÑ´Ù.
% alias
% dir
% psl
4. Á¤ÀÇµÈ alias¸¦ ¾ø¾Ø´Ù.
% unalias dir
% unalias psl
% alias
ÁÖ) aliasµÈ ¸í·É¾î¸¦ ¸í·É¾î ÀÔ·Â ¶óÀο¡¼ Àá½Ã ±× ±â´ÉÀ» Á¤Áö½ÃŰ·Á¸é ¸í·É¾î ¾Õ¿¡ ¿ª ½½·¡½¬(\)¸¦ ÀÔ·ÂÈÄ ¸í·É¾î¸¦ ÀÔ·Â(\rm -r file_name)ÇÏ¸é µÈ´Ù.
C shellÀº ¾Õ¿¡¼ ¾ð±ÞÇÑ ´ëÈ½Ä ¸í·É ÇØ¼®±âÀÇ ¿ªÇÒ »Ó¸¸ ¾Æ´Ï¶ó °·ÂÇÑ ÇÁ·Î±×·¡¹Ö ¾ð¾î·Î »ç¿ëµÉ ¼ö ÀÖ´Ù. C shellÀÇ ÇÁ·Î±×·¥ Á¦¾î ±¸Á¶´Â C-language¸¦ ¸¹ÀÌ ´à¾Æ, C shellÀ̶ó°í ºÎ¸£´Âµ¥. C¾ð¾î¿Í À¯»çÇÑ ±â´ÉÀ» Á¦°øÇÑ´Ù. ÀÌ·± ÇÁ·Î±×·¡¹Ö ¾ð¾î ±â´ÉÀ» »ç¿ëÇÏ¿©, C shell program(script)À» ÀÛ¼ºÇÒ ¼ö ÀÖ´Ù.
C shellÀº ÇÁ·Î±×·¥ ¾ð¾î·Î¼ ´ÙÀ½ÀÇ ±â´ÉÀ» Á¦°øÇÑ´Ù.