Çѱ¹À¯´Ï½Ã½º (UNISYS) ----------------------------------------------------------------------------- UNIX ½Ã½ºÅÛ () 1/154 (ÃÑ 144°Ç) ¹øÈ£ À̸§ ID ³¯Â¥ Á¶È¸ Pg Á¦ ¸ñ 1 À¯´Ï½Ã½º adunis2 01/26 1263 4 À¯´Ð½º ¿î¿µÃ¼Á¦ÀÇ ¿ª»ç 3 À¯´Ï½Ã½º adunis2 01/26 952 8 À¯´Ð½º ¿î¿µÃ¼Á¦ÀÇ Æ¯Â¡ 4 À¯´Ï½Ã½º adunis2 01/26 744 8 À¯´Ð½º ¿î¿µÃ¼Á¦ÀÇ ±¸¼º¿ä¼Ò¹× Ư¡ 5 À¯´Ï½Ã½º adunis2 01/26 737 9 À¯´Ð½º ·Î±×Àΰú À¯´Ð½º ¸í·É¾îÀÇ Æ¯Â¡ 6 À¯´Ï½Ã½º adunis2 01/26 564 7 ¸í·É¾î ¶óÀλóÀÇ ¿¡·¯ »óȲ°ú Á¦¾î 7 À¯´Ï½Ã½º adunis2 01/26 612 7 Æнº¿öµåÀÇ Á¦¾î: passwd ¸í·É¾î 8 À¯´Ï½Ã½º adunis2 01/26 548 7 ¿Â¶óÀÎ ¸Þ´º¾óÀÇ ÂüÁ¶ : man°ú mandex 9 À¯´Ï½Ã½º adunis2 01/26 493 2 À¯´Ð½º¿¡¼­ÀÇ ÀÛ¾÷ÀÇ Á¾·á : logout 10 À¯´Ï½Ã½º adunis2 01/26 622 6 À¯´Ð½º È­ÀÏ ½Ã½ºÅÛ°ú È­ÀÏ ±¸Á¶ 11 À¯´Ï½Ã½º adunis2 01/29 501 7 °èÃþ ±¸Á¶»óÀÇ È­ÀÏÂüÁ¶¿Í È­ÀÏ ¸í¸í ±ÔÄ¢ 12 À¯´Ï½Ã½º adunis2 01/29 488 8 À¯´Ð½º ½© Ư¼ö¹®ÀÚ: Special characters 13 À¯´Ï½Ã½º adunis2 01/29 471 6 À¯´Ð½º ½© Ư¼ö¹®ÀÚÀÇ »ç¿ë Á¦¾î 14 À¯´Ï½Ã½º adunis2 01/29 423 5 À¯´Ð½º ÅؽºÆ® ÆíÁý±â: ÀϹÝÀû Ư¡ 15 À¯´Ï½Ã½º adunis2 01/31 413 12 ¶óÀÎ ÆíÁý±â edÀÇ ±âº» »çÇ× 16 À¯´Ï½Ã½º adunis2 02/05 390 14 ¶óÀÎ ÆíÁý±â edÀÇ ÀÏ¹Ý ¸í·É¾î 17 À¯´Ï½Ã½º adunis2 02/05 523 13 ½ºÅ©¸° ÆíÁý±â viÀÇ ±âº» »çÇ× 19 À¯´Ï½Ã½º adunis2 02/07 557 15 ½ºÅ©¸° ÆíÁý±â viÀÇ ÀÏ¹Ý ¸í·É¾î 20 À¯´Ï½Ã½º adunis2 02/08 499 10 vi ¶óÀÎ ¿¡µðÅÍ ¸í·É¾î¹× ȯ°æ Á¦¾î 21 À¯´Ï½Ã½º adunis2 02/08 403 3 È­ÀÏ¹× µð·ºÅ丮 °ü¸® ¸í·É¾î ÀÏ¹Ý 22 À¯´Ï½Ã½º adunis2 02/08 363 7 µð·ºÅ丮 °ü¸® ¸í·É: pwd¿Í mkdir 23 À¯´Ï½Ã½º adunis2 02/09 345 13 µð·ºÅ丮 °ü¸® ¸í·É: ls 24 À¯´Ï½Ã½º adunis2 02/10 273 7 µð·ºÅ丮 °ü¸® ¸í·É: cd¿Í rmdir 25 À¯´Ï½Ã½º adunis2 02/11 259 9 È­ÀÏ °ü¸® ¸í·É: file°ú cat 26 À¯´Ï½Ã½º adunis2 02/12 248 10 È­ÀÏ °ü¸® ¸í·É: pg ¿Í cp 27 À¯´Ï½Ã½º adunis2 02/13 219 5 È­ÀÏ °ü¸® ¸í·É: mv 28 À¯´Ï½Ã½º adunis2 02/13 272 7 È­ÀÏ °ü¸® ¸í·É: ln 29 À¯´Ï½Ã½º adunis2 02/15 279 11 È­ÀÏ ÇÁ¸°Æ® Á¦¾î ¸í·É I: pr, fmt, lp 30 À¯´Ï½Ã½º adunis2 02/17 238 14 È­ÀÏ ÇÁ¸°Æ® Á¦¾î ¸í·É II: lpstat, ... 31 À¯´Ï½Ã½º adunis2 02/18 237 6 È­ÀÏ °Ë»ö ¸í·É¾î: find 32 À¯´Ï½Ã½º adunis2 02/19 219 6 È­ÀÏ¿¡¼­ÀÇ ¹®ÀÚ¿­ °Ë»ö: grep 33 À¯´Ï½Ã½º adunis2 02/19 216 10 È­ÀÏ ³»¿ëÀÇ Á¤·Ä: sort 34 À¯´Ï½Ã½º adunis2 02/19 231 5 È­ÀÏÀÇ »èÁ¦: rm 35 À¯´Ï½Ã½º adunis2 02/20 268 9 µð·ºÅ丮¹× È­ÀÏ ¾ï¼¼½º Á¦¾îÀÇ ÀϹݰ³¿ä 36 À¯´Ï½Ã½º adunis2 02/22 251 12 Á¢±Ù ±ÇÇÑÀÇ(Permission)ÀÇ Á¦¾î I 37 À¯´Ï½Ã½º adunis2 02/23 228 11 Á¢±Ù ±ÇÇÑ(Permission)ÀÇ Á¦¾î II 38 À¯´Ï½Ã½º adunis2 02/23 199 5 È­ÀÏÀÇ ¼ÒÀ¯±Ç(ownership) º¯°æ: chown 39 À¯´Ï½Ã½º adunis2 02/24 204 10 »ç¿ëÀÚÀÇ ¼Ò¼Ó ±×·ì(membership) Á¦¾î I 40 À¯´Ï½Ã½º adunis2 02/25 203 11 »ç¿ëÀÚÀÇ ¼Ò¼Ó ±×·ì(membership) Á¦¾î II 41 À¯´Ï½Ã½º adunis2 02/25 327 8 À¯´Ð½ºÀÇ ±âº» Åë½Å ÀÏ¹Ý °³¿ä 42 À¯´Ï½Ã½º adunis2 02/26 266 16 ´Ü¸»°£ÀÇ ¸Þ¼¼Áö ¼Û¼ö½Å ±â´É 43 À¯´Ï½Ã½º adunis2 02/26 232 7 ÀüÀÚ ¿ìÆí ¼Û¼ö½Å ±â´É: mail 44 À¯´Ï½Ã½º adunis2 02/27 218 12 °í¼º´É ÀüÀÚ¿ìÆí ¼Û¼ö½Å ±â´É: mailx 45 À¯´Ï½Ã½º adunis2 02/27 199 7 ÀüÀÚ¿ìÆí º¸Á¶ ±â´É: notify, vacation 46 À¯´Ï½Ã½º adunis2 02/28 262 7 À¯´Ð½º Ç¥ÁØ µð·ºÅ丮¹× È­Àϵé 47 À¯´Ï½Ã½º adunis2 02/28 257 13 BNU(Basic Networking Utility) ÀÏ¹Ý °³¿ä 48 À¯´Ï½Ã½º adunis2 02/28 232 7 BNU ³×Æ®¿÷ À¯Æ¼¸®Æ¼: uucp 49 À¯´Ï½Ã½º adunis2 02/29 183 8 BNU ³×Æ®¿÷ À¯Æ¿¸®Æ¼: uname,uuname,uulog 50 À¯´Ï½Ã½º adunis2 02/29 188 6 BNU ³×Æ®¿÷ À¯Æ¿¸®Æ¼: uuto,uupick 51 À¯´Ï½Ã½º adunis2 02/29 183 7 BNU ³×Æ®¿÷ À¯Æ¿¸®Æ¼: uustat 52 À¯´Ï½Ã½º adunis2 03/03 195 13 BNU ³×Æ®¿÷ À¯Æ¿¸®Æ¼: cu 53 À¯´Ï½Ã½º adunis2 03/03 199 7 BNU ³×Æ®¿÷ À¯Æ¿¸®Æ¼: uux,uuxqt 54 À¯´Ï½Ã½º adunis2 03/04 184 8 ÀÔÃâ·Â ¹æÇâÀüȯÀÇ ÀÏ¹Ý °³¿ä 55 À¯´Ï½Ã½º adunis2 03/05 176 9 ÀÔÃâ·ÂÀÇ È­ÀÏ·ÎÀÇ ¹æÇâÀüȯ(Redirection) 56 À¯´Ï½Ã½º adunis2 03/06 176 8 Pipe¿Í Tee¸¦ ÅëÇÑ ¹æÇâÀüȯ(Redirection) 57 À¯´Ï½Ã½º adunis2 03/06 170 5 ¿¡·¯ ¸Þ¼¼ÁöÀÇ Ãâ·Â ¹æÇâÀüȯ(Redirection) 58 À¯´Ï½Ã½º adunis2 03/07 224 11 ÇÁ·Î¼¼½º(Process)¿Í Á¦¾î ¸í·É: ps 59 À¯´Ï½Ã½º adunis2 03/09 192 7 ´Ù¾çÇÑ ÇüÅÂÀÇ ¸í·É¾î ½ÇÇà ¹æ½Ä 60 À¯´Ï½Ã½º adunis2 03/09 193 5 Background¿¡¼­ÀÇ ¸í·É¾î ½ÇÇà 61 À¯´Ï½Ã½º adunis2 03/09 209 7 ÇÁ·Î¼¼½ºÀÇ Á¾·á: kill 62 À¯´Ï½Ã½º adunis2 03/10 196 6 ¸í·É¾î ½ÇÇàÀÇ ºñÁ¤»óÀû Á¾·á ¿¹¹æ: nohup 63 À¯´Ï½Ã½º adunis2 03/10 216 11 ¸í·É¾îÀÇ ¿¹¾à ½ÇÇà: at,batch 64 À¯´Ï½Ã½º adunis2 03/11 184 9 ¿¹¾àµÈ ÀÛ¾÷ÀÇ È®ÀÎ¹× »èÁ¦: atq,atrm 65 À¯´Ï½Ã½º adunis2 03/12 229 8 ShellÀÇ ÀÏ¹Ý °³¿ä¹× Á¾·ùº° Ư¼º 66 À¯´Ï½Ã½º adunis2 03/14 200 7 Korn ShellÀÇ Æ¯¼º¹× ¼³Ä¡ 67 À¯´Ï½Ã½º adunis2 03/15 193 6 Korn ShellÀÇ Command History ±â´É 68 À¯´Ï½Ã½º adunis2 03/15 191 7 Korn ShellÀÇ Command Alias ±â´É 69 À¯´Ï½Ã½º adunis2 03/16 195 9 Korn ShellÀÇ Job Control ±â´É 70 À¯´Ï½Ã½º adunis2 03/16 186 9 Korn ShellÀÇ Option°ú Variables 71 À¯´Ï½Ã½º adunis2 03/17 230 6 Shell ProgramÀÇ ÀϹݰ³¿ä¹× ÀÛ¼º 72 À¯´Ï½Ã½º adunis2 03/17 210 8 Shell ProgramÀÇ ½ÇÇà ¹æ½Ä°ú ¿¡·¯ °ËÁõ 73 À¯´Ï½Ã½º adunis2 03/19 192 10 Shell ProgrammingÀÇ ±âÃÊ: Variable 74 À¯´Ï½Ã½º adunis2 03/20 200 11 Shell ±âÃÊ: º¯¼öÀÇ ÂüÁ¶¹× export 75 À¯´Ï½Ã½º adunis2 03/20 218 7 Shell ±âÃÊ: Shell function°ú .profile 76 À¯´Ï½Ã½º adunis2 03/21 200 10 Shell ProgramÀÇ Àå½Ä ±â´Éµé 78 À¯´Ï½Ã½º adunis2 03/21 402 12 ** À¯´Ð½º ±âÃÊ°úÁ¤ ÃÑÁ¤¸® ¹®Á¦ ** 79 À¯´Ï½Ã½º adunis2 03/22 284 5 ** À¯´Ð½º ÀÀ¿ë°úÁ¤ ÃÑÁ¤¸® ¹®Á¦ ** 80 À¯´Ï½Ã½º adunis2 03/23 228 13 Shell ProgrammingÀÇ »çÀü Áö½Ä 83 À¯´Ï½Ã½º adunis2 03/26 209 12 Bourne ShellÀÇ ¸í·É¾î ¶óÀΠ󸮰úÁ¤ I 84 À¯´Ï½Ã½º adunis2 03/26 182 10 Bourne ShellÀÇ ¸í·É¾î ¶óÀΠ󸮰úÁ¤ II 85 À¯´Ï½Ã½º adunis2 03/27 200 16 Korn ShellÀÇ ¸í·É¾î ¶óÀΠ󸮰úÁ¤ 86 À¯´Ï½Ã½º adunis2 03/27 257 14 ½© º¯¼ö¸¦ ÀÌ¿ëÇÑ ÀÛ¾÷ȯ°æ ±¸Ãà 87 À¯´Ï½Ã½º adunis2 03/30 169 4 Shell ProgramÀÇ Comment ó¸® ±â´É 88 À¯´Ï½Ã½º adunis2 03/30 165 9 Shell Program¿¡¼­ÀÇ º¯¼ö ¿î¿ë¹æ½Ä I 89 À¯´Ï½Ã½º adunis2 03/30 152 11 Shell Program¿¡¼­ÀÇ º¯¼öÀÇ ¿î¿ë¹æ½Ä II 90 À¯´Ï½Ã½º adunis2 03/31 156 11 Shell Program³»·Î ÀÎÀÚ ¹Þ¾ÆµéÀ̱â 91 À¯´Ï½Ã½º adunis2 04/01 134 13 Shell Program¿¡¼­ ÂüÁ¶Çϴ Ư¼öº¯¼ö 92 À¯´Ï½Ã½º adunis2 04/02 138 7 Shell ProgramÀÇ ¸í·É¾î ½ÇÇà»óÅ °ËÁõ 93 À¯´Ï½Ã½º adunis2 04/03 133 11 Shell ProgramÀÇ Á¶°Ç °Ë»ç ±â´É I 94 À¯´Ï½Ã½º adunis2 04/03 122 8 Shell ProgramÀÇ Á¶°Ç °Ë»ç ±â´É II 95 À¯´Ï½Ã½º adunis2 04/03 119 9 Shell ProgramÀÇ Á¶°Ç ºÐ±â ¹æ½Ä I 96 À¯´Ï½Ã½º adunis2 04/03 141 14 Shell ProgramÀÇ Á¶°Ç ºÐ±â ¹æ½Ä II 97 À¯´Ï½Ã½º adunis2 04/04 175 6 Shell Program: ½ÇÀü ¿¬½À ¹®Á¦ 98 À¯´Ï½Ã½º adunis2 04/09 156 8 Shell Program: ½ÇÀü ¹®Á¦ ´ä¾È 99 À¯´Ï½Ã½º adunis2 04/11 144 7 Filter¿Í Regular Expressions °³¿ä 100 À¯´Ï½Ã½º adunis2 04/12 126 13 Filter,Regular Ex[ressions: grep 101 À¯´Ï½Ã½º adunis2 04/13 118 13 Filter,Regular Expressions: sort, tr 102 À¯´Ï½Ã½º adunis2 04/15 118 11 Filter,Regular Expressions: cut,paste 103 À¯´Ï½Ã½º adunis2 04/16 124 11 Filter,Regular Expressions: sed 104 À¯´Ï½Ã½º adunis2 04/17 143 12 Filter,Regular Expressions: awk I 105 À¯´Ï½Ã½º adunis2 04/19 124 14 Filter,Regular Expressions: awk II 106 À¯´Ï½Ã½º adunis2 04/23 122 9 Filter,Regular Expressions: awk III 107 À¯´Ï½Ã½º adunis2 04/23 120 11 Filter, Regular Expressions: awk IV 108 À¯´Ï½Ã½º adunis2 04/24 174 7 Shell Program: ½ÇÀü ¿¬½À ¹®Á¦ 111 À¯´Ï½Ã½º adunis2 04/28 156 11 Shell Program Debugging I 112 À¯´Ï½Ã½º adunis2 04/29 117 6 Shell Program Debugging II 113 À¯´Ï½Ã½º adunis2 04/30 135 7 Shell Program Debugging III 115 À¯´Ï½Ã½º adunis2 05/14 107 11 Parameter Modification 116 À¯´Ï½Ã½º adunis2 05/17 106 9 Shell ProgramÀÇ Á¦¾î¹® I 117 À¯´Ï½Ã½º adunis2 05/17 87 5 Shell ProgramÀÇ Á¦¾î¹® II 118 À¯´Ï½Ã½º adunis2 05/18 87 9 Shell ProgramÀÇ Á¦¾î¹®: case 119 À¯´Ï½Ã½º adunis2 05/19 93 6 Shell ProgramÀÇ Á¦¾î¹®: || ¿Í && 120 À¯´Ï½Ã½º adunis2 05/20 95 8 Shell ProgramÀÇ Á¦¾î¹®: for 121 À¯´Ï½Ã½º adunis2 05/21 93 6 Shell ProgramÀÇ Á¦¾î¹®: select 122 À¯´Ï½Ã½º adunis2 05/22 92 11 Shell ProgramÀÇ Á¦¾î¹®: expr 123 À¯´Ï½Ã½º adunis2 05/23 87 5 Shell ProgramÀÇ Á¦¾î¹®: while 124 À¯´Ï½Ã½º adunis2 05/27 86 5 shell ProgramÀÇ Á¦¾î¹®: until 126 À¯´Ï½Ã½º adunis2 06/05 81 5 Shell ProgramÀÇ Á¦¾î¹®: while,until Á¤¸® 127 À¯´Ï½Ã½º adunis2 06/07 76 5 Shell ProgramÀÇ Á¦¾î¹®: true, false 128 À¯´Ï½Ã½º adunis2 06/08 76 7 Shell ProgramÀÇ Á¦¾î¹®: break, continue 129 À¯´Ï½Ã½º adunis2 06/09 88 9 Shell ProgrammingÀÇ Ãß°¡»çÇ×: signal 130 À¯´Ï½Ã½º adunis2 06/10 83 6 Shell ProgrammingÀÇ Ãß°¡»çÇ×: trap 131 À¯´Ï½Ã½º adunis2 06/11 71 9 Shell ProgrammingÀÇ Ãß°¡»çÇ×: getopts 132 À¯´Ï½Ã½º adunis2 06/12 77 7 Shell ProgrammingÀÇ Ãß°¡»çÇ×: wait,lines 133 À¯´Ï½Ã½º adunis2 06/20 74 5 Shell ProgrammingÀÇ Ãß°¡»çÇ×: |& 134 À¯´Ï½Ã½º adunis2 06/24 72 8 Shell ProgrammingÀÇ Ãß°¡»çÇ×: exec 135 À¯´Ï½Ã½º adunis2 06/28 61 6 Shell ProgrammingÀÇ Ãß°¡»çÇ×: Line 136 À¯´Ï½Ã½º adunis2 06/29 66 9 Shell ProgrammingÀÇ Ãß°¡»çÇ×: functions 137 À¯´Ï½Ã½º adunis2 06/30 128 5 C ShellÀÇ È¯°æ 138 À¯´Ï½Ã½º adunis2 06/30 119 6 C ShellÀÇ º¯¼ö 140 À¯´Ï½Ã½º adunis2 07/05 78 7 C ShellÀÇ ¿¹¾à º¯¼öµé 141 À¯´Ï½Ã½º adunis2 07/05 74 5 C ShellÀÇ history ±â´Éµé 142 À¯´Ï½Ã½º adunis2 07/05 80 9 C ShellÀÇ history ¸í·É¾î 143 À¯´Ï½Ã½º adunis2 07/06 75 9 C ShellÀÇ history log ¹× alias 144 À¯´Ï½Ã½º adunis2 07/07 76 5 C ShellÀÇ ¸í·É¾î ¶óÀΠ󸮰úÁ¤ 145 À¯´Ï½Ã½º adunis2 07/08 65 5 C ShellÀÇ ÀÔÃâ·Â ¹æÇâÀüȯ 146 À¯´Ï½Ã½º adunis2 07/09 71 6 C ShellÀÇ ½© ÇÁ·Î±×·¥ ÀÎÀÚ Ã³¸® 147 À¯´Ï½Ã½º adunis2 07/09 63 8 C ShellÀÇ ¿¬»êÀÚ(Operators) 148 À¯´Ï½Ã½º adunis2 07/09 73 7 C ShellÀÇ Á¶°Ç Á¦¾î¹®: if 149 À¯´Ï½Ã½º adunis2 07/09 77 11 C ShellÀÇ Á¦¾î¹®: foreach,while,switch 150 À¯´Ï½Ã½º adunis2 07/09 110 7 C ShellÀÇ ±âŸ Á¦¾î¹® 151 À¯´Ï½Ã½º adunis2 07/09 281 3 Åë½Å°­ÀÇ ¼ö°­ÀÚ ¿©·¯ºÐ²² !!! 152 À¯´Ï½Ã½º adunis2 07/15 277 15 °ü¸®ÀÚ °úÁ¤ »çÀüÁö½Ä Á¡°Ë ¹®Á¦ 153 À¯´Ï½Ã½º adunis2 07/30 164 5 »çÀüÁ¡°Ë ¹®Á¦ ¸ð¹ü ´ä¾È 154 À¯´Ï½Ã½º adunis2 07/30 446 7 À¯´Ð½º °ü¸®ÀÚ ±â´É °³¿ä #1 À¯´Ï½Ã½º (adunis2 ) À¯´Ð½º ¿î¿µÃ¼Á¦ÀÇ ¿ª»ç 01/26 17:04 56 line À¯´Ð½ºÀÇ ¿î¿µÃ¼Á¦ÀÇ ¿ª»ç -------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ»çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. -------------------------------------------------------------------- << À¯´Ð½º °³¹ß»ç >> À¯´Ð½º ¿î¿µÃ¼Á¦´Â 1969³â AT&T»çÀÇ BELL ¿¬±¸¼ÒÀÇ KEN THOMPSON¿¡ ÀÇÇØ °³¹ßµÈ ¿î¿µÃ¼Á¦·Î¼­ DECÀÇ PDP7 ½Ã½ºÅÛ³»¿¡¼­ '¿ìÁÖ¿©Çà' ÇÁ·Î±×·¥À» µ¹¸®±âÀ§ÇÑ ¼ÒÇÁÆ®¿þ¾î ¹­À½À¸·Î ź»ýÇÏ¿´´Ù. Ãʱ⿡´Â PDP7 ½Ã½ºÅÛÀÇ ¾î¼Àºí¸®¾ð¾î·Î ÀÛ¼ºµÇ¾úÀ¸¸ç, ´ÜÀÏ »ç¿ëÀÚ È¯°æ¸¸À» Áö¿øÇÏ¿´´Ù. ±×ÈÄ 1970³â¿¡ À¯´Ð½º ¿î¿µÃ¼Á¦¸¦ B ¾ð¾î·Î ÀçÀÛ¼ºÀ» ÇÏ´Â °úÁ¤¿¡¼­ ´ÙÁß»ç¿ëÀÚ È¯°æÀÌ Áö¿øµÇ¾úÀ¸¸ç, Çϵå¿þ¾îµé°£ÀÇ À̽ļºÀ» ³ôÀ̱âÀ§ÇØ C ¾ð¾î·Î 1973³â¿¡ ÀçÀÛ¼ºµÇ±â¿¡ À̸£·¶´Ù. ¿À´Ã³¯ À¯´Ð½º°¡ ³Î¸® ¾Ë·ÁÁö°ÔµÈ °è±â´Â ¿©·¯°¡Áö°¡ ÀÖ°ÚÀ¸³ª ´ëÃæ ¿ä¾àÇÏ¸é ´ÙÀ½°ú °°´Ù. ù°, 70³â´ë Áß¹ÝÀÇ À¯´Ð½º ¶óÀ̼¾½º¸¦ ºñ¿µ¸®±â°ü¿¡ ºÎ¿© -- ´ëÇÐ¹× °ø°ø±â°ü¿¡ÀÇ ¶óÀ̼¾½º ºÎ¿©´Â º¸´Ù¸¹Àº »ç¿ëÀÚÃþ È®º¸ÀÇ °è±â°¡ µÇ¾ú´Ù. µÑ°, Ç¥ÁØÈ­µÈ ¸¶ÀÌÅ©·Î ÇÁ·Î¼¼¼­ÀÇ »ç¿ëÈ®´ë·Î ÀÎÇÑ Ç¥ÁØÈ­µÈ ¸¶ÀÌÅ©·Î ÄÄÇ»ÅÍÀÇ ¿î¿µÃ¼Á¦¿¡ ´ëÇÑ ¿ä±¸Áõ´ë -- Ç¥ÁØÈ­µÈ ¸¶ÀÌÅ©·Î ÄÄÇ»ÅÍ ¿î¿µÃ¼Á¦·Î¼­ CP/M, MS-DOS, UNIX µîÀÌ »ç¿ëµÇ¾úÀ¸³ª, Çϵå¿þ¾î ¼º´É Çâ»ó¿¡ µû¸¥ ±â´ÉÀ» Àü¹ÝÀûÀ¸ ·Î ¼ö¿ëÇÒ¼ö ÀÖ´Â À¯´Ð½º¿¡ ´ëÇÑ ¼ö¿ä°¡ Áõ´ë µÇ¾ú´Ù. ¼Â°, ±Þº¯ÇÏ´Â ³×Æ®¿÷ ±â¼ú¹ßÀü¿¡ ´ëÇÑ À¯´Ð½ºÀÇ ½Å¼ÓÇÑ ´ëÀÀ -- 80³â´ë¸¦ Áö³ª¿À¸ç ³×Æ®¿÷ ±â¼úÀÌ ºñ¾àÀûÀÎ ¹ßÀüÀ» °ÅµìÇß´Ù. À¯´Ð½º´Â ³×Æ®¿÷ ½Å±â¼ú¿¡´ëÇÑ ½Å¼ÓÇÑ Áö¿øÀ» ÇÔÀ¸·Î½á ³×Æ®¿÷ Áö¿ø ¿î¿µÃ¼Á¦·Î½á °¢±¤À» ¹Þ±â ½ÃÀÛÇß´Ù. ÀÌ»ó°ú °°Àº ¿äÀÎÀ¸·Î ÀÎÇØ À¯´Ð½º´Â Ç¥ÁØ ¿î¿µÃ¼Á¦·Î¼­ÀÇ ÁöÀ§°¡ È®¸³ µÇ±â¿¡ À̸£·¶´Ù. ´ÙÀ½Àº À¯´Ð½º ¿î¿µÃ¼Á¦ÀÇ ¹ßÀü°úÁ¤À» µµ½ÄÈ­ÇÑ °ÍÀÌ´Ù. ¦£¦¡¦¡¦¡¦¤ ¦£¦¡¦¡¦¡¦¤ ¦¢ AT&T ¦¢¦¡¦¡¦¡> ¦¢BSD ¦¢¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡> ¦¦¦¨¦¨¦¨¦¥ ¦¦¦¡¦¡¦¡¦¥ ¦¢¦¢¦¢ ¦£¦¡¦¡¦¡¦¤ ¦£¦¡¦¡¦¡¦¡¦¤ ¦¢¦¢¦¦¦¡¦¡¦¡¦¡> ¦¢SunOS ¦§¦¤ ¦£>¦¢SOLARIS ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡> ¦¢¦¢ ¦¦¦¡¦¡¦¡¦¥¦¢ ¦¢ ¦¦sun ¦¡¦¡¦¥ ¦£¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡ ¦¢¦¢ ¦£¦¡¦¡¦¡¦¤ ¦¢ ¦¢ ¦£¦¡¦¡¦¡¦¡> SVR4 MP RAS ¦¡¦¡¦¤ ¦¢¦¦¦¡¦¡> ¦¢XENIX ¦¢ ¦¡¦¡¦© ¦¢¦£> SVR4 MP ¦¦ncr ¦¡¦¥¦¢UnixWare> ¦¢ ¦¦¦¡¦¡¦¡¦¥ ¦¢ ¦¢¦¢ ¦¦unisys¦¥¦£¦¡¦¡¦¡¦¡>¦¦univel¦¥ ¦¢ ¦£¦¡¦¡¦¡¦¤ ¦£¦¡¦¡¦¡¦¤¦¢ ¦§¦ª¦¡¦¡¦¤ ¦£¦ª¦¡¦¡¦¤ ¦¦> ¦¢SVR2 ¦¢¦¡> SVR3 ¦§¦ª>¦¢SVR4 ¦¢¦¡>¦¢SVR4.2MP¦¡¦¡¦¡¦¡¦¡¦¡¦¡> ¦¦¦¡¦¨¦¡¦¥ ¦¦sequent ¦¦dg,pyramid ¦¦¦¡¦¡¦¡¦¥ ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡> ¦¢ ¦£¦¡¦¡¦¡¦¤ ¦£¦¡¦¡¦¡¦¤ ¦¦¦¡¦¡> ¦¢AIX:IBM >¦¢OSF//1:dec¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡> ¦¦¦¡¦¨¦¡¦¥ ¦¦¦¡¦¡¦¡¦¥ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡> À§ÀÇ µµÇ¥¿¡¼­ º¼¼ö ÀÖµíÀÌ À¯´Ð½º¿¡´Â ´Ù¾çÇÑ ¹öÀüµéÀÌ »ç¿ëµÇ°í Àֱ⿡, ÇâÈÄ À¯´Ð½º ¿î¿µÃ¼Á¦¿¡´ëÇÑ ÅëÇÕÀÛ¾÷¿¡ ´ëÇÑ ³ë·ÂÀÌ °¡¼ÓµÇ¾îÁú °ÍÀÔ´Ï´Ù. ===================================================================== ´ÙÀ½ °­ÀÇ´Â À¯´Ð½º ¿î¿µÃ¼Á¦ ( SVR4.0 ¹öÀü ±âÁØ )ÀÇ Æ¯Â¡¿¡ ´ëÇØ °­ÀÇ µå¸®°Ú½À´Ï´Ù. --------------------------------------------------------------------- #3 À¯´Ï½Ã½º (adunis2 ) À¯´Ð½º ¿î¿µÃ¼Á¦ÀÇ Æ¯Â¡ 01/26 17:07 117 line À¯´Ð½ºÀÇ ¿î¿µÃ¼Á¦ÀÇ Æ¯Â¡ -------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ»çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. -------------------------------------------------------------------- 1. À¯´Ð½º ¿î¿µÃ¼Á¦ÀÇ ÀϹÝÀû Ư¡ À¯´Ð½º°¡ °³¹ßµÇ¾úÀ» ´ç½Ã¸¸Çصµ ´Ù¸¥ ¿î¿µÃ¼Á¦µéÀº 󸮸¦ À§ÇÑ µ¥ÀÌŸÀÇ ÀÔ·ÂÀ», ÇѽËÁ¡¿¡ ¿ÀÁ÷ ÇÑ »ç¿ëÀÚ¿¡°Ô¸¸ Çã¿ëÇÏ°í, µ¥ÀÌŸ¸¦ ó¸®ÇÏ´Â µ¿¾È¿¡ ½Ã½ºÅÛ°úÀÇ ´Ù¸¥ »óÈ£ÀÛ¿ëÀ» ¾ïÁ¦ÇÏ´Â ´ÜÀÏ»ç¿ëÀÚ, ¹èÄ¡ ½Ã½ºÅÛ¸¸À» Áö¿øÇÏ°í ÀÖ¾ú´Ù. ÀÌ·¯ÇÑ »óȲÇÏ¿¡¼­ À¯´Ð½º ¿î¿µÃ¼Á¦´Â ´ÙÀ½°ú °°Àº Ư¡ÀûÀÎ ±â´ÉµéÀ» Á¦°øÇϰԵȴÙ. 1) ´ÙÁß»ç¿ëÀÚ È¯°æ ( Multiuser ) Å͹̳ηκÎÅÍ ÄÄÇ»ÅÍ¿Í Á÷Á¢ Åë½ÅÇÔÀ¸½á ½Ã½ºÅÛ ÀÚ¿øÀ» ¾ï¼¼½ºÇÏ´Â »ç¿ëÀÚ¸¦ ´Ù¼ö Çã¿ëÇÏ´Â ´ÙÁß »ç¿ëÀÚ ¿î¿µÃ¼Á¦ÀÌ´Ù. ÀÌ ±â´ÉÀº ½Ã½ºÅÛ ÀÚ¿ø ÀÌ¿ëµµ¸¦ Áõ°¡½ÃÅ°°í, ½Ã½ºÅÛ ºñ¿ëÀ» ÁÙ¿©ÁØ´Ù. 2) ´ÙÁßÀÛ¾÷ ȯ°æ ( Multitasking ) ´ÙÁßÀÛ¾÷ ȯ°æÀº »ç¿ëÀÚ¿¡°Ô ÇѽËÁ¡¿¡ ¿©·¯°³ÀÇ ÀÛ¾÷À» ½ÇÇàÇÏ´Â °ÍÀ» Çã¿ëÇÑ´Ù. »ç¿ëÀÚ°¡ µ¿½Ã¿¡ ¼öÇàÇÏ´Â ¿©·¯°³ÀÇ ÀÛ¾÷Áß, ÇϳªÀÇ ÀÛ¾÷¸¸ÀÌ Foreground¿¡¼­ ¼öÇàµÇ¸ç, ³ª¸ÓÁö ÀÛ¾÷Àº Background¿¡¼­ ¼öÇàµÈ´Ù. À¯´Ð½ºÀÇ ´ÙÁßÀÛ¾÷ ±â´ÉÀº »ç¿ëÀÚÀÇ »ý»ê¼º°ú È¿À²¼ºÀ» Áõ´ëÇÑ´Ù. 3) ȣȯ¼º ( Portability ) À¯´Ð½ºÀÇ Áß¿äÇÑ °­Á¡Àº ÇÑ Á¾·ùÀÇ ÄÄÇ»ÅͷκÎÅÍ ´Ù¸¥ Á¾·ùÀÇ ÄÄÇ»ÅÍ·Î À̵¿ÇÏ´Â ´É·Â Áï ȣȯ¼ºÀÌ´Ù. ÀÌ´Â ¿î¿µÃ¼Á¦ÀÇ ´ëºÎºÐÀÌ Æ¯Á¤ÀÇ Çϵå¿þ¾î¿¡ ÇÑÁ¤µÇÁö ¾Ê´Â Çü½ÄÀ¸·Î ÀÛ¼ºµÇ¾ú±â ¶§¹®¿¡ °¡´ÉÇÏ´Ù. ÀÌ Æ¯Â¡Àº Àû´çÇÑ ½Ã½ºÅÛÀ» °ø±ÞÇϱ⿡ ¾î·Á¿òÀ» °®°í ÀÖ´Â Çϵå¿þ¾î Á¦ÀÛ¾÷ü¿¡°Ôµµ ¸Å¿ì ¸Å·ÂÀûÀΠƯ¡ÀÌ µÈ´Ù. À¯´Ð½º´Â ´Ù¸¥ Çϵå¿þ¾î¿¡ äÅÃÇÒ¼ö ÀÖ´Â ÀϹÝÀûÀÎ ¿î¿µÃ¼Á¦¿¡ ´ëÇÑ ¼ö¿ä¸¦ ¸¸Á·½ÃŲ´Ù. ´õ¿í ÃÖ±Ù¿¡´Â ¼ÒÇÁÆ®¿þ¾î °³¹ßÀº À¯´Ð½º¿Í MS-DOS ¿î¿µÃ¼Á¦¸¦ µ¿ÀÏ ½Ã½ºÅÛ»ó¿¡ °øÁ¸ÇÒ¼ö ÀÖ°Ô²û ÇØÁØ´Ù. Ãʱ⿡ À¯´Ð½º´Â DEC ¹Ì´Ï ÄÄÇ»ÅÍ¿¡¼­¸¸ »ç¿ëµÇ¾ú´Ù. ÇöÀç ¸¶ÀÌÅ©·Î ÄÄÇ»ÅÍ¿¡¼­ºÎÅÍ ¸ÞÀÎ ÇÁ·¹ÀÓ±âÁ¾±îÁö žÀçÇÒ¼ö ÀÖ´Ù. ÀÌ´Â ¼ÒÇÁÆ®¿þ¾î ¾÷üµé¿¡°Ô ±×µéÀÇ ÇÁ·Î´öÆ®µéÀ» ´Ù¸¥ ¿î¿µÃ¼Á¦ ¾Æ·¡¿¡¼­ ½ÇÇàÇϱâ À§ÇÑ ºÎ°¡ÀûÀÎ Àüȯºñ¿ëÀ» ÁÙÀϼö ÀÖ´Ù´Â ÀÕÁ¡À» Á¦°øÇÑ´Ù. 4) °­·ÂÇÑ °³¹ßµµ±¸µé ( Powerful Development Tools ) À¯´Ð½º´Â »ç¿ëÀÚÀÇ ÀÛ¾÷À» ¼öÇàÇϱâ À§ÇØ, »ç¿ëÀÚ ÇÁ·Î±×·¥µé ¶Ç´Â »õ·Î¿î ¸í·É¾îµéÀ» »ý¼ºÇϱâ À§ÇØ °áÇÕ½ÃÅ°°í, °ÇÃà ±¸Á¶¹°°°ÀÌ »ç¿ëµÉ¼ö ÀÖ´Â ¼ö¹é°³ÀÇ À¯Æ¿¸®Æ¼ ÇÁ·Î±×·¥µéÀÇ ÁýÇÕÀ» °®°íÀÖ´Ù. À¯´Ð½º °³¹ßÁö¿ø µµ±¸µéÀÇ ´Ù¾ç¼º, Èû ¹× À¯¿¬¼ºÀº ÇÁ·Î±×·¡¸Ó¿¡°Ô ¾îÇø®ÄÉÀ̼ÇÀ» ¼³°èÇϴµ¥ À־ ¸Å·ÂÀûÀÎ ÀÕÁ¡À» Á¦°øÇÑ´Ù. À¯´Ð½º´Â ÇÁ·Î±×·¡¸Ó¿¡ÀÇÇØ ¼³°è¹× ÇÁ·Î±×·¡¸Ó¸¦ À§ÇØ ¼³°èµÈ ¿î¿µÃ¼Á¦ÀÌ´Ù. 2. À¯´Ð½º SVR4.0 ¹öÀüÀÇ Æ¯Â¡ À¯´Ð½º SVR4.0 ¹öÀüÀº À¯´Ï½Ã½º À¯´Ð½º ½Ã½ºÅÛÀÌ Ã¤ÅÃÇÏ°í ÀÖ´Â AT&T System V Release 4 ¹öÀüÀÌ´Ù. À¯´Ð½º SVR4.0ÀÇ ¼³°è ¸ñÇ¥´Â À¯´Ð½ºÀÇ 4´ë º¯Çüµé : AT&T, BSD, SunOS¿Í XENIX ¿î¿µÃ¼Á¦ : °ú ¾ç¸³µÉ¼ö ÀÖ°í, À¯´Ð½ºÀÇ Áß¿äÇÑ º¯ÇüµéÀ» »ê¾÷Ç¥ÁØÀ» µû¸£´Â ÇϳªÀÇ ÇÁ·Î´öÆ®·Î ÅëÀÏÇϴµ¥ ÀÖ´Ù. ¦£¦¡¦¡¦¡¦¡¦¤ ¦£¦¡¦¡¦¡¦¡¦¤ ¦¢ BSD ¦§¦¡¦¡¦¤ ¦£¦¡¦¡¦¡¦© SunOS ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¥ ¦¢ ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¥ ¦£¦¡¦¡¦¡¦¡¦¤ ¦¢ ¦¢ ¦£¦¡¦¡¦¡¦¡¦¤ ¦¢ AT&T ¦§¦¡¦¤¦¢ ¦¢ ¦£¦¡¦© XENIX ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¥ ¦¢¦¢ ¦¢ ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¥ ¦¢¦¢ ¦¢ ¦¢ ¦£¦¡¦¡¦ª¦ª¦¡¦ª¦¡¦ª¦¡¦¡¦¤ ¦¢ SVR 4.0 UNIX ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ 1) ´Ù¸¥ À¯´Ð½º ¹öÀü°ú ´ëºñµÇ´Â UNIX 4.0 ÀÇ Æ¯Â¡ (1) ¸í·É¾î ¿©·¯°¡ÁöÀÇ »õ·Î¿î, ¼öÁ¤µÈ ¶Ç´Â °³¼±µÈ ¸í·É¾îµéÀÌ BSD, SunOS, XENIX·ÎºÎÅÍ °áÇÕÇÏ¿´´Ù. º»·¡ÀÇ ¸í·É¾î±ºÀ¸·ÎºÎÅÍ Æ÷ÇÔµÇÁö¾ÊÀº ¸í·É¾îµéÀº BSD¿Í SunOS¸¦ À§ÇÑ È£È¯ ÆåÅ°ÁöµéÀ» ÅëÇÏ¿© ¾ï¼¼½º µÉ¼ö ÀÖ´Ù. (2) ºÎ°¡ÀûÀÎ ÀÎÅÍÆäÀ̽º . Shell ShellÀº ¿î¿µÃ¼Á¦·ÎÀÇ »ç¿ëÀÚ ÀÎÅÍÆäÀ̽ºÀÌ´Ù. À¯´Ð½º 4.0 ¹öÀü ÀÌÀüÀÇ ¹öÀü¿¡¼­´Â »ç¿ëÀÚ¸¦ À§ÇØ µÎ°¡ÁöÀÇ Shell , Áï Bourne °ú C ShellÀ» Á¦°øÇß´Ù. ÇöÀç´Â Korn°ú Job Shell µÎ°¡Áö¸¦ Ãß°¡·Î »ç¿ëÇÒ¼ö ÀÖ´Ù. . »ç¿ëÀÚ ÀÎÅÍÆäÀ̽º FACE ( Framed Access Command Environment )´Â ½Ã½ºÅÛ °ü¸® ¾÷¹«¿Í °°Àº ±âº»ÀûÀÎ »ç¿ëÀÚ ÀÛ¾÷À» ¼öÇàÇϱâ À§ÇÑ ¸Þ´º ¼±ÅÃ½Ä ( Menu-driven ) ÀÎÅÍÆäÀ̽ºÀÌ´Ù. À¯´Ð½º 4.0Àº ÀÌ ÀÛ¾÷¹æ½ÄÀ» Áö¿øÇÑ´Ù. (3) °¡»ó È­ÀÏ ½Ã½ºÅÛ ( Virtual File System ) È­ÀÏ ½Ã½ºÅÛÀº È­ÀÏ°ú µð·ºÅ丮µéÀÇ Á¶Á÷È­µÈ ÁýÇÕüÀÌ´Ù. À¯´Ð½º 4.0 ¹öÀü ÀÌÀü¿¡´Â ÇϳªÀÇ È­ÀϽýºÅÛÀÌ Á¸ÀçÇß´Ù. °¡»ó È­ÀÏ ½Ã½ºÅÛ ¾ÆÅ°ÅØÃÄ´Â ÇÑ ½Ã½ºÅÛ³»¿¡ º¹¼ö°³ÀÇ ´Ù¸¥ È­ÀÏ ½Ã½ºÅÛ Á¾·ù°¡ °øÁ¸ÇÒ¼ö ÀÖ°Ô²û ÇØÁØ´Ù. ÀÌ ±â´ÉÀº BSD °è¿­ÀÇ À¯´Ð½º·Î ºÎÅÍ ¿Â ±â´ÉÀÌ´Ù. (4) ÇÒ´ç ( Quota ) »ç¿ëÀÚ µð½ºÅ© »ç¿ë·®À» ÇÒ´ç ¹æ½Ä¿¡( Quota mechanism ) ÀÇÇØ Á¦ÇÑ ÇÒ¼öÀÖ´Ù. ÀÌ ±â´ÉÀº ½Ã½ºÅÛ °ü¸®ÀÚ¿¡ ÀÇÇØ À¯Áöº¸¼öµÈ´Ù. »ç¿ëÀÚ´Â ÀÌ ±â´ÉÀÌ µðÆúÆ®·Î (ÀÚµ¿ÀûÀ¸·Î) ±âµ¿µÊÀ» ÁÖÀÇÇØ¾ß ÇÑ´Ù, ±×·¯³ª »ç¿ë·® ÇÑ°è¿¡ µµ´ÞµÇ¾ú´Ù´Â »ç¿ëÀÚ¿¡°Ô ¿¡·¯ ¸Þ¼¼Áö¸¦ Á¦°øÇÏÁö ¾Ê´Â´Ù. (5) º¸¾È ( Security ) Àü¹ÝÀûÀÎ ½Ã½ºÅÛ º¸¾ÈÀÇ À¯Áö °ü¸®´Â ±âº»ÀûÀ¸·Î ½Ã½ºÅÛ °ü¸®ÀÚÀÇ Ã¥ÀÓÀÌ´Ù. À¯´Ð½º 4.0Àº Audit trailing°ú Æнº¿öµå ±×¸®°í ¾ï¼¼½º ÀÚ°Ý ( Permission )ÀÇ º¯°æ±â´ÉÀ» ÅëÇÏ¿© º¸¾ÈÁ¤µµ¸¦ °³¼±Çß´Ù. ===================================================================== ´ÙÀ½ °­ÀÇ´Â À¯´Ð½º ¿î¿µÃ¼Á¦ ( SVR4.0 ¹öÀü ±âÁØ )ÀÇ ±¸¼º ¿ä¼Ò¿Í Ư¡¿¡ ´ëÇØ °­ÀÇ µå¸®°Ú½À´Ï´Ù. --------------------------------------------------------------------- #4 À¯´Ï½Ã½º (adunis2 ) À¯´Ð½º ¿î¿µÃ¼Á¦ÀÇ ±¸¼º¿ä¼Ò¹× Ư¡ 01/26 17:08 121 line À¯´Ð½º ¿î¿µÃ¼Á¦ÀÇ ±¸¼º¿ä¼Ò¹× Ư¡ -------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ»çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. -------------------------------------------------------------------- À¯´Ð½ºÀÇ ±¸¼º¿ä¼Ò À¯´Ð½º ½Ã½ºÅÛÀº Kernel, Shell, Command¶ó´Â 3°³ÀÇ Áß¿äÇÑ ±¸¼º¿ä¼Ò¸¦ °®°íÀÖ´Ù. °¢°¢ÀÇ ±¸¼º¿ä¼Ò¿¡ ´ëÇÏ¿© ¾Ë¾Æº»´Ù. 1. Ä¿³Î ( Kernel ) Ä¿³ÎÀº ½Ã½ºÅÛ ºÎÆÃÀÌ µÇ¾îÁú¶§ ¸Þ¸ð¸®³»¿¡ À§Ä¡(Load) µÇ¾îÁö´Â ÇÁ·Î±×·¥ÀÌ´Ù. Ä¿³ÎÀº ¸Þ¸ð¸® °ü¸®, ÇÁ·Î¼¼¼­ ½Ã°£ ÇÒ´ç, ÀÔ·Â¹× Ãâ·ÂÀÇ Á¦¾î¸¦ ¼öÇàÇÔÀ¸·Î ÀÎÇØ ¿î¿µÃ¼Á¦ÀÇ °ü¸®ÀÚ ¶Ç´Â ÇÙ½ÉÀ̶ó ºÒ¸®¿î´Ù. Ä¿³ÎÀº »ç¿ëÀÚ°¡ Á÷Á¢ÀûÀ¸·Î Á¦¾î¸¦ ÇÒ¼ö ¾ø´Ù. 2. ½© ( Shell ) ½© ÇÁ·Î±×·¥Àº ·Î±×Àνÿ¡ °¢°¢ÀÇ »ç¿ëÀÚ¿¡ ´ëÇØ °³½ÃµÇ°í, ¸í·É¾î ½ÇÇàÀ» ÃʱâÈ­ÇÏ°í ¹ø¿ªÇÔ¿¡ÀÇÇØ Ä¿³Î°ú »ç¿ëÀÚ »çÀÌÀÇ ÀÎÅÍÆäÀ̽º ¿ªÇÒÀ» ¼öÇàÇÑ´Ù. SVR 4.0 ¹öÀü¿¡¼­´Â Bourne, C, Korn, Job shellÀÌ ÀÌ¿ë°¡´ÉÇÏ´Ù. ShellÀº ½Ã½ºÅÛ °ü¸®ÀÚ°¡ »ç¿ëÀÚ¸¦ ½Ã½ºÅÛ¿¡ µî·ÏÇÏ¿´À»¶§ »ç¿ëÀÚ¿¡ ÇÒ´çµÈ´Ù. °ü¸®ÀÚ´Â ¾ðÁ¦µç »ç¿ëÀÚÀÇ ½©À» º¯°æÇÒ ¼ö ÀÖ´Ù. Bourne shellÀÌ UNIX 4.0 ¹öÀü¿¡¼­ Ç¥ÁØ ½©ÀÌ´Ù. ½©Àº ¶ÇÇÑ ¾îÇø®ÄÉÀ̼ÇÀ» ¼³°èÇϰųª »õ·Î¿î ¸í·É¾î¸¦ »ý¼ºÇÒ ¼ö ÀÖ´Â ÇÁ·Î±×·¡¹Ö ¾ð¾îÀÌ´Ù. 3. ¸í·É¾î ( Command ) ¸í·É¾î´Â »ç¿ëÀÚ ÀÛ¾÷(Task)¸¦ ¼öÇàÇÏ´Â ÇÁ·Î±×·¥ÀÌ´Ù. ¸í·É¾î´Â »ç¿ëÀÚ°¡ ½Ã½ºÅÛ¿¡ ÀÛ¾÷À» ¼öÇàÇϱâ À§ÇÑ ÀÏÁ¾ÀÇ µµ±¸ ¿ªÇÒÀ» ¼öÇàÇÑ´Ù. À¯´Ð½º´Â »õ·Î¿î ¸í·É¾î¸¦ »ý¼ºÇϱâ À§ÇØ º¹Çյɼö ÀÖ´Â ¼ö¹é°³ÀÇ ¸í·É¾î¸¦ Á¦°øÇÑ´Ù. MAPPER¿Í Oracle°°Àº ¾îÇø®ÄÉÀÌ¼Ç ÇÁ·Î±×·¥Àº ½©À» ÅëÇÏ¿© ¾ï¼¼½ºµÉ ¼ö ÀÖ´Ù. À¯´Ð½ºÀÇ ±¸¼º¿ä¼Òµé °£ÀÇ ¿¬°ü °ü°è¸¦ ±×¸²À¸·Î½á ¼³¸íÇغ¸¸é ´ÙÀ½°ú °°½À´Ï´Ù. (5) ¦£¦¡¦¡¦¡¦¡¦¤ ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© µð½ºÅ© ¦§¦¡¦¤ ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¥ ¦¢ (1) ¦¢ (2) (3) (4) (6) ¦¢ (7) ¸í·É¾î ->¦¢¸í·É¾î -> ¸í·É¾î -> ¸í·É¾î -> ½ÇÇà¿ä±¸¦¢-> ÇÁ·Î±×·¥ÀÇ ¦¡¦¤ ¶óÀÎ ¦¢¶óÀÎ ¶óÀÎ ÇÁ·Î±×·¥ ¦¢ Load ¦¢ ÀÔ·Â ¦¢°Ë»ç ºÐ¼® °Ë»ö ¦¢ ¦¢ ¦¢ ¦¢ (8) ¦¢ ¦¢ ¦¢ ¦¢ ÇÁ·Î±×·¥ÀÇ <¦¡¦¥ ¦¢ ¦¢ ¦¢ ½ÇÇà ¦¡¦¡¦¤ ¦¢ ¦¢ (10) ¦¢ ¦¢ ¦¢ ¦¢ °á°ú Ãâ·Â¹× ÇÁ·ÒÇÁÆ® Àü¼Û ¦¢ (9) ¦¢ ¦¦¦¡ ¦¢< ¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡ ¦¢ Ãâ·Â »ý¼º <¦¡¦¥ ¦¢ ¦¢ <¦¡¦¡¦¡> ¦¢ < ¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡> ¦¢ < ¦¡¦¡¦¡¦¡¦¡¦¡> ¸í·É¾î ½© Ä¿³Î À§¿¡¼­ »ç¿ëÇÑ ¸í·É¾î ¶óÀÎÀ̶ó´Â ¿ë¾î´Â »ç¿ëÀÚ ÀԷ³»¿ëÀÌ ±â¼úµÇ¾î ÀÖ´Â ¸ð´ÏÅÍ»óÀÇ ÇÁ·ÒÇÁÆ®ºÎÅÍ returnÅ°¸¦ ÀÔ·ÂÇÑ °÷±îÁö¸¦ ÀǹÌÇÕ´Ï´Ù. ´ÙÀ½Àº °¢ ±¸¼º¿ä¼Ò¿¡ ÀÇÇØ Ã³¸®µÇ´Â °¢°úÁ¤¿¡ ´ëÇÑ ¼³¸íÀÔ´Ï´Ù. (1) ¸í·É¾î ÀÔ·Â À¯´Ð½º ¸í·É¾î ¶óÀÎÀº ÀÏÁ¤ÇÑ Çü½ÄÀ» °®°í Àִµ¥ ´ÙÀ½°ú °°´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$ ¸í·É¾î_À̸§ [¿É¼Ç] [¸í·É¾î ÀÎÀÚ (Arguments)] ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ À§ Çü½ÄÁß []À¸·Î µÑ·¯½×ÀÎ ¿ä¼Ò´Â »ý·« °¡´ÉÇÔÀ» ÀÇ¹Ì ÇÕ´Ï´Ù. (2) ¸í·É¾î ¶óÀÎ °Ë»ç ÀÌ ´Ü°è¿¡¼­´Â »ç¿ëÀÚ·Î ºÎÅÍ ÀԷµǾîÁø ¸í·É¾î ¶óÀο¡ ´ëÇØ ±× ±¸¼º Çü½ÄÀ» °Ë»çÇÕ´Ï´Ù. (3) ¸í·É¾î ¶óÀÎ ºÐ¼® À¯´Ð½º ½©Àº »ç¿ëÀÚ°¡ ÀÚ½ÅÀÇ ÀÛ¾÷À» Æí¸®ÇÏ°Ô ÇÒ¼ö ÀÖµµ·Ï ÇϱâÀ§ÇØ ÀÛ¾÷ȯ°æ ÀçÁ¤ÀǸ¦ À§ÇÑ ½©º¯¼ö (¿¹: PATH, TERM µî), ÀÛ¾÷ÀÇ ¿øÇÒÇÑ ¼öÇàÀ» À§ÇÑ Æ¯¼ö ¹®ÀÚ (Special Character : *,<,>µî) µîÀ» Áö¿øÇÕ´Ï´Ù. ÀÌ ´Ü°è¿¡¼­´Â ¸í·É¾î ¶óÀÎ»ó¿¡ »ç¿ëµÇ°í ÀÖ´Â ½©º¯¼ö, Ư¼ö¹®ÀÚ¸¦ ó¸®ÇÏ´Â ÀÛ¾÷À» ¼öÇàÇÕ´Ï´Ù. ¿¹¸¦ µé¾î ¼³¸íÇÏ¸é ´ÙÀ½°ú °°½À´Ï´Ù. ( Âü°í·Î MS-DOS ¸í·É¾îÁß µð·ºÅ丮ÀÇ ³»¿ëÀ» È®ÀÎÇϱâ À§ÇÑ dir¸í·É¾î¿Í µ¿ÀÏÇÑ À¯´Ð½º ¸í·É¾î°¡ ls ¸í·É¾îÀÔ´Ï´Ù. ) ¦£¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $ls *.c ¦¢ ÇöÀç µð·ºÅ丮³»¿¡ ÀÖ´Â ¦¦¦¡¦¡¦¨¦¡¦¡¦¥¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ È­ÀÏÁß È®ÀåÀÚ°¡ cÀΰÍÀ¸·Î ¦¦¦¡¦¡¦¡¦©$ls a.c b.c c.c d.c ¦¢ *.c·Î ÁöÁ¤ÇÑ ÀÎÀÚ(arguments) ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¸¦ º¯È¯ÇÕ´Ï´Ù. (4) ¸í·É¾î ÇÁ·Î±×·¥À» µð½ºÅ©³»¿¡¼­ °Ë»ö »ç¿ëÀÚ°¡ ÁöÁ¤ÇÑ ¸í·É¾îµµ ÇϳªÀÇ ÇÁ·Î±×·¥À̱⠶§¹®¿¡, ÀÌ ¸í·É¾î ÇÁ·Î±×·¥ÀÌ »çÀü¿¡ µð½ºÅ©»ó¿¡ Á¸ÀçÇØ¾ß ÇÕ´Ï´Ù. ÀÌ ´Ü°è¿¡¼­´Â ¸í·É¾î¿¡ »óÀÀÇÏ´Â ÇÁ·Î±×·¥ÀÇ Á¸Àç ¿©ºÎ¸¦ È®ÀÎÇÏ´Â °úÁ¤ÀÔ´Ï´Ù. Âü°í·Î ÇÁ·Î±×·¥À» ã±âÀ§ÇØ µð½ºÅ©ÀÇ Ã³À½ºÎÅÍ ³¡±îÁö¸¦ °Ë»öÀ»ÇÑ´Ù¸é ½Ã½ºÅÛ¿¡ ¸¹Àº ºÎÇÏ°¡ °É·Á ½Ã½ºÅÛ È¿À²¼ºÀÌ ¶³¾îÁú°Ì´Ï´Ù. ÀÌ·¯ÇÑ ´ÜÁ¡À» ÇؼÒÇϱâÀ§ÇØ À¯´Ð½º¿¡¼­´Â ¸í·É¾îµéÀ» ƯÁ¤ÀÇ µð·ºÅ丮³»¿¡ ¸ð¾ÆµÎ°í Àִµ¥ ÀÌ·¯ÇÑ µð·ºÅ丮µéÀ» ½©¿¡°Ô »çÀü¿¡ ¾Ë·ÁÁÖ¾î¾ß Çϴµ¥ À̶§ »ç¿ëÇÏ´Â °ÍÀÌ PATH¶ó´Â ½©º¯¼öÀÔ´Ï´Ù. ¿¹) $PATH=.:/bin:/usr (5) (6) (7) (8) (9) Àü´Ü°è¿¡¼­ »ç¿ëÀÚ°¡ ¿ä±¸ÇÑ ¸í·É¾î ÇÁ·Î±×·¥ÀÇ Á¸À縦 È®ÀÎÇÏ°Ô µÇ¸é ½©Àº ÇÁ·Î±×·¥ÀÇ ½ÇÇà¿ä±¸¸¦ Ä¿³Î¿¡ º¸³»°Ô µË´Ï´Ù. ±×·¯¸é Ä¿³ÎÀº ÇØ´çµÇ´Â ¸í·É¾î ÇÁ·Î±×·¥À» µð½ºÅ©·ÎºÎÅÍ ¸Þ¸ð¸®·Î load ÇÏ¿© ½ÇÇàÀ» °³½ÃÇϴµ¥ ÀÌ°úÁ¤¿¡¼­ ½©·ÎºÎÅÍ ¸í·É¾î ¶óÀÎ»ó¿¡ °°ÀÌ ÁöÁ¤ÇÑ ¿É¼Ç°ú ÀÎÀÚµéÀ» Àü´Þ¹Þ°Ô µË´Ï´Ù. À̵éÀ» ÀÌ¿ëÇÏ¿© ¼öÇàÇÏ°ÔµÇ¸é ½ÇÇà°á°ú Áï Ãâ·ÂÀÌ »ý¼ºµÇ´Âµ¥ À̸¦ ½©¿¡°Ô Àü´Þ ÇÏ¿© Àü¼ÛÀ» ÇϰԵ˴ϴÙ. (10) ½©Àº Ä¿³Î·ÎºÎÅÍ Àü´Þ¹ÞÀº Ãâ·Â°ú »ç¿ëÀÚ°¡ »õ·Î¿î ¸í·É¾î¸¦ ÀÔ·ÂÇÒ¼ö ÀÖµµ·ÏÇϱâÀ§ÇØ ÇÁ·ÒÇÁÆ®¸¦ ÇØ´ç »ç¿ëÀÚ¿¡°Ô º¸³»ÁÖ°Ô µË´Ï´Ù. ===================================================================== ´ÙÀ½ °­ÀÇ´Â À¯´Ð½º ½Ã½ºÅÛÀÇ ·Î±×ÀÎ ¹æ½Ä°ú À¯´Ð½º ¸í·É¾îÀÇ ±¸¼ºÇü½Ä¿¡ ´ëÇØ °­ÀÇ µå¸®°Ú½À´Ï´Ù --------------------------------------------------------------------- #5 À¯´Ï½Ã½º (adunis2 ) À¯´Ð½º ·Î±×Àΰú À¯´Ð½º ¸í·É¾îÀÇ Æ¯Â¡ 01/26 17:10 143 line À¯´Ð½º ·Î±×Àΰú À¯´Ð½º ¸í·É¾îÀÇ Æ¯Â¡ -------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ»çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. -------------------------------------------------------------------- 1. À¯´Ð½º¸¦ ÀÌ¿ëÇÑ ÀÛ¾÷ÀÇ ½ÃÀÛ À¯´Ð½º ½Ã½ºÅÛÀ» »ç¿ëÇÏ¿© ÀÛ¾÷À» ¼öÇàÇϱâ À§Çؼ­´Â ¿ì¼± ·Î±×ÀÎ(Login) À̶ó´Â °úÁ¤À» ¼öÇàÇØ¾ß ¸¸ ÇÑ´Ù. ´ÙÀ½Àº ·Î±×ÀÎ °úÁ¤ÀÇ Æ¯Â¡ÀÌ´Ù. 1) Logname( »ç¿ëÀÚ ½Äº°¸í ) »ç¿ëÀÚ°¡ À¯´Ð½º¸¦ »ç¿ëÇϱâÀü¿¡ , ½Ã½ºÅÛ °ü¸®ÀÚ°¡ ºÎ¿©ÇÑ Logname À» ÀÔ·ÂÇÔÀ¸·Î½á À¯´Ð½º ¿î¿µÃ¼Á¦¿¡ ÀÚ½ÅÀ» ¹àÇôÁÖ¾î¾ß ÇÑ´Ù. À¯´Ð½º´Â ¸ðµç ½Ã½ºÅÛ »ç¿ëÀڵ鿡 °üÇÑ Á¤º¸¸¦ º¸°üÇÏ´Â /etc/passwd ¶ó´Â Ư¼ö È­ÀÏÀ» °®´Â´Ù. ÀÌ È­ÀÏ¿¡ µî·ÏµÈ »ç¿ëÀÚ¸¸ÀÌ À¯´Ð½º¸¦ ¾ï¼¼½º ÇÒ¼ö ÀÖ´Ù. ÀÌ´Â À¯´Ð½º º¸¾ÈÀ¯Áö¸¦ À§ÇÑ °ÍÀÌ´Ù. ´Ü¸»ÀÌ À¯´Ð½º ½Ã½ºÅÛ°ú ¿¬°áµÇ¾úÀ»¶§ ·Î±×ÀÎ ÇÁ·ÒÇÁÆ®°¡ Ç¥½ÃµÇ´Âµ¥, À̶§ ¼Ò¹®ÀÚÀÇ logname°ú ¿£ÅÍÅ°¸¦ ÀÔ·ÂÇÑ´Ù. À¯´Ð½º´Â ´ë¼Ò¹®ÀÚ¿¡ ´ëÇØ ¹Î°¨ÇÏ°Ô ¹ÝÀÀÇϱ⠶§¹®¿¡, ·Î±×ÀÎ ÇÁ·ÒÇÁÆ®¿¡¼­ ´ë¹®ÀÚ¸¦ »ç¿ëÇÏ°Ô µÇ¸éÀº ÇØ´ç ´Ü¸»ÀÌ ´ë¹®ÀÚ¸¸À» Ç¥½ÃÇÒ¼ö ÀÖ´Â ´Ü¸»ÀÓÀ» ³ªÅ¸³»°Ô µÇ¾î, ÀÌÈÄÀÇ ÀÛ¾÷À» º¸ÀåÇÏÁö ¸øÇÑ´Ù. ¶ÇÇÑ lognameÀ» ÀÔ·ÂÇÒ¶§ °ø¹é¹®ÀÚ¸¦ Æ÷ÇÔÇÏÁö ¾Ê´Â´Ù. 2) Æнº¿öµå( Password ) µî·ÏµÈ lognameÀ» ÀÌ¿ëÇÏ¿© óÀ½À¸·Î ·Î±×ÀÎÀ» ¼öÇàÇÒ °æ¿ì¿¡ ½Ã½ºÅÛÀº Æнº¿öµå¸¦ ¼³Á¤ÇÒ°ÍÀ» ¿ä±¸ÇÑ´Ù. ( Æнº¿öµå °ü·Ã ¸í·ÉÀÎ passwd ¸í·É¾î´Â ÀÌÈÄ¿¡ ´Ù½Ã¼³¸íÇÑ´Ù. ) Æнº¿öµå¸¦ ¼³Á¤ÇÒ¶§¿¡´Â ´ÙÀ½ÀÇ ±ÔÄ¢À» µû¸¥´Ù. 1. Æнº¿öµå´Â ±æÀÌ°¡ ÃÖ¼Ò 6-8 ¹®ÀÚÀ̾î¾ß ÇÑ´Ù. Æнº¿öµåÀÇ Á¤È®ÇÑ ±æÀÌ´Â /etc/default/passwd È­ÀÏ¿¡ Á¤ÀǵǾî ÀÖ´Ù. 2. Æнº¿öµå´Â ÃÖ¼Ò 2°³ÀÇ ¿µ¹®ÀÚ¿Í 1°³ÀÇ ¼ýÀÚ ¶Ç´Â Ư¼ö¹®ÀÚ¸¦ Æ÷ÇÔÇؾ߸¸ ÇÑ´Ù. 3. Æнº¿öµå´Â ¹Ýµå½Ã logname°ú ´Þ¶ó¾ß ÇÑ´Ù. lognameÀ» ¿ª¼øÀ¸·Î Çϰųª, ¹®ÀÚ ¼ø¼­ÀÇ º¯È­µîÀº ÀϹÝÀûÀ¸·Î Çã¿ëµÇÁö ¾Ê´Â´Ù. Æнº¿öµå¸¦ ÀÔ·ÂÇÑÈÄ returnÅ°¸¦ ÀÔ·ÂÇϸé, Æнº¿öµå¸¦ ÀçÀÔ·ÂÇÒ°ÍÀ» ¿ä±¸ÇÏ´Â ÇÁ·ÒÇÁÆ®°¡ Ç¥½ÃµÈ´Ù. µÎ¹øÀÇ Æнº¿öµå ³»¿ëÀº ÀÏÄ¡ÇØ¾ß Çϴµ¥, Ʋ¸± °æ¿ì ÀçÀÔ·ÂÀ» ¿ä±¸ÇÏ´Â ¸Þ¼¼Áö°¡ Ç¥½ÃµÈ´Ù. ¸¸¾à ÀÔ·ÂÇÑ Æнº¿öµå°¡ Àü¼úµÈ ±ÔÄ¢¿¡ ¾î±ß³ª´Â °æ¿ì¿¡´Â ±×¿¡ »óÀÀÇÏ´Â ¸Þ¼¼Áö°¡ Ç¥½ÃµÈ´Ù. ½Ã½ºÅÛÀÌ /etc/passwd È­ÀÏÀÇ logname°ú /etc/shadow È­ÀÏÀÇ Æнº¿öµå¸¦ °ËÁõÇÔÀ¸·Î ÀÎÇØ ÈÄ¼Ó ÀÛ¾÷ ÁøÇàÀÌ ´Ê¾îÁú¼öµµ ÀÖ´Ù. 3. Shell command ÇÁ·ÒÇÁÆ® ¼º°øÀûÀÎ ·Î±×ÀÎ ¼öÇàÈÄ¿¡´Â, Á÷ÀüÀÇ ·Î±×ÀÎ ³¯Â¥/½Ã°£, ÆDZǰü·Ã Á¤º¸, µð½ºÅ© »ç¿ë Á¤º¸, ¸ÞÀÏ °ü·Ã»çÇ×, ´º½º °ü·Ã»çÇ׿¡ ´ëÇÑ »çÇ×ÀÌ µé¾îÀÖ´Â ¸Þ¼¼ÁöµéÀÌ Ç¥½ÃµÈ´Ù. ÀÌ ¸Þ¼¼ÁöµéÀº Ãʱ⠻ç¿ëÀÚ È¯°æÀ» Á¤ÀÇÇÏ°í ÀÖ´Â /etc/profileÀÌ ½ÇÇàµÊÀ¸·Î½á Ç¥½ÃµÈ´Ù. ÀÌ È­ÀÏÀº °¢°¢ÀÇ »ç¿ëÀÚº°·Î ´Ù¸£°Ô ÀçÁ¤ÀÇÇÒ ¼ö ÀÖ´Ù. ¸¶Áö¸·À¸·Î ½© ¸í·É¾î Çص¶±â°¡ (Shell Command Interpreter ) ¸í·É¾î Çü½ÄÀÇ »ç¿ëÀÚ ÀÔ·ÂÀ» ±â´Ù¸°´Ù´Â ÀǹÌÀÇ ½© ÇÁ·ÒÇÁÆ®°¡ (Åë»ó $°¡ »ç¿ëµÈ´Ù.) Ç¥½ÃµÈ´Ù. ´ÙÀ½Àº À¯´Ð½º ·Î±×ÀÎ °úÁ¤À» º¸¿©ÁÖ´Â ±×¸²ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ login: kdwlog1 ¦¢ ¦¢ passwd: _ ¦¢ ¦¢ II ¦¢ ¦¢ U U N N SSSS Y Y SSSS ¦¢ ¦¢ U U N N N II S Y Y S ¦¢ ¦¢ U U N NN II S Y S ¦¢ ¦¢ UuU N N II SSSSS Y SSSSS ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ Last login : 1996. 1. 22. 16:10:5 ¦¢ ¦¢ You have mail ¦¢ ¦¢ new item ¦¢ ¦¢ item1 item2 ¦¢ ¦¢ $_ ¦¢ ¦¢ ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ 2. UNIX Command À¯´Ð½º´Â »ç¿ëÀÚ°¡ ¼Õ½±°Ô »ç¿ë°¡´ÉÇÑ ¼ö¹é°³ÀÇ ¸í·É¾î¸¦ Á¦°øÇÑ´Ù. ¸í·É¾î´Â ½© ÇÁ·ÒÇÁÆ®¿¡¼­ ÀϹÝÀûÀÎ Çü½ÄÀ¸·Î ÀԷµȴÙ. returnÅ°ÀÇ ÀÔ·ÂÀº ¸í·É¾îÀÇ ³¡ÀÓÀ» ¾Ë¸°´Ù. ±×·¯¸é ½©Àº ¸í·É¾îÀÇ °¢ ¿ä¼ÒµéÀ» È®ÀÎÇÏ°í, Àû´çÇÑ ÇൿÀ» ÃëÇÑ´Ù. ¿©±â¼­ Àû´çÇÑ ÇൿÀº ¸í·É¾î ÇÁ·Î±×·¥À» ½ÇÇàÇÏ´Â °Í ¶Ç´Â ¿¡·¯ ¹ß»ý½Ã ¸Þ¼¼Áö¸¦ Ç¥½ÃÇÏ´Â °ÍÀ» ÀǹÌÇÑ´Ù. 1. ¸í·É¾î ¶óÀÎÀÇ ±¸¼º¿ä¼Ò ÇϳªÀÇ ¸í·É¾î ¶óÀÎÀº ¸í·É¾î À̸§¸»°íµµ ´ÙÀ½°ú °°Àº Á¤º¸¸¦ °®À»¼ö ÀÖ´Ù. . ¿É¼Ç ¸í·É¾îÀÇ ¿É¼ÇÀº ¸í·É¾îÀÇ ÀÛ¾÷ ³»¿ëÀ» ¼öÁ¤ÇÑ´Ù. ¿É¼ÇÀº Åë»ó -(dash)°¡ ¾Õ¿¡ Ç¥½ÃµÈ´Ù. ´ëºÎºÐ º¹¼ö°³ÀÇ ¿É¼ÇÀº ÇϳªÀÇ -(dash)¿¡ ÀÇÇØ Á¶ÇÕÇÏ¿© »ç¿ëµÉ ¼ö ÀÖ´Ù. . ÀÎÀÚ (Arguments) ¸í·É¾îÀÇ ÀÎÀÚ´Â È­ÀÏ¸í ¶Ç´Â ¸í·É¾î¿¡ Á¦°øÇÏ´Â ¾à°£ÀÇ Á¤º¸°¡ ´ëÇ¥ÀûÀÌ´Ù. ¸î¸îÀÇ ¸í·É¾îµéÀº º¹¼ö°³ÀÇ ÀÎÀÚ¸¦ ¿ä±¸ÇÏ°í, ¶Ç´Ù¸¥ ¸í·É¾îµéÀº ÀüÇô ¿ä±¸ÇÏÁö ¾Ê´Â´Ù. ¿É¼Ç ¶Ç´Â ÀÎÀÚµéÀÌ µÚµû¸£´Â ¸í·É¾î¸¦ ¸í·É¾î ¶óÀÎÀ̶ó ºÎ¸¥´Ù. ¸í·É¾î ¶óÀÎÀÇ ±¸¼º¿ä¼Ò´Â ´ÙÀ½°ú °°Àº ¼ø¼­·Î ³ªÅ¸³­´Ù. $command [-options] [arguments] À¯´Ð½º ¸í·É¾î ¶óÀÎÀº ´ÙÀ½°ú °°Àº Ư¡À» °®´Â´Ù. . °ø¹éÀ̳ª ÅÇÀº °¢°¢ÀÇ ¸í·É¾î ¶óÀÎ ±¸¼º¿ä¼Ò¸¦ ±¸º°ÇÑ´Ù. ºñ·Ï ¸í·É¾î ¶óÀο¡ º¹¼ö°³ÀÇ °ø¹éÀ̳ª ÅÇÀÌ »ç¿ëµÇ¾ú´Ù ÇÏ´õ¶óµµ, À̵éÀº ½©ÀÌ ¸í·É¾î ¶óÀΠó¸®Áß¿¡ ¹«½ÃµÈ´Ù. . return Å°´Â ¸í·É¾î ¶óÀÎÀ» Á¾·áÇÑ´Ù. . ¸í·É¾î ¿É¼ÇÀº - ¶Ç´Â + ¹®ÀÚµÚ¿¡ µÚµû¸¥´Ù. (ÁÖÀÇ) ÀÌ °­Á¿¡¼­´Â °¢ ±¸¼º¿ä¼Ò¸¦ ±¸º°Çϱâ À§ÇØ »ç°¢ °ýÈ£¸¦ »ç¿ëÇÏ¿´´Âµ¥, ÀÌ »ç°¢°ýÈ£´Â ½©¿¡ ÀÇÇØ Æ¯¼öÇÏ°Ô Ã³¸®µÊÀ¸·Î »ç¿ëÇÏ¿©¼­´Â ¾ÊµÈ´Ù. ´ÙÀ½Àº À¯´Ð½º ¸í·É¾îÀÇ Çü½Ä°ú °ü·ÃµÈ ¿¹Á¦ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $who ¸í·É¾î ´Üµ¶À¸·Î ±¸¼ºµÈ ÇüÅ ¦¢ ¦¢ $who -H ¸í·É¾î+¿É¼ÇÀ¸·Î ±¸¼ºµÈ ÇüÅ ¦¢ ¦¢ $who am i ¸í·É¾î¿Í ÀÎÀڷθ¸ ±¸¼ºµÈ ÇüÅ ¦¢ ¦¢ $ls -al º¹¼ö°³ÀÇ ¿É¼ÇÀÌ °áÇÕµÇ¾î »ç¿ëµÈ ÇüÅ ¦¢ ¦¢ $ls -al /etc ¸í·É¾î+¿É¼Ç+ÀÎÀÚ·Î ±¸¼ºµÈ ÇüÅ ¦¢ ¦¢ $date +%d ¿É¼Ç¿¡ +¹®ÀÚ°¡ »ç¿ëµÈ ÇüÅ ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ =================================================================== ´ÙÀ½ °­ÀÇ´Â ¸í·É¾î ¶óÀο¡¼­ ¹ß»ýÇÏ´Â ¿¡·¯ »óȲµé°ú À¯´Ð½º ¼¼¼ÇÀÇ Á¦¾î ¹æ½Ä¿¡ ´ëÇØ ¼³¸í µå¸®°Ú½À´Ï´Ù ------------------------------------------------------------------- #6 À¯´Ï½Ã½º (adunis2 ) ¸í·É¾î ¶óÀλóÀÇ ¿¡·¯ »óȲ°ú Á¦¾î 01/26 17:11 97 line ¸í·É¾î ¼öÇàÁß ¹ß»ý °¡´ÉÇÑ ¿¡·¯ »óȲ¹× ¸í·É¾î ¶óÀÎ Á¦¾î -------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ»çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. -------------------------------------------------------------------- 1. ¸í·É¾î ¼öÇàÁß ¹ß»ý °¡´ÉÇÑ ¿¡·¯ »óȲ ´ÙÀ½Àº ¸í·É¾î ¶óÀÎÀ» ½ÇÇàÇÏ´Â µ¿¾È¿¡ ¹ß»ýÇÏ´Â ÀϹÝÀûÀÎ ¿¡·¯»óȲ°ú ½©¿¡ ÀÇÇصǵ¹·ÁÁö´Â ¿¡·¯ ¸Þ¼¼Áöµé¿¡ ´ëÇÑ ¼³¸íÀÌ´Ù. ÀÌ·¯ÇÑ ¿¡·¯ ¸Þ¼¼ÁöµéÀº óÀ½¿¡´Â ¾Ö¸ÅÇÏ°Ô ´À²¸Áú¼ö ÀÖ´Ù. À¯´Ð½º´Â ÇÁ·Î±×·¡¸Ó¸¦ À§ÇÑ, ÇÁ·Î±×·¡¸Ó¿¡ ÀÇÇÑ ¿¬±¸ ȯ°æ¿¡¼­ °³¹ßµÇ¾ú±â ¶§¹®¿¡ °£°áÇÑ Çü½ÄÀ» °®°íÀÖ´Ù. °æÇèÀÌ ½×À̸é ÀÌ·¯ÇÑ ¸Þ¼¼ÁöµéÀº Ä£¼÷ÇÏ°í, ½±°Ô Çص¶ÇÏ°Ô µÉ¼ö ÀÖÀ» °ÍÀÌ´Ù. ÀϹÝÀûÀÎ ¿¡·¯ ¸Þ¼¼Áöµé°ú ¿¡·¯ ¿øÀÎÀº ¾Æ·¡¿Í °°´Ù. . Command not found : ¸í·É¾î À̸§ÀÇ ¹®ÀÚ°¡ Ʋ·È°Å³ª, ´ë¹®ÀÚ·Î µÇ¾î ÀÖÀ» °æ¿ì. ¸í·É¾î ÇÁ·Î±×·¥ÀÌ ¸í·É¾î °Ë»ö´ë»ó µð·ºÅ丮³»¿¡ ¾ø´Â °æ¿ì. (PATH·Î ¼±¾ðµÈ ¿µ¿ª) . Permission denied : »ç¿ëÀÚ°¡ ¸í·É¾î ¶Ç´Â ¾ï¼¼½ºÇÏ°íÀÚ ÇÏ´Â È­ÀÏÀ» »ç¿ëÇϱâÀ§ÇÑ ¾ï¼¼½º Á¢±Ù ±ÇÇÑÀÌ ¾ø´Â °æ¿ì. . Cannot open file : È­ÀϸíÀÌ À߸ø ÁöÁ¤µÇ¾î Àְųª, Á¸ÀçÇÏÁö ¾Ê´Â °æ¿ì, È­ÀÏÀÌ ´ë»ó µð·ºÅ丮³»¿¡ ¾ø´Â °æ¿ì. ´ÙÀ½Àº ¿¡·¯ »óȲ¿¡ ´ëÇÑ ¿¹Á¦ÀÌ´Ù. 1) $cp cp: Insufficient arguments (0) Usage: cp [-i] [-p] f1 f2 cp [-i] [-p] f1 ... fn d1 cp [-i] [-p] [-r] d1 d2 ÀϹÝÀûÀÎ ¿¡·¯ ¸Þ¼¼Áö¿Í´Â ´Ù¸£°Ô ¸í·É¾îÀÇ »ç¿ë¹æ½ÄÀ» º¸¿©ÁÖ´Â ¿¹ 2) $DATE DATE: not found ¸í·É¾î À̸§À» ´ë¹®ÀÚ·Î À߸ø ÀÔ·ÂÇÑ ¿¹, ÀϹÝÀûÀÎ ¿¡·¯ ¸Þ¼¼Áö Çü½ÄÀ» µû¸£°í ÀÖ´Ù. 3) $cd \ > ¿ª½½·¹½Ã(\)°¡ Å° ¾Õ¿¡ ÀÖÀ»¶§, 2Â÷ ¸í·É¾î ÇÁ·ÒÇÁÆ®°¡ Ç¥½ÃµÈ´Ù. ( 2Â÷ ¸í·É¾î ÇÁ·ÒÇÁÆ®´Â Åë»ó >°¡ »ç¿ëµÈ´Ù. ) ÀÌ¿Ü¿¡µµ 2Â÷ ÇÁ·ÒÇÁÆ®´Â ½©ÀÌ ¸í·É¾î ¶óÀÎÀ¸·Î ºÎÅÍÀÇ ÀÔ·ÂÀ» °è¼Ó ¹Þ°íÀÚ ÇÒ ¶§¿¡µµ Ç¥½ÃµÈ´Ù. ÀϹÝÀûÀ¸·Î \ ¹®ÀÚ´Â º¹¼ö°³ÀÇ ¶óÀο¡ °ÉÄ£ ¸í·É¾î ¶óÀÎÀÇ ¿¬¼ÓÀ» ³ªÅ¸³½´Ù. Ư¼öÇÏ°Ô´Â \ ¹®ÀÚ´Â ´ÙÀ½ ¹®ÀÚ¸¦ ¹«½ÃÇϵµ·Ï ½©¿¡°Ô Áö½ÃÇϴ Ư¼ö¹®ÀÚ·Î »ç¿ëµÇ¸ç, ÀÌ °æ¿ì¿¡´Â Å°´Â ¸í·É¾î ¶óÀÎÀÇ ³¡À» ³ªÅ¸³»´Âµ¥ »ç¿ëµÈ´Ù. ½©Àº \¸¦ ¼±ÇàÇÏÁö ¾Ê´Â À» ¸¸³¯¶§±îÁö ´ÜÀÏ ¸í·É¾î ¶óÀÎ À¸·Î½á ÀÔ·ÂÀ» °è¼Ó ¹Þ¾ÆµéÀδÙ. 2. ¸í·É¾î ¶óÀÎÀÇ Á¦¾î ¹æ½Ä ¸í·É¾î ¶óÀλ󿡼­ ÀÔ·Â ½Ç¼ö·Î ÀÎÇÑ ¼öÁ¤, ÀçÀÔ·Â ¶Ç´Â ¸í·É¾î ½ÇÇàÀ» ÁßÁö½ÃÄÑ¾ß ÇÏ´Â °æ¿ì°¡ ÀÖÀ»¼ö ÀÖ´Ù. ÀÌ·¯ÇÑ ±â´ÉÀ» ¼öÇàÇÏ´Â Å°´Â ÇöÀçÀÇ Å͹̳Π¼³Á¤¿¡ µû¶ó ´Ù¸£´Ù. µðÆúÆ® ±â´ÉÅ°´Â ¾Æ·¡ÀÇ Å×À̺í°ú °°´Ù. ¶ÇÇÑ ÇöÀç ¼³Á¤µÇ¾î ÀÖ´Â Å°µéÀº stty ¸í·É¾î¸¦ ÀÌ¿ëÇÏ¿© ¼öÁ¤¹× È®ÀÎÇÒ ¼ö ÀÖ´Ù. stty -lcase ¸í·É¾î´Â ´ë¹®ÀÚ Àü¿ë Å͹̳ÎÀ» ¼Ò¹®ÀÚ Ç¥½Ã °¡´É Å͹̳ηΠº¯È¯Çϴµ¥ »ç¿ëµÉ¼ö ÀÖ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ ±â ´É ¦¢ Å° ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ ¸í·É¾î ¶óÀλóÀÇ Á÷Àü ¹®ÀÚ »èÁ¦ ¦¢^h ¶Ç´Â BS ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ ¶óÀÎ »èÁ¦ ¦¢^u ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ ¸í·É¾î ½ÇÇàÀ» ÁßÁö ¦¢^c ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¹®ÀÚ »èÁ¦ »èÁ¦ Å°´Â ÇϹø¿¡ Çѹ®ÀÚ¾¿ ÀÌÀüÀÇ ¹®ÀÚ¸¦ »èÁ¦ÇÑ´Ù. Å͹̳Π¼³Á¤¿¡ µû¶ó¼­´Â Å°µµ ÀÌ ±â´ÉÀ» ¼öÇàÇÒ ¼ö ÀÖ´Ù. ¶óÀÎ »èÁ¦ Àüü ¶óÀÎÀº Å°¸¦ Ä¡±â ÀÌÀü¿¡ ¾ðÁ¦¶óµµ »èÁ¦ÇÒ ¼ö ÀÖ´Ù. À̶§ Ä¿¼­´Â ´ÙÀ½ ÀÔ·ÂÀ» ±â´Ù¸®±â À§ÇØ ´ÙÀ½ ¶óÀÎÀ¸·Î À̵¿µÈ´Ù. ÀÌ °æ¿ì ½©Àº ÇÁ·ÒÇÁÆ®¸¦ Ç¥½ÃÇÏÁö ¾Ê´Â´Ù. ÀÌÀü ¶óÀÎÀº ¹«½ÃµÈ´Ù. ¸í·É¾î ½ÇÇà ÁßÁö ÇöÀç ½ÇÇàµÇ°í ÀÖ´Â ¸í·É¾î´Â Á¾·áµÇ°Å³ª, ÁßÁö ½Ãų¼ö ÀÖ´Ù. ÁßÁö Å°¸¦ ´©¸¥¶§ ¿î¿µ üÁ¦´Â ÁßÁö ½ÅÈ£¸¦ ¸í·É¾î¿Í ½©¿¡°Ô º¸³½´Ù. ¸í·É¾î´Â Áï°¢ÀûÀ¸·Î ½ÇÇàÀ» ¸ØÃá´Ù. ±×¸®°í ½©Àº ¶Ç´Ù¸¥ ÇÁ·ÒÇÁÆ®¸¦ Ç¥½ÃÇÏ°í, ÀÔ·ÂµÉ ´ÙÀ½ ¸í·É¾î¸¦ ±â´Ù¸°´Ù. =================================================================== ´ÙÀ½ °­ÀÇ´Â Æнº¿öµå °ü¸®¸í·ÉÀÎ passwd ¸í·É¿¡ ´ëÇØ ¼³¸í µå¸®°Ú½À´Ï´Ù ------------------------------------------------------------------- #7 À¯´Ï½Ã½º (adunis2 ) Æнº¿öµåÀÇ Á¦¾î: passwd ¸í·É¾î 01/26 17:12 97 line Æнº¿öµåÀÇ Á¦¾î : passwd ¸í·É¾î -------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ»çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. -------------------------------------------------------------------- 1. Æнº¿öµå ·Î±×ÀÎ Æнº¿öµå´Â ÀÌ¹Ì À¯´Ð½º º¸¾È ±â´ÉÀ¸·Î °³³äÀ» ¼³¸íÇß´Ù. À¯´Ð½º¿¡´Â ·Î±×ÀÎ Æнº¿öµå¸¦ »ç¿ëÀÚ°¡ º¯°æ, ¼³Á¤, Á¶È¸ÇÒ¼ö ÀÖ´Â passwd ¸í·É¾î°¡ Á¦°øµÈ´Ù. ÀÌ ¸í·É¾î´Â ÀÓÀÇÀÇ »ç¿ëÀÚ¿Í °ü·ÃµÈ Æнº¿öµå ¼Ó¼º°ú Æнº¿öµåÀÇ ¼³Á¤¹× º¯°æÀ» ÇϱâÀ§ÇØ superuser¶ó ºÒ¸®¿ì´Â ½Ã½ºÅÛ °ü¸®ÀÚ¿¡ ÀÇÇØ »ç¿ëµÇ¾îÁö±âµµ ÇÑ´Ù. Æнº¿öµå´Â superuser±îÁöµµ read¸¸ÀÌ °¡´ÉÇÑ È­ÀÏÀÎ /etc/shadow È­ÀÏ¿¡ ÀúÀå µÇ¾î ÀÖ´Ù. ÀÌ È­ÀÏ¿¡´Â Æнº¿öµåÀÇ À¯È¿±â°£¿¡ °ü·ÃµÈ Á¤º¸µéµµ ÀúÀåµÇ¾î ÀÖ´Ù. 1) Æнº¿öµåÀÇ ¼³Á¤ À¯´Ð½º ¸í·É¾î¸¦ »ç¿ëÇÏ¿© Æнº¿öµå¸¦ ¼³Á¤Çϱâ À§ÇÑ ÀýÂ÷´Â ·Î±×ÀÎ ÇÁ·ÒÇÁÆ®¿¡¼­ Æнº¿öµå¸¦ ¼³Á¤ÇÏ´Â ¹æ½Ä°ú ¸Å¿ì À¯»çÇÏ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $passwd ¦¢ ¦¢ Enter password: ¦¢ ¦¢ Re-enter password: ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ (1) passwd ¸í·É¾î¿Í Å°¸¦ ÀÔ·ÂÇÑ´Ù. ¸í·É¾î À̸§ÀÇ Ã¶ÀÚ¿¡ ÁÖÀÇÇØ¾ß ÇÑ´Ù. ( password °¡ ¾Æ´Ï´Ù. ) ÀÏ¹Ý »ç¿ëÀÚµéÀº ÀÚ½ÅÀÇ logname°ú °ü·ÃµÈ Æнº¿öµå¸¸À» ¼³Á¤¹× º¯°æÇÒ ¼ö ÀÖ´Ù. (2) ÇÁ·ÒÇÁÆ®¿¡¼­ Æнº¿öµå¸¦ ÀÔ·ÂÇÏ°í, Å°¸¦ ÀÔ·ÂÇÑ´Ù. À̶§ »ç¿ëÀÚ°¡ ÀÔ·ÂÇÑ Æнº¿öµå´Â º¸¾ÈÀ¯Áö¸¦ À§ÇØ È­¸é»ó¿¡ Ç¥½ÃµÇÁö ¾ÊÀ½À» ÁÖ¸ñÇϱ⠹ٶõ´Ù. superuser´Â ÀÏ¹Ý »ç¿ëÀÚµéÀ» Á¦¾î ÇϱâÀ§ÇØ ÀÌ ±ÔÄ¢À¸·Î ºÎÅÍ Á¦¿ÜµÈ´Ù. (3) À­ ´Ü°è¿Í °°ÀÌ Æнº¿öµå¿Í Å°¸¦ ÀÔ·ÂÇÑ´Ù. À̶§ À­ ´Ü°è¿¡¼­ ÁöÁ¤ÇÑ Æнº¿öµå¿Í Áö±Ý ÀÔ·ÂÇÑ Æнº¿öµå´Â ¹Ýµå½Ã ÀÏÄ¡ÇØ¾ß ÇÑ´Ù. Ʋ¸± °æ¿ì Æнº¿öµå ÀÔ·Â ÀýÂ÷¸¦ Çѹø ´õ ¼öÇàÇØ¾ß ÇÑ´Ù. passwd ¸í·É¾î´Â »ç¿ëÀÚ°¡ ¼¼¹ø ÀÔ·Â ¿À·ù¸¦ ¹üÇßÀ»¶§ Á¾·áµÈ´Ù. 2) Æнº¿öµåÀÇ º¯°æ ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $passwd ¦¢ ¦¢ Enter old password: ¦¢ ¦¢ Enter new password: ¦¢ ¦¢ Re-enter new password: ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ Æнº¿öµå¸¦ º¯°æÇÏ´Â ÀýÂ÷´Â »ç¿ëÀÚ°¡ ±âÁ¸ÀÇ Æнº¿öµå¸¦ ¿ì¼± ÀÔ·ÂÇÑ´Ù´Â Á¡À» Á¦¿ÜÇÏ°í´Â Æнº¿öµå ¼³Á¤ ÀýÂ÷¿Í °°´Ù. »õ·Î¿î Æнº¿öµå´Â ±âÁ¸ÀÇ Æнº¿öµå¿Í ÃÖ¼Ò 3±ÛÀÚ°¡ ´Þ¶ó¾ß ÇÑ´Ù. passwd ¸í·É¾î´Â /etc/default/passwd È­ÀÏ°ú Æнº¿öµå°¡ À¯È¿ÇÑ ½ËÁ¡À» °áÁ¤Çϱâ À§ÇØ À¯È¿±â°£ Á¤º¸¿¡´ëÇØ /etc/shadow È­ÀÏÀ» °Ë»çÇÑ´Ù. superuser´Â ±âÁ¸ÀÇ Æнº¿öµå¸¦ ÀÔ·ÂÇØ´Þ¶ó´Â ÇÁ·ÒÇÁÆ®°¡ Ç¥½ÃµÇÁö ¾Ê´Â´Ù. 3) Æнº¿öµå ¼Ó¼ºÀÇ Á¶È¸ ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $passwd -s ¦¢ ¦¢ userid PS 01/25/96 0 168 7 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ »ç¿ëÀÚ´Â passwd -s ¸í·É¾î¸¦ ÀÌ¿ëÇÏ¿© ÀÚ½ÅÀÇ logname¿¡ ´ëÇÑ Æнº¿öµå ¼Ó¼º¹× À¯È¿±â°£ Á¤º¸¸¦ È®ÀÎ ÇÒ¼ö Àִµ¥, À̶§ Ç¥½ÃµÇ¾îÁö´Â Çü½ÄÀº ´ÙÀ½°ú °°´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢logname status [ mm/dd/yy min max warn ] ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ logname : »ç¿ëÀÚÀÇ logname status : Æнº¿öµå ¿î¿µ »óÅ Á¤º¸ PS : Æнº¿öµå°¡ ¼³Á¤µÇ¾î ÀÖÀ½À» ÀǹÌÇÑ´Ù. LK : Æнº¿öµå°¡ LockÀÌ °É·Á ÀÖÀ½À» ³ªÅ¸³½´Ù. ( ÀÌ´Â Åë»ó ÀÏÁ¤ ±â°£ Æнº¿öµå¸¦ »ç¿ëÁßÁö ½Ãų¶§ »ç¿ëÇÑ´Ù. ÀÌ °æ¿ì ·Î±×ÀÎ ÀÛ¾÷À» ¼öÇàÇÒ ¼ö ¾ø°ÔµÈ´Ù. ) NP : Æнº¿öµå°¡ ¼³Á¤µÇ¾î ÀÖÁö ¾ÊÀ½À» ÀǹÌÇÑ´Ù. mm/dd/yy : Á÷ÀüÀÇ Æнº¿öµå°¡ º¯°æµÈ ³¯Â¥ min : ´ÙÀ½¹ø Æнº¿öµå º¯°æÀüÀÇ ÃÖ¼Ò Àϼö. ÀÌ´Â Æнº¿öµå°¡ À¯ÁöµÇ´Â ÃÖ¼Ò Àϼö¸¦ ÀÇ¹Ì Çϴµ¥ ÀÌ ±â°£ ÀÌÀü¿¡´Â ´Ù½Ã Æнº¿öµå¸¦ º¯°æÇÒ ¼ö ¾ø°ÔµÈ´Ù. max : Æнº¿öµå°¡ À¯È¿ÇÑ ÃÖ´ë Àϼö warn : Æнº¿öµå°¡ ¸¸·áµÇ±âÀü¿¡ »ç¿ëÀÚ¿¡ °æ°í¸¦ Ç¥½ÃÇÒ Àϼö. ======================================================================== ´ÙÀ½ °­ÀÇ´Â SVR4.0¿¡¼­ Á¦°øÇÏ´Â ¿Â¶óÀÎ ¸Þ´º¾óÀÎ man°ú mandex¿¡ ´ëÇØ ¼³¸í µå¸®°Ú½À´Ï´Ù. ------------------------------------------------------------------------ #8 À¯´Ï½Ã½º (adunis2 ) ¿Â¶óÀÎ ¸Þ´º¾óÀÇ ÂüÁ¶ : man°ú mandex 01/26 17:14 111 line ¿Â¶óÀÎ ¸Þ´º¾ó ÂüÁ¶ ¸í·É¾î : man°ú mandex -------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ»çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. -------------------------------------------------------------------- 1. man ¸í·É¾î ÀÌ ¸í·É¾î´Â ½Ã½ºÅÛ»óÀÇ ÂüÁ¶ ¸Þ´º¾ó³»ÀÇ Æ¯Á¤ Ç׸ñÀ» ¾ï¼¼½ºÇϱâ À§ÇÑ ¸í·É¾îÀÌ´Ù. ¼öÇà°á°ú Ç¥½ÃµÇ´Â Á¤º¸µéÀº Á¾ÀÌ·Î ÇÁ¸°Æ®ÇÏ¿© Á¦°øÇÏ´Â Á¤½Ä ¸Þ´º¾ó»óÀÇ ³»¿ë°ú µ¿ÀÏÇÑ ³»¿ëÀÌ´Ù. ±× Çü½ÄÀº ´ÙÀ½°ú °°´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ man [section] man_entry ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ man ¸í·É¾î´Â ÁöÁ¤ÇÑ ¸Þ´º¾ó Ç׸ñÀ» Ž»öÇÏ°í Ãâ·ÂÇØ ÁØ´Ù. µ¿½Ã¿¡ ¿©·¯ Ç׸ñÀ» ÁöÁ¤ÇÒ °æ¿ì ¸í·É¾î ¶óÀÎ»ó¿¡ °ø¹éÀ¸·Î ±¸ºÐµÇ¾î¾ß¸¸ ÇÑ´Ù. ÀÌ man¸í·É¾î´Â ³»ºÎÀûÀ¸·Î Ãâ·Â ³»¿ëÀ» Çѹø¿¡ ÇÑ È­¸éºÐ¾¿À» Ãâ·ÂÇØÁÖ´Â pg ¸í·É¾î¸¦ »ç¿ëÇÑ´Ù. ÀÌ ¶§¹®¿¡ pg ¸í·É¾îÀÇ ÇÏÀ§ ¸í·ÉÀ» »ç¿ëÇϴµ¥, ´ÙÀ½ È­¸éÀ» Ãâ·ÂÇÏ°íÀÚ ÇÒ °æ¿ì¿¡´Â Å°¸¦, ´ÙÀ½ ¶óÀÎÀ» Ãâ·ÂÄÚÀÚ ÇϸéÀº Å°¸¦ »ç¿ëÇÑ´Ù. ±âŸ Á¤¹æÇ⠶Ǵ ¿ª¹æÇâ °Ë»ö°°Àº ±â´ÉÀ» ¼öÇàÇÏ´Â »ó¼¼ÇÑ ÇÏÀ§ ¸í·É¾îµéÀº ¸í·É¾î¸¦ ÀÔ·ÂÇϸé Ãâ·ÂµÇ´Ï ÂüÁ¶ ¹Ù¶õ´Ù. ´ÙÀ½Àº ƯÁ¤ ¸í·É¾î¿¡ ´ëÇÑ Á¤º¸¸¦ ÂüÁ¶Çϱâ À§ÇÑ man ¸í·É¾îÀÇ »ç¿ë¿¹¸¦ º¸¿©ÁÖ°í ÀÖ´Ù. $man pwd --- ÀÓÀÇÀÇ ¸í·É¾î¿¡ °ü·ÃÇÑ ¸Þ´º¾ó ³»¿ëÀ» ÀüºÎ ÂüÁ¶Çϱâ À§ÇÑ Çü½Ä $man 4 passwd --- ƯÁ¤ ¸í·É¾îÀÇ ¸Þ´º¾ó ³»¿ëÁß Æ¯Á¤ ºÎºÐ¸¸À» ÂüÁ¶Çϱâ À§ÇÑ Çü½Ä $man who date --- ÇѹøÀÇ man ¸í·É¾î¸¦ ÅëÇÑ º¹¼ö°³ÀÇ ¸í·É¾î ¸Þ´º¾óÀ» ÂüÁ¶Çϱâ À§ÇÑ Çü½Ä 2. mandex ¸í·É¾î ÀÌ ¸í·É¾î´Â »ç¿ëÀÚ°¡ ¼±ÅÃÇÑ ÁÖÁ¦¿¡ ´ëÇØ ¸Þ´º ¼±Åà ¹æ½Ä (Menu driven) ÀÇ °Ë»ö¹æ½ÄÀ» Á¦°øÇÑ´Ù. mandex¸¦ »ç¿ëÇϱâ À§ÇÑ ±âº»ÀûÀÎ ¹æ½ÄÀº ´ÙÀ½°ú °°´Ù. 1. mandex ¸í·É¾î¸¦ ½ÇÇàÇÑ´Ù. À̶§ ƯÁ¤ÀÇ ÁÖÁ¦°¡ µé¾îÀÖ´Â ¸Þ´º¾ó ÆäÀÌÁö¸¦ ¾ï¼¼½ºÇϱâ À§ÇÏ¿© ¸í·É¾î ¶óÀÎ»ó¿¡ Å°¿öµå¸¦ ÁöÁ¤ÇÒ ¼öÀÖ´Ù. 2. ÂüÁ¶ÇÒ ¸Þ´º¾óÀ» ¼±Åðųª, ¿øÇÏ´Â ÁÖÁ¦¸¦ ÁöÁ¤Çϰųª, Ž»öÇÒ ¹®ÀÚ¿­À» ÁöÁ¤ÇÑ´Ù. ¾Æ·¡ÀÇ ¿¹Á¦´Â mandex ¸í·É¾îÀÇ µÎ°¡Áö »ç¿ë¿¹¸¦ º¸¿©ÁÖ°í ÀÖ´Ù. (¿¹Á¦ 1) ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $mandex ¦¢ ¦¢ $mandex set password ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ù¹ø° ¿¹Á¦ÀÇ °æ¿ì¿¡´Â ´ÙÀ½°ú °°Àº mandex menu systemÀ» Ç¥½ÃÇÏ°Ô µÈ´Ù. (¿¹Á¦ 2) ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ Online Manual Indexing System ( mandex ) ¦¢ ¦¢ ¦¢ ¦¢ Book Shelf ¦¢ ¦¢ ¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡ ¦¢ ¦¢ Online Manuals ¦¢ ¦¢ -> User's, Programmer's, Administrator's Reference ¦¢ ¦¢ NetworkUser's Reference Manual Pages ¦¢ ¦¢ X window Access Commands ¦¢ ¦¢ Secure UNIX Reference Manual Pages ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ Manual 1 of 4 ¦¢ ¦¢ ¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡ ¦¢ ¦¢ ¦¢ ¦¢ Help Quit Open Manual Search ¦¢ ¦¢ ¦¢ ¦¢ Selection: _ ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ mandex menu system¿¡¼­´Â ÀÌ¿ë °¡´ÉÇÑ ¿Â¶óÀÎ ÂüÁ¶ ¸Þ´º¾óÀÇ ¸ñ·ÏÀ» À§¿Í °°ÀÌ º¸¿©ÁØ´Ù. ¶ÇÇÑ À§ÀÇ Manual 1 of 4¶ó´Â ÇÁ·ÒÇÁÆ®´Â ÇöÀç -> Ç¥½Ã¿¡ ÀÇÇØ ¼±ÅÃµÈ ¸Þ´º¾óÀÌ Àüü ¸Þ´º¾óÁß¿¡ ¸î°³ÀÎÁö¸¦ ÀǹÌÇÑ´Ù. -> Ç¥½Ã¸¦ ¹æÇâÅ°ÀÇ »ç¿ëÀ» ÅëÇØ »óÇÏ·Î À̵¿Çϸç, ƯÁ¤ ¸Þ´º¾óÀ» ¼±ÅÃÇÒ ¼ö ÀÖ´Ù. ¶ÇÇÑ Çϴܺο¡´Â »ç¿ëÀÚ°¡ ¼öÇàÇÒ¼ö ÀÖ´Â ÀÛ¾÷µéÀ» ÀǹÌÇÏ´Â ¿É¼ÇÁß¿¡¼­ ÇöÀç »ç¿ë°¡´ÉÇÑ ¿É¼ÇµéÀ» ³ª¿­ÇÏ°í Àִµ¥, ÀÌ ¿É¼ÇÀº °¢°¢ÀÇ ¿É¼Ç¿¡ ´ë¹®ÀڷΠǥ½ÃµÈ ±ÛÀÚ¸¦ ´©¸§À¸·Î½á ¼±ÅÃÇÒ ¼ö Àִµ¥, mandex ¸í·ÉÀº ¼Ò¹®ÀÚ¸¦ ÀνÄÇÏÁö ¸øÇÑ´Ù´Â Á¡À» ÁÖÀÇ ÇØ¾ß ÇÑ´Ù. ¿©±â¿¡¼­ Search ±â´ÉÀº ¿Â¶óÀÎ ¸Þ´º¾ó »ó¿¡¼­ ƯÁ¤ÀÇ ÁÖÁ¦¸¦ ã±âÀ§ÇØ »ç¿ëµÉ ¼ö ÀÖ´Ù. °Ë»ö ±â´ÉÀ» »ç¿ëÇϱâ À§Çؼ­´Â ¿ì¼± ¹æÇâÅ°¸¦ »ç¿ëÇÏ¿© °Ë»ö´ë»ó ¸Þ´º¾óÀ» ¼±ÅÃÇÑÈÄ SÅ°¸¦ ´©¸¥ÈÄ °Ë»ö ´ë»ó Å°¿öµå¸¦ ÀÔ·ÂÇÏ°í CÅ°¸¦ ´©¸£¸é °Ë»öÀÌ °³½ÃµÈ´Ù. °Ë»öÀ» ¼öÇàÇÑÈÄ mandex´Â ÇØ´ç °Ë»ö¾î°¡ µé¾îÀÖ´Â ¸Þ´º¾ó»óÀÇ ºÎºÐÀ» È­¸é»ó¿¡ Ç¥½Ã ÇØ ÁØ´Ù. (¿¹Á¦ 2)ÀÇ µÎ¹ø° ¸í·É¾î´Â ¸í·É¾î ¶óÀÎ»ó¿¡ ÁöÁ¤µÈ Å°¿öµå¿¡ °ü·ÃµÈ ¸Þ´º¾óÀ» °ðÀå º¸¿© ÁְԵȴÙ. ÀÌ ÈÄ ¼³¸íµÉ ¸ðµç ¸í·É¾î¿¡ ´ëÇÑ ÀÚ¼¼ÇÑ Á¤º¸µéÀº ¿Â¶óÀÎ ÂüÁ¶ ¸Þ´º¾óÀ» Âü°í ÇϽñ⠹ٶø´Ï´Ù. ======================================================================== ´ÙÀ½ °­ÀÇ´Â À¯´Ð½º ½Ã½ºÅÛ¿¡¼­ÀÇ ÀÛ¾÷ Á¾·á ¹æ½Ä¿¡ ´ëÇØ ¼³¸í µå¸®°Ú½À´Ï´Ù. ------------------------------------------------------------------------ #9 À¯´Ï½Ã½º (adunis2 ) À¯´Ð½º¿¡¼­ÀÇ ÀÛ¾÷ÀÇ Á¾·á : logout 01/26 17:15 31 line À¯´Ð½º¿¡¼­ÀÇ ÀÛ¾÷ÀÇ Á¾·á : logout -------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ»çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. -------------------------------------------------------------------- À¯´Ð½º ÀÛ¾÷À» Á¾·áÇϱâ À§Çؼ­´Â ´ÙÀ½°ú °°Àº µÎ°¡Áö ¹æ½ÄÀ» ÀÌ¿ëÇÒ¼ö ÀÖ´Ù. . Shell ÇÁ·ÒÇÁÆ®¿¡¼­ ^d¸¦ ´©¸¥´Ù. . Shell ÇÁ·ÒÇÁÆ®¿¡¼­ exit ¸í·É¾î¸¦ ½ÇÇàÇÑ´Ù. ÀÛ¾÷À» Á¾·áÇϱâ À§ÇØ À§ÀÇ ¸í·É¾î¸¦ ½ÇÇàÇϸé, Å͹̳ο¡ logout ÇÁ·ÒÇÁÆ®¿Í login ÀÛ¾÷À» ¼öÇàÇÑ ÀÌÈĺÎÅÍ °æ°ú ½Ã°£¿¡ °ü·ÃÇÑ Á¤º¸¸¦ Ç¥½ÃÇÑ´Ù. ÀϹÝÀûÀ¸·Î ´ë°³ÀÇ »ç¿ëÀÚµéÀº logout ÀÛ¾÷¿¡ ´ëÇØ Å«Àǹ̸¦ ºÎ¿©ÇÏÁö ¾Ê°í, ½Å°æÀ» ¾²Áö ¾Ê´Â´Ù. ±×·¯³ª ÀÌ´Â ¸Å¿ì Áß´ëÇÑ »ç°í¸¦ ÃÊ·¡ÇÒ ¼ö ÀÖ´Ù. logoutÀ» ¼öÇàÇÏÁö ¾Ê°í, Àå½Ã°£ Å͹̳ÎÀ» ºñ¿ï°æ¿ì ŸÀο¡ÀÇÇØ ½Ã½ºÅÛ ÀÚ¿ø¿¡ ´ëÇÑ ºÒ¹ýÀûÀÎ ¾ï¼¼½º°¡ ( ¿¹¸¦µé¸é »ç¿ëÁßÀÎ µ¥ÀÌŸ¿¡ ´ëÇÑ º¯Á¶, ±â¹Ð »çÇ׿¡ ´ëÇÑ ºÒ¹ýÀûÀÎ ¾ï¼¼½ºµî ) ÇàÇØÁú °¡´É¼ºÀÌ ÀÖ´Ù. ¹°·Ð timeout ±â´ÉÀ» ¼³Á¤ÇÏ¿© ÀÏÁ¤±â°£ µ¿¾È ÀÔ·ÂÀÌ ¾øÀ» °æ¿ì ÀÚµ¿ÀûÀ¸·Î logoutÀ» ¼öÇàÇÏ´Â ±â´Éµµ »ç¿ëÇÒ¼ö´Â ÀÖÀ¸³ª, ÀÌ ¶ÇÇÑ ¿©·¯°¡Áö ¹®Á¦¸¦ ÃÊ·¡ÇÒ °¡´É¼ºÀÌ ÀÖÀ¸¹Ç·Î »ç¿ëÀÚ ÀÚ½ÅÀÇ ÁÖÀÇ°¡ ¿ä¸ÁµÈ´Ù. ======================================================================== ´ÙÀ½ °­ÀÇ´Â À¯´Ð½º È­ÀÏ Ã¼Á¦¿Í È­ÀÏ ±¸Á¶¿¡ ´ëÇØ ¼³¸í µå¸®°Ú½À´Ï´Ù. ------------------------------------------------------------------------ #10 À¯´Ï½Ã½º (adunis2 ) À¯´Ð½º È­ÀÏ ½Ã½ºÅÛ°ú È­ÀÏ ±¸Á¶ 01/26 17:17 83 line À¯´Ð½º È­ÀÏ ½Ã½ºÅÛ°ú È­ÀÏ ±¸Á¶ -------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ»çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. -------------------------------------------------------------------- 1. À¯´Ð½º È­ÀÏ ½Ã½ºÅÛ À¯´Ð½º È­ÀÏ ½Ã½ºÅÛÀº È­ÀÏÀÇ ÁýÇÕ ¶Ç´Â Á¤º¸¸¦ ÀúÀåÇϱâ À§ÇÑ Àå¼Òµé·Î ±¸¼ºµÈ´Ù. À¯´Ð½º¿¡´Â µð·ºÅ丮, ÀÏ¹Ý È­ÀÏ, Ư¼ö È­ÀÏ, ½Éº¼¸¯ ¸µÅ© (Symbolic Link) È­Àϵî 4°¡Áö ÇüÅÂÀÇ È­ÀϵéÀÌ ÀÖ´Ù. ÀÌ·¯ÇÑ È­ÀϵéÀº ±×µéÀÌ ½±°Ô ¾ï¼¼½ºµÉ¼ö ÀÖµµ·Ï Çϱâ À§ÇÏ¿© ÀÏÁ¤ÇÑ ¹èÄ¡ ±¸Á¶¼Ó¿¡ ¹èÄ¡µÇ°Ô µÈ´Ù. À¯´Ð½º È­ÀÏÀÇ Á¾·ù . µð·ºÅ丮(directory)´Â ´Ù¸¥ È­ÀÏ°ú µð·ºÅ丮¿¡ ´ëÇÑ È­Àϸí, È­ÀÏÀÇ ¾ï¼¼½º ±ÇÇÑ, È­ÀÏÀÇ Å©±â, »ý¼º ³¯Â¥, ¼öÁ¤ ³¯Â¥µîÀÇ Á¤º¸¸¦ À¯Áö °ü¸®ÇÑ´Ù. µð·ºÅ丮´Â ¼­·Î ¿¬°üµÇ´Â È­ÀϵéÀ» ¹­¾î¼­ °ü¸®Çϴµ¥ À¯¿ëÇÏ´Ù. ¶ÇÇÑ µð·ºÅ丮´Â µ¥ÀÌŸ¸¦ °®Áö ¾ÊÀ¸¸ç, ´Ù¸¥ È­ÀÏ ¶Ç´Â ´Ù¸¥ µð·ºÅ丮·ÎÀÇ Æ÷ÀÎÅ͸¸À» ÀúÀåÇÏ°Ô µÈ´Ù. . ÀÏ¹Ý È­ÀÏ(ordinary file)´Â µð½ºÅ©¿Í °°Àº ƯÁ¤ÀÇ ±â¾ï ÀåÄ¡»ó¿¡ Á¸ÀçÇÏ´Â ¹®ÀÚµéÀÇ ÁýÇÕÀÌ´Ù. ÀÏ¹Ý È­ÀϵéÀº ÀÌÈÄÀÇ »ç¿ëÀ» À§ÇØ ÀúÀåµÈ Á¤º¸, ¹®¼­, ÇÁ·Î±×·¥ ÄÚµåµîÀ» Æ÷ÇÔÇÒ¼ö ÀÖ´Ù. . Ư¼öÈ­ÀÏ(special file)Àº µð·ºÅ丮 ó·³ µ¥ÀÌŸ¸¦ °®°í ÀÖÁö ¾Ê´Ù. ±âº»ÀûÀ¸·Î ÀÌ È­ÀÏÀº µð½ºÅ© µå¶óÀ̺ê, Å͹̳Î, ÇÁ¸°ÅÍ¿Í °°Àº °¢Á¾ÀÇ Çϵå¿þ¾î ÀåÄ¡·ÎÀÇ Æ÷ÀÎÅ͵éÀÌ µé¾î ÀÖ´Ù. °¢°¢ÀÇ Çϵå¿þ¾î ÀåÄ¡µé°ú ¿¬°üµÇ´Â Ư¼ö È­ÀϵéÀº /dev µð·ºÅ丮³»¿¡ À§Ä¡µÈ´Ù. . ½Éº¼¸¯ ¸µÅ©µÈ(symbolic link) È­ÀϵéÀº À¯´Ð½º È­ÀÏ ½Ã½ºÅÛ³»ÀÇ ´Ù¸¥ È­ÀϵéÀ» °¡¸£Å°´Â Á¤º¸(Æ÷ÀÎÅÍ ¶Ç´Â Àý´ë °æ·Î)¸¦ °®°íÀÖ´Â È­ÀÏÀÌ´Ù. È­ÀÏÀÇ ¸µÅ©(link)¶ó´Â °³³äÀº ÀÌÈÄ¿¡ ¼³¸íµÉ ln ¸í·É¾î ºÎºÐ¿¡¼­ ÀÚ¼¼È÷ ¼³¸íµÉ °ÍÀÌ´Ù. 2. À¯´Ð½º È­ÀÏ ±¸Á¶ À¯´Ð½º È­ÀϵéÀº ȸ»çÀÇ Á¶Á÷ ±¸¼ºÇ¥¿Í À¯»çÇÑ °èÃþÀû ±¸Á¶ ¶Ç´Â ´Ü°è ±¸Á¶·Î ±¸¼ºµÈ´Ù. ÀÌ ¹æ½ÄÀº Á¤º¸¸¦ °ü¸®, °Ë»ö, ±¸¼ºÇϴµ¥ È¿À²ÀûÀÎ ¹æ½ÄÀ» Á¦°øÇÑ´Ù. °èÃþÀû ±¸Á¶»ó¿¡¼­ °¡Àå ³ôÀº ´Ü°èÀÎ root µð·ºÅ丮·Î ºÎÅÍ ¼­ºê µð·ºÅ丮µé°ú ¼­ºê È­ÀϵéÀÌ ºÐ±âµÈ´Ù. ÀÌ Á¡¿¡¼­ À¯´Ð½º È­Àϱ¸Á¶´Â ²À´ë±â¿¡ »Ñ¸®¿Í ¸ðµç °¡ÁöµéÀÌ ±×·ÎºÎÅÍ ¹ØÀ¸·Î ÇâÇØ°¡´Â °Å²Ù·ÎµÈ ³ª¹«Ã³·³ º¸¿©Áú¼öµµ ÀÖ´Ù. ½Ã½ºÅÛ»óÀÇ ¸ðµç ´Ù¸¥ È­Àϵé°ú µð·ºÅ丮µéÀº / (slash)·Î Ç¥ÇöµÇ´Â root µð·ºÅ丮¿¡ ¿¬°áµÈ´Ù. ¼­ºê µð·ºÅ丮´Â ´Ù¸¥ È­ÀÏ ¶Ç´Â È­ÀÏ°ú ¼­ºê µð·ºÅ丮µéÀ» °®°íÀÖ´Â ¼­ºê µð·ºÅ丮µéÀ» °®°í ÀÖÀ» ¼ö ÀÖ´Ù. µð·ºÅ丮¿Í ±×¿¡ Á¾¼ÓµÇ´Â ¼­ºê È­ÀÏ, ¼­ºê µð·ºÅ丮µé »çÀÌ¿¡´Â ºÎ¸ð-ÀÚ½Ä °ü°èÀÇ ¿¬°ü °ü°è°¡ Á¸ÀçÇÑ´Ù. °¢°¢ÀÇ ºÎ¸ð µð·ºÅ丮´Â ¹Ù·Î ¾Æ·¡ ´Ü°èÀÇ È­ÀÏ°ú µð·ºÅ丮µé¿¡ ´ëÇÑ Á¤º¸¸¦ À¯Áö °ü¸®ÇÑ´Ù. »ç¿ëÀÚ¿¡°Ô´Â ·Î±×Àνÿ¡ Ȩµð·ºÅ丮¶ó°í ºÎ¸£´Â À¯ÀÏÇÑ, ÃʱâÀÇ µð·ºÅ丮¸¦ ÇÒ´çµÈ´Ù. »ç¿ëÀÚ°¡ È­ÀÏ °èÃþ±¸Á¶¿¡¼­ À§Ä¡¸¦ º¯°æÇÒ¶§¿¡, °¢ µð·ºÅ丮 À§Ä¡µéÀº À§Ä¡°¡ ´Ù½Ã ¹Ù²ð¶§±îÁö current directory°¡ µÈ´Ù. ´ÙÀ½Àº À¯´Ð½º È­ÀÏ °èÃþÀ» º¸¿©ÁØ´Ù. ¦£¦¡¦¡¦¡¦¤ ¦¢ / ¦¢ ¦¦¦¡¦¨¦¡¦¥ ¦£¦¡¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦ª¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¤ ¦£¦¡¦ª¦¡¦¤ ¦£¦¡¦ª¦¡¦¤ ¦£¦¡¦ª¦¡¦¤ ¦£¦¡¦ª¦¡¦¤ ¦£¦¡¦ª¦¡¦¤ ¦¢ dev ¦¢ ¦¢ var ¦¢ ¦¢ home ¦¢ ¦¢ etc ¦¢ ¦¢ usr ¦¢ ¦¦¦¡¦¡¦¡¦¥ ¦¦¦¡¦¡¦¡¦¥ ¦¦¦¡¦¨¦¡¦¥ ¦¦¦¡¦¡¦¡¦¥ ¦¦¦¡¦¡¦¡¦¥ ¦£¦¡¦¡¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦£¦¡¦ª¦¡¦¤ ¦£¦¡¦ª¦¡¦¤ ¦¢user1 ¦¢ ¦¢user2 ¦¢ ¦¦¦¡¦¨¦¡¦¥ ¦¦¦¡¦¨¦¡¦¥ ¦£¦¡¦¡¦¡¦¡¦¡¦¨¦ª¦¡¦¡¦¡¦¡¦¤ ¦£¦¡¦¡¦ª¦¡¦¡¦¤ ¦£¦ª¦¤ ¦£¦ª¦¤ ¦£¦¡¦ª¦¡¦¤ ¦£¦ª¦¤ ¦£¦¡¦ª¦¡¦¤ ¦£fileA ¦¤ ¦£fileB ¦¤ ¦¢ adm ¦¢ ¦£file2 ¦¤ ¦¢ prog ¦¢ ¦¦¦¤ ¦£¦¥ ¦¦¦¤ ¦£¦¥ ¦¦¦¡¦¡¦¡¦¥ ¦¦¦¤ ¦£¦¥ ¦¦¦¡¦¡¦¡¦¥ ¦¦¦¡¦¥ ¦¦¦¡¦¥ ¦¦¦¡¦¥ ======================================================================== ´ÙÀ½ °­ÀÇ´Â °èÃþ ±¸Á¶»óÀÇ È­ÀÏ ÂüÁ¶ ¹æ½Ä°ú È­ÀÏ ¸í¸í ±ÔÄ¢¿¡ ´ëÇØ ¼³¸í µå¸®°Ú½À´Ï´Ù. ------------------------------------------------------------------------ #11 À¯´Ï½Ã½º (adunis2 ) °èÃþ ±¸Á¶»óÀÇ È­ÀÏÂüÁ¶¿Í È­ÀÏ ¸í¸í ±ÔÄ¢ 01/29 18:10 97 line °èÃþ ±¸Á¶»óÀÇ È­ÀÏ ÂüÁ¶ ¹æ½Ä°ú È­ÀÏ ¸í¸í ±ÔÄ¢ -------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ»çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. -------------------------------------------------------------------- 1. °èÃþ ±¸Á¶»óÀÇ Æ¯Á¤ È­ÀÏ ÂüÁ¶ ¹æ½Ä °èÃþ ±¸Á¶»óÀÇ ÀÓÀÇÀÇ È­ÀÏÀ» ÂüÁ¶Çϱâ À§Çؼ­´Â °æ·Î¸íÀ»(Path name) »ç¿ëÇؾ߸¸ ÇÑ´Ù. °æ·Î¸íÀº È­ÀÏÀ̳ª µð·ºÅ丮¸¦ À¯ÀÏÇÏ°Ô Á¶¸íÇØ ÁØ´Ù. °æ·Î¸íÀº ¸í·É¾îÀÇ ÀÎÀڷμ­³ª ( ¿¹: cd /etc ), ¸í·É¾îÀÇ ½ÇÇà °á°ú·Î Ç¥½ÃµÇ´Âµ¥ ( ¿¹: pwd ¶Ç´Â tty ) ºó¹øÈ÷ »ç¿ëµÈ´Ù. °æ·Î¸íÀº À¯´Ð½º È­ÀÏ ½Ã½ºÅÛ³»ÀÇ È­ÀÏÀ̳ª µð·ºÅ丮ÀÇ À§Ä¡¸¦ Ç¥½ÃÇÑ´Ù. »ç½Ç»ó °æ·Î¸íÀº root µð·ºÅ丮ºÎÅÍ ÇöÀçÀÇ µð·ºÅ丮·Î ºÎÅÍ ´ë»ó µð·ºÅ丮 ¶Ç´Â È­ÀÏ·ÎÀÇ °æ·Î¸¦ Áö½ÃÇÑ´Ù. °æ·Î ÁöÁ¤Àº ½ÃÀÛ µð·ºÅ丮·Î ºÎÅÍ È­ÀÏ·ÎÀÇ ¸ðµç µð·ºÅ丮µéÀÇ À̸§À» Æ÷ÇÔÇÏ°Ô µÇ°í, °¢°¢ÀÇ µð·ºÅ丮 À̸§µéÀº /·Î ±¸ºÐµÇ¾î Áö°ÔµÈ´Ù. °æ·Î¸íÀº ´ÙÀ½°ú °°ÀÌ µÎ°¡Áö ¹æ½ÄÀ¸·Î ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù. . Absolute Path (Àý´ë °æ·Î) Àý´ë °æ·Î¸íÀº È­ÀÏ °èÃþ ±¸Á¶ÀÇ ÃÖ»óÀ§ °èÃþÀÎ root µð·ºÅ丮·Î ºÎÅÍ ½ÃÀÛÇÏ´Â È­ÀÏÀ̳ª µð·ºÅ丮ÀÇ À§Ä¡¸¦ ÂüÁ¶ÇÑ´Ù. root µð·ºÅ丮¸¦ ³ªÅ¸³»´Â Ç¥½ÄÀÌ / ÀÓÀ¸·Î ÀÎÇØ Àý´ë °æ·Î¸íÀº Ç×»ó / ¹®ÀÚ·Î ½ÃÀ۵Ǹç, ¿¬ÀÌ¾î ¿øÇÏ´Â È­ÀÏÀ̳ª µð·ºÅ丮ÀÇ À§Ä¡±îÁö ¼øÂ÷ÀûÀ¸·Î /·Î ±¸º°µÇ¾îÁø µð·ºÅ丮µéÀÌ ³ª¿­µÈ´Ù. ¿¹¸¦ µé¸é ´ÙÀ½°ú °°´Ù. /home/kdwdir/myfile . Relative Path »ó´ë °æ·Î¸íÀº ÇöÀçÀÇ µð·ºÅ丮¿Í »ó´ëÀûÀÎ À§Ä¡ÀÇ È­ÀÏ ¶Ç´Â µð·ºÅ丮¸¦ ÂüÁ¶ÇÑ´Ù. °æ·Î ÁöÁ¤Àº °æ·ÎÀÇ ½ÃÀÛÁ¡ÀÌ root°¡ ¾Æ´ÔÀ¸·Î ÀÎÇØ /·Î ½ÃÀÛµÇÁö ¾Ê´Â´Ù. »ó´ë °æ·Î¸íÀº µð·ºÅ丮¸íÀ¸·Î ½ÃÀ۵ǰí, ¿¬À̾î /·Î ±¸º°µÇ¾îÁø ´ë»ó µð·ºÅ丮 ¶Ç´Â È­ÀÏÀÇ À§Ä¡±îÁöÀÇ µð·ºÅ丮µéÀÌ ³ª¿­µÈ´Ù. »ó´ë °æ·ÎÀÇ ¿¹Á¦´Â ´ÙÀ½°ú °°´Ù. subdir/workdir/testfile »ó´ë °æ·Î¸íÀº ÇöÀç µð·ºÅ丮ÀÇ »óÀ§ ¹× ÇÏÀ§ µð·ºÅ丮¹× È­ÀϵéÀ» ¼Õ½±°Ô ÂüÁ¶ÇÒ ¼ö ÀÖ´Â µÎ°¡Áö ¹®ÀÚ¸¦ Á¦°øÇϴµ¥, ´ÙÀ½°ú °°´Ù. 1) . ÇöÀçÀÇ µð·ºÅ丮¸¦ °¡¸£Å°´Â ½Éº¼ ¿¹) ./subdir/subfile 2) .. ÇöÀçÀÇ µð·ºÅ丮ÀÇ Á÷Àü »óÀ§ µð·ºÅ丮¸¦ °¡¸£Å°´Â ½Éº¼ ÀÌ ½Éº¼Àº Çѹø¿¡ º¹¼ö°³ ÁöÁ¤ÇÔÀ¸·Î½á ¿©·¯°³ÀÇ »óÀ§ µð·ºÅ丮¸¦ ÇѲ¨¹ø¿¡ ÂüÁ¶ÇÒ ¼ö ÀÖ´Ù. ¿¹) ../othersubdir/subfile ../../otherdir/file 2. È­ÀÏ°ú µð·ºÅ丮µéÀÇ ¸í¸í ±ÔÄ¢ È­ÀÏ°ú µð·ºÅ丮¿¡ À̸§À» ºÎ¿©Çϴµ¥ À־ »ç¿ëµÇ´Â °ü·Ê´Â ´ÙÀ½°ú °°´Ù. . È­ÀÏ°ú µð·ºÅ丮µé¿¡ ÀǹÌÀÖ°í, ±â¼úÀûÀÎ À̸§µéÀ» ºÎ¿©ÇÔÀÌ ¹Ù¶÷Á÷ ÇÏ´Ù. . È­ÀϸíÀº ¹Ýµå½Ã ¹®ÀÚ·Î ½ÃÀÛÇØ¾ß ÇÑ´Ù. ù¹®ÀÚ·Î +, -, .¸¦ »ç¿ëÇÏ´Â °ÍÀº ÇÇÇÑ´Ù. . Ư¼ö¹®ÀÚ( special character )µéÀº ½©¿¡°Ô ´Ù¸¥ Àǹ̸¦ °®±â ¶§¹®¿¡ »ç¿ëÀº ÇÇÇÑ´Ù. ½©¿¡ ÀÇÇØ »ç¿ëµÇ´Â Ư¼ö ¹®ÀÚ´Â ´ÙÀ½°ú °°´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢? @ # $ ^ & * ( ) ` [ ] \ | ; ' " < > ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ . È­ÀÏ¸í¿¡´Â °ø¹é¹®ÀÚ¸¦ »ç¿ëÇÏÁö ¾Ê´Â´Ù. ½©Àº ¸í·É¾î ¶óÀλ󿡼­ ±¸º°Àڷμ­ °ø¹é¹®ÀÚ¸¦ »ç¿ëÇÑ´Ù. °ø¹é¹®ÀÚ¸¦ ´ë½ÅÇÏ¿© .(period)À̳ª _(underscore)¸¦ »ç¿ëÇÑ´Ù. . À¯´Ð½º´Â ´ë¹®ÀÚ¿Í ¼Ò¹®ÀÚ¸¦ ±¸º°ÇÑ´Ù. ¿¹¸¦µéÀÚ¸é report, Report, REPORT, rePort´Â ´Ù¸¥ È­ÀϸíÀ¸·Î ¸ðµÎ º°°³ÀÌ´Ù. . È­ÀϸíÀº µð·ºÅ丮³»¿¡¼­ À¯ÀÏÇؾ߸¸ ÇÑ´Ù. µ¿ÀÏ È­ÀϸíÀº ´Ù¸¥ µð·ºÅ丮¿¡¼­ »ç¿ëµÉ ¼ö ÀÖ´Ù. È­ÀϸíÀº s5 È­ÀϽýºÅÛ¿¡¼­ ÃÖ´ë 14 ¹®ÀÚÀÇ ±æÀÌ·Î ºÎ¿©ÇÒ ¼ö ÀÖÀ¸¸ç, ufs È­ÀÏ¿¡¼­´Â ÃÖ´ë 256 ¹®ÀÚ¸¦ ºÎ¿©ÇÒ ¼ö ÀÖ´Ù. È­ÀÏ ½Ã½ºÅÛ Á¾·ù¿¡ ´ëÇؼ­´Â ÀÌÈÄ¿¡ ¼³¸íµÉ °ÍÀÌ´Ù. È­ÀϸíÀÇ È®ÀåÀÚ´Â º¸´Ù ÀǹÌÀÖ´Â È­ÀϸíµéÀ» Á¦°øÇϱâÀ§ÇØ »ç¿ëµÉ¼ö ÀÖ´Ù. È®ÀåÀÚµéÀº ÀϹÝÀûÀ¸·Î .µÚ¿¡ ¿¬ÀÌ¾î ±â¼úµÈ´Ù. À¯´Ð½º´Â C¾ð¾î ÇÁ·Î±×·¥À» Ç¥½ÃÇϱâÀ§ÇØ .c¸¦ »ç¿ëÇÏ°í, ½© ÇÁ·Î±×·¥À» Ç¥ÇöÇϱâ À§ÇØ .sh È®ÀåÀÚ¸¦ »ç¿ëÇÑ´Ù. ======================================================================== ´ÙÀ½ °­ÀÇ´Â ½©¿¡ ÀÇÇØ Æ¯º°ÇÑ Àǹ̰¡ ºÎ¿©µÇ´Â Ư¼ö¹®Àڵ鿡 ´ëÇØ ¼³¸í µå¸®°Ú½À´Ï´Ù. ------------------------------------------------------------------------ #12 À¯´Ï½Ã½º (adunis2 ) À¯´Ð½º ½© Ư¼ö¹®ÀÚ: Special characters 01/29 18:12 118 line À¯´Ð½º ½© Ư¼ö¹®ÀÚ : Special characters -------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ»çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. -------------------------------------------------------------------- 1. Shell special characters ( ½© Ư¼ö¹®ÀÚ ) ¸î¸î ¹®ÀÚµéÀº ½©¿¡°Ô Ưº°ÇÑ Àǹ̸¦ °®´Â´Ù. ÀÌ·¯ÇÑ ±ÛÀÚµéÀº ½©ÀÌ ¸í·É¾î ¶óÀΠ󸮸¦ ¼öÇàÇÏ´Â µ¿¾È¿¡ ±×µéÀ» ¸¸³µÀ»¶§ ¿ì¼± ¹ø¿ªµÈ´Ù. ( À̺κп¡ ´ëÇÑ ÀÚ¼¼ÇÑ ¼³¸íÀº ÀÌÀüÀÇ ¸í·É¾î ¶óÀÎÀÇ Ã³¸®°úÁ¤ ºÎºÐÀ» Âü°í ¹Ù¶÷ ) À̹ø °­ÀÇ¿¡¼­´Â Bourne Shell¿¡¼­ »ç¿ëµÇ¾îÁö´Â Ư¼ö¹®ÀÚ¸¦ Âü°í·ÎÇؼ­ ¼³¸íµÉ °ÍÀ̸ç, ´Ù¸¥ ½© ( Korn, C, Job shell )¿¡¼­ °íÀ¯ÇÏ°Ô Á¦°øµÇ´Â Ư¼ö ¹®ÀÚ¿¡´ëÇÑ ¼³¸íÀº À¯´Ï½Ã½º Á¦°ø ¸Þ´º¾ó¹× ¿Â¶óÀÎ ÂüÁ¶ ¸Þ´º¾óÀ» ÂüÁ¶Çϱ⠹ٶõ´Ù. ¿ì¼± ±âº»ÀûÀÎ ½© Ư¼ö¹®ÀÚµéÀ» ³ª¿­ÇØ º»´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢È­ÀÏ¸í ¦¢ * ¦¢ 0 ¶Ç´Â ±×ÀÌ»óÀÇ ¹®ÀÚ¸¦ ´ëÄ¡ ¦¢ ¦¢ ´ëÄ¡¹®ÀÚ ¦§¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ ¦¢ ? ¦¢ ÇϳªÀÇ ¹®ÀÚ¸¦ ´ëÄ¡ ¦¢ ¦¢ ¦§¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ ¦¢ [] ¦¢ []¾È¿¡ ÁöÁ¤µÈ ¹®ÀÚµéÁß Çϳª¿Í ´ëÄ¡ ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ ¦¢- ¶Ç´Â +¦¢ ¸í·É¾îÀÇ ¿É¼ÇÀ» Ç¥½Ã ¦¢ ¦¢¸í·É¾î ¦§¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ ½ÇÇà°ú ¦¢ < ¦¢ ÁöÁ¤ÇÑ È­ÀÏ·Î ºÎÅÍ ÀÔ·ÂÀ» ¹ÞÀ½ ¦¢ ¦¢ °ü·ÃµÈ ¦§¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ Ư¼ö¹®ÀÚ ¦¢ > ¦¢ ÁöÁ¤ÇÑ È­ÀÏ¿¡ Ãâ·ÂÀ» ÀúÀå ¦¢ ¦¢ ¦§¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ ¦¢ >> ¦¢ ÁöÁ¤ÇÑ È­ÀÏ¿¡ Ãâ·ÂÀ» Ãß°¡(append) ¦¢ ¦¢ ¦§¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ ¦¢ | ¦¢ ¸í·É¾îÀÇ Ãâ·ÂÀ» ´Ù¸¥ ¸í·É¾îÀÇ ¦¢ ¦¢ ¦¢ ¦¢ ÀÔ·ÂÀ¸·Î Àüȯ. ¦¢ ¦¢ ¦§¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ ¦¢ & ¦¢ ¹é±×¶ó¿îµå¿¡¼­ ¸í·É¾î¸¦ ½ÇÇà ¦¢ ¦¢ ¦§¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ ¦¢ ; ¦¢ µ¿ÀÏ ¸í·É¾î ¶óÀο¡¼­ º¹¼ö°³ÀÇ ¦¢ ¦¢ ¦¢ ¦¢ ¸í·É¾î¸¦ ½ÇÇà ¦¢ ¦¢ ¦§¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ ¦¢ () ¦¢ Á¶ÇÕµÈ Ãâ·ÂÀ» À§ÇØ ¸í·É¾î¸¦ ¹­´Â´Ù.¦¢ ¦¢ ¦§¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ ¦¢ `` ¦¢ ¸í·É¾î ´ëÄ¡½Ã¿¡ »ç¿ë ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢Æ¯¼ö¹®ÀÚ¸¦¦¢ "" ¦¢ $,`,\¸¦ Á¦¿ÜÇÑ ¸ðµç Ư¼ö¹®ÀÚ¸¦ ¦¢ ¦¢ÀϹݹ®ÀÚÈ­¦¢ ¦¢ ÀϹݹ®ÀڷΠó¸® ¦¢ ¦¢ÇÏ´Â ¦§¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢º¸È£¹®ÀÚ ¦¢ '' ¦¢ ¸ðµç Ư¼ö¹®ÀÚ¸¦ ÀϹݹ®ÀڷΠó¸® ¦¢ ¦¢ ¦§¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ ¦¢ \ ¦¢ ´ÙÀ½ Çѹ®ÀÚ¸¦ ÀϹݹ®ÀڷΠó¸® ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÀÌ µµÇ¥¿¡¼­ »ç¿ëµÈ º¸È£¹®ÀÚ¶ó´Â ¿ë¾î´Â ½©¿¡ ÀÇÇØ Æ¯¼öÇÏ°Ô ¹ø¿ªµÇ¾î 󸮵Ǵ ¹®ÀÚµéÀ» º»¿¬ÀÇ ¹®Àڷμ­ ó¸®Çϱâ À§ÇØ ½©ÀÌ ¹ø¿ªÇÏÁö ¸øÇϵµ·Ï ¸·¾ÆÁִ Ư¼ö¹®ÀÚ¸¦ ÀǹÌÇÑ´Ù. 2. È­ÀÏ¸í ´ëÄ¡¹®ÀÚ ÀÌ Á¾·ùÀÇ Æ¯¼ö¹®ÀÚµéÀº ´ÜÀÏ ¸í·É¾î ¶óÀο¡¼­ ¿©·¯ È­ÀÏÀ̳ª µð·ºÅ丮¸¦ ¹­¾î¼­ ÂüÁ¶ÇÒ¼ö ÀÖµµ·Ï ÇØÁØ´Ù. ÀÌ ¹®ÀÚµéÀº È­ÀÏ¸í³»ÀÇ ½ÇÁ¦ ¹®ÀÚµé·Î ½©¿¡ÀÇÇØ ´ëÄ¡µÇ±â ¶§¹®¿¡ metacharacters ¶Ç´Â wild cards¶ó ºÒ¸®¿î´Ù. ÀÌ·¯ÇÑ ´ëÄ¡ ÀÛ¾÷Àº ÀÌÀü¿¡ ¼³¸íÇß´ø ¸í·É¾î ¶óÀÎÀÇ Ã³¸®°úÁ¤Áß ½©ÀÇ ¸í·É¾î ¶óÀÎ ºÐ¼®°úÁ¤¿¡¼­ º¯È¯ÀÌ ¼öÇàµÈ´Ù. È­ÀÏ¸í ´ëÄ¡¿¡ »ç¿ëµÇ´Â Ư¼ö¹®ÀÚ´Â ´ÙÀ½°ú °°´Ù. . Asterisk ( * ) * ¹®ÀÚ´Â 0 ¶Ç´Â ±×»óÀÇ ¹®ÀÚ¿Í ´ëÄ¡µÈ´Ù. ¿¹¸¦ µéÀÚ¸é »ç¿ëÀÚ°¡ b*¶ó ÁöÁ¤Çß´Ù¸é ù¹®ÀÚ°¡ bÀÎ È­Àϸíµé°ú ´ëÄ¡µÇ°í, *m*À̶ó°í ÁöÁ¤Çß´Ù¸é È­ÀÏ¸í ¾îµðµçÁö mÀ̶ó´Â ¹®ÀÚ°¡ ÀÖ´Â È­Àϸí°ú ´ëÄ¡µÇ¸ç, b*e¶ó ÁöÁ¤µÇ¾úÀ» °æ¿ì¿¡´Â È­ÀϸíÀÇ Ã¹¹®ÀÚ°¡ bÀÌ°í ¸¶Áö¸· ¹®ÀÚ°¡ eÀÎ È­Àϸíµé°ú ´ëÄ¡ µÇ¾îÁø´Ù. ¹°·Ð *¸¸ÀÌ ÁöÁ¤µÇ¾úÀ» °æ¿ì¿¡´Â ¸ðµç È­Àϸíµé°ú ´ëÄ¡µÈ´Ù. . Question Mark ( ? ) ? ¹®ÀÚ´Â Çѹ®ÀÚ¿Í ´ëÄ¡µÈ´Ù. ¿¹¸¦µé¸é p?¶ó°í ÁöÁ¤Çϸé È­ÀϸíÀÇ Ã¹¹®ÀÚ°¡ ?ÀÎ, µÎ ¹®ÀÚ·Î ±¸¼ºµÈ È­Àϸíµé°ú ´ëÄ¡µÈ´Ù. ???e¿Í °°ÀÌ ?¸¦ ¿©·¯°³ ÁöÁ¤ÇÔÀ¸·Î½á º¹¼ö ¹®ÀÚ¿Í ´ëÄ¡ ½Ãų¼öµµ ÀÖ´Ù. . Brackets ( [] ) [ ¿Í ] ¹®ÀÚ »çÀÌ¿¡ ÀÏ·ÃÀÇ ¹®ÀÚµéÀ» ÁöÁ¤Çϴµ¥, ÀÌ °æ¿ì ÁöÁ¤µÈ ÀÏ·ÃÀÇ ¹®ÀÚµéÁß ÇÑ ±ÛÀÚ¿Í ÀÏÄ¡µÇ´Â È­Àϸí°ú ´ëÄ¡µÈ´Ù. ¿¹¸¦µé¸é reportju[ln]À̶ó°í ÁöÁ¤ µÇ¾ú´Ù¸é reportjul ¶Ç´Â reportjun°ú ÀÏÄ¡µÇ´Â È­ÀϸíÀ¸·Î ´ëÄ¡µÈ´Ù. [ ¿Í ] »çÀÌ¿¡ ÁöÁ¤µÈ µÎ¹®ÀÚ »çÀÌ¿¡ - ¹®ÀÚ¸¦ »ç¿ëÇÔÀ¸·Î½á ¼±ÅõǴ ¹®ÀÚÀÇ ¹üÀ§¸¦ ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù. ¿¹¸¦µé¸é memo[1-4]¶ó°í ÁöÁ¤ÇßÀ» °æ¿ì memo1, memo2, memo3, memo4 ¶ó´Â À̸§À» °®´Â È­Àϸíµé°ú ´ëÄ¡µÈ´Ù. ¶ÇÇÑ [ ¿Í ] »çÀÌ¿¡ ù¹®ÀÚ·Î !¸¦ ÁöÁ¤ÇÒ °æ¿ì, ¿¬À̾î ÁöÁ¤µÈ ¹®ÀÚ¿¡´ëÇÑ ºÎÁ¤ÀÇ Àǹ̸¦ °®´Â´Ù. ¿¹¸¦µé¸é *[!o]¶ó ÁöÁ¤Çϸé, È­ÀϸíÀÇ ¸¶Áö¸· ¹®ÀÚ°¡ o°¡ ¾Æ´Ñ È­ÀϸíÀ» °®´Â È­Àϵé°ú ´ëÄ¡µÈ´Ù. »ó±âÀÇ Æ¯¼ö¹®ÀÚµéÀº È­Àϸí ÀÔ·Â ½Ã°£ÀÇ ´ÜÃà°ú ±ä È­ÀϸíÀ» Àû°Ô ÀÔ·Â ÇÔÀ¸·Î½á ¹ß»ýÇÏ´Â ¿¡·¯µîÀ» ÁÙ¿©ÁØ´Ù. Áß¿äÇÑ °ÍÀº Á¤È®ÇÑ È­ÀϸíÀ» ¸ð¸¦ °æ¿ì¿¡ ¿ä±äÇÏ°Ô ¾µ¼ö ÀÖ´Ù´Â °ÍÀÌ´Ù. ( ¿¹Á¦ ) ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $ls * ¦¢ ¦¢ File.new file1 file5 fig fin filea file.new fun ¦¢ ¦¢ $ls fi? ¦¢ ¦¢ fig fin ¦¢ ¦¢ $ls f?? ¦¢ ¦¢ fig fin fun ¦¢ ¦¢ $ls *.new ¦¢ ¦¢ File.new file.new ¦¢ ¦¢ $ls file[1a] <--- 1 ¶Ç´Â a¿Í ´ëÄ¡ ¦¢ ¦¢ file1 filea ¦¢ ¦¢ $ls file[!1-5] <--- 1,2,3,4,5°¡ ¾Æ´Ñ ¹®ÀÚ¿Í ´ëÄ¡ ¦¢ ¦¢ filea ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ======================================================================== ´ÙÀ½ °­ÀǴ Ư¼ö¹®ÀÚµéÀ» ½©ÀÌ Ã³¸®ÇÏÁö ¸øÇϵµ·Ï ¸·¾ÆÁÖ´Â º¸È£¹®ÀÚ¿¡ ´ëÇؼ­ ¼³¸í µå¸®°Ú½À´Ï´Ù. ------------------------------------------------------------------------ #13 À¯´Ï½Ã½º (adunis2 ) À¯´Ð½º ½© Ư¼ö¹®ÀÚÀÇ »ç¿ë Á¦¾î 01/29 18:13 88 line À¯´Ð½º ½© Ư¼ö¹®ÀÚÀÇ »ç¿ëÁ¦¾î -------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ»çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. -------------------------------------------------------------------- 1. Shell special characters ( ½© Ư¼ö¹®ÀÚ ) ÀÌÀü °­ÀÇ¿¡¼­ È­Àϸí ÁöÁ¤»óÀÇ Æí¸®¸¦ À§ÇØ Á¦°øµÇ´Â ´ëÄ¡¹®Àڵ鿡 ´ëÇؼ­ ÀÚ¼¼È÷ ¼³¸íµÆ´Ù. À̹ø¿¡´ÂƯÁ¤ ¸ñÀûÀ» À§ÇØ ¿¹¾àµÈ ¹®ÀÚµéÀ» °íÀ¯ÀÇ ¹®Àڷμ­ »ç¿ëÇÒ¼ö ÀÖµµ·Ï Çã¿ëÇÏ´Â ¸î°¡Áö Ư¼ö ¹®ÀÚµé ( ÀÌÇÏ º¸È£¹®ÀÚ¶ó°í ºÎ¸¥´Ù. )¿¡ ´ëÇØ ¼³¸í ÇÑ´Ù. ½©ÀÌ Æ¯¼ö¹®ÀÚµéÀÌ °®°í Àִ Ư¼öÇÑ Àǹ̸¦ ¹ø¿ªÇÏÁö ¸øÇÏ°Ô ÇÔÀ¸·Î½á Ư¼ö¹®ÀÚ¸¦ ÀϹݹ®Àڷμ­ »ç¿ëÇϱâ À§Çؼ­´Â ½Öµû¿ÈÇ¥("), µû¿ÈÇ¥(')·Î¼­ ¹­¾îÁְųª, ¿ª½½·¡½¬(\)¸¦ Ư¼ö¹®ÀÚ ¾Õ¿¡ ±â¼úÇÑ´Ù. ½©Àº ¾Õ°ú °°ÀÌ º¸È£µÇ¾îÁø Ư¼ö¹®ÀÚµéÀº ÀϹݹ®ÀÚ·Î °£ÁÖÇÏ¿© ó¸®ÇÑ´Ù. ÀÌ¿Í°°Àº º¸È£±â´ÉµéÀº Ư¼ö¹®ÀÚµéÀÇ ¹ø¿ªÀ» Á¦¾îÇÏ´Â ½© ÇÁ·Î±×·¥À» ÀÛ¼ºÇϴµ¥ À־ ¸Å¿ì Áß¿äÇÏ´Ù. . ½Öµû¿ÈÇ¥ (Double Quotes) µÎ°³ÀÇ ½Öµû¿ÈÇ¥¿¡(") ÀÇÇØ Æ¯¼ö¹®ÀÚµéÀ» µÑ·¯½×À¸¸é ½©Àº $ (Dollar symbol), ` (Back quote), \ (Backslash)¸¦ Á¦¿ÜÇÑ ¸ðµç Ư¼ö¹®ÀÚµéÀ» ÀϹݹ®ÀڷΠó¸®ÇÑ´Ù. . µû¿ÈÇ¥ (Single Quotes) µû¿ÈÇ¥´Â ´õ¿í Á¦ÇÑÀûÀÌ´Ù. ½©Àº µû¿ÈÇ¥³»¿¡ ±â¼úµÇ¾î ÀÖ´Â ¸ðµç Ư¼ö¹®ÀÚµéÀ» ÀϹݹ®ÀڷΠó¸®ÇÏ°Ô µÈ´Ù. . ¿ª½½·¡½¬ (Backslash) ´ëü·Î ¿ª½½·¡½¬´Â µû¿ÈÇ¥·Î Çѹ®ÀÚ¸¦ µÑ·¯ ½×Àº°Í°ú µ¿ÀÏÇÑ Àǹ̸¦ Áö´Ñ´Ù. ¿ª½½·¡½¬´Â ¿ÀÁ÷ ¿¬ÀÌ¾î ±â¼úµÇ¾î ÀÖ´Â Çѹ®ÀÚ¿¡ ´ëÇؼ­¸¸ È¿·ÂÀ» ¹ÌÄ¡±â ¶§¹®¿¡ ¿ª½½·¡½¬¸¦ »ç¿ëÇÒ¶§´Â °³°³ÀÇ Æ¯¼ö¹®ÀÚ¸¶´Ù º°µµ·Î ÁöÁ¤ÇØ ÁÖ¾î¾ß ÇÑ´Ù. ¿¹¸¦µé¸é **°°Àº °æ¿ì´Â \*\* °°Àº Çü½ÄÀ¸·Î ÁöÁ¤ÇÑ´Ù. ´ÙÀ½Àº º¸È£¹®ÀÚÀÇ ±â´ÉÀ» Àߺ¸¿©ÁÖ´Â ¿¹Á¦µéÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢(¿¹Á¦1) ¦¢ ¦¢ $echo * ¦¢ ¦¢ File1 File2 fileA fileB newfile testfile ¦¢ ¦¢ $echo file? ¦¢ ¦¢ fileA fileB ¦¢ ¦¢ $echo [Ff]ile? ¦¢ ¦¢ File1 File2 FileA FileB ¦¢ ¦¢(¿¹Á¦2) ¦¢ ¦¢ $echo "*" ¦¢ ¦¢ * ¦¢ ¦¢ $echo "\" ¦¢ ¦¢ > <------- ¼­ºêÇÁ·ÒÇÁÆ®°¡ Ç¥½ÃµÈ °á°úÀÌ´Ù. ¦¢ ¦¢ <^c> ¦¢ ¦¢(¿¹Á¦3) ¦¢ ¦¢ $echo '* \' ¦¢ ¦¢ * \ ¦¢ ¦¢(¿¹Á¦4) ¦¢ ¦¢ $echo \* \\ ¦¢ ¦¢ * \ ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ (¿¹Á¦ ¼³¸í) echo¸í·É¾î´Â Ç¥ÁØÃâ·Â»ó¿¡(Åë»ó ´Ü¸»ÀÇ È­¸éÀÌ´Ù. Ãâ·Â¹æÇâÀÇ Á¦¾î´Â ¹Ù·Î Á÷ÀüÀÇ °­ÀÇ ³»¿ëÀ» ÂüÁ¶ ¹Ù¶õ´Ù. ) ÁöÁ¤ÇÑ ¸í·É¾î ¶óÀλóÀÇ ÀÎÀÚ (arguments)¸¦ Ç¥½ÃÇϵµ·Ï ÇÏ´Â ¸í·ÉÀÌ´Ù. ÀÌ ¸í·ÉÀº ½©ÀÇ Æ¯¼ö¹®ÀÚ Á¦¾î °á°ú¸¦ È®ÀÎÇϴµ¥ ¸Å¿ì À¯¿ëÇÑ ¸í·ÉÀÌ´Ù. (¿¹Á¦1)¿¡¼­´Â ¸í·É¾î ¶óÀÎ»ó¿¡ *,?,[]¿Í °°Àº Ư¼ö¹®ÀÚ¸¦ »ç¿ëÇÏ°í ÀÖ´Ù. º¸È£¹®ÀÚ¸¦ »ç¿ëÇÏ°í ÀÖÁö¾Ê¾Æ Àû´çÇÑ È­ÀϵéÀÌ ¼±ÅõǾî Ãâ·ÂµÇ´Â °ÍÀ» º¼¼ö ÀÖ´Ù. (¿¹Á¦2)¿¡¼­´Â Ư¼ö¹®ÀÚµéÀÌ ½Öµû¿ÈÇ¥¸¦ »ç¿ëÇÏ¿© º¸È£µÇ°í ÀÖ´Â °ÍÀ» º¼¼ö ÀÖ´Ù. ±×·¯³ª °á°ú¸¦ º¸¸é *´Â º¸È£µÇ³ª, \´Â Ư¼ö¹®Àڷμ­ ±×´ë·Î 󸮵Ǵ °ÍÀ» º¼¼ö ÀÖ´Ù. ½©Àº ¸í·É¾î ¶óÀΰè¼ÓÀÇ Àǹ̷Π¸í·É¾î ¶óÀÎ ³¡¿¡ ÁöÁ¤µÇ´Â ¿ª½½·¡½¬¸¦ »ç¿ëÇÑ´Ù. ÀÌ´Â ¸î ¶óÀο¡ °ÉÄ£ ±ä ¸í·É¾î ¶óÀÎÀ» ÀÔ·ÂÇϱâÀ§ÇØ »ç¿ëÇÑ´Ù. (¿¹Á¦3)°ú (¿¹Á¦4)´Â *¿Í \, µÎ Ư¼ö¹®ÀÚÀÇ Àǹ̸¦ º¸È£ÇÏ´Â ¹æ½ÄÀ» º¸¿©ÁÖ°í ÀÖ´Ù. µû¿ÈÇ¥¿¡ µÑ·¯ ½×¿´°Å³ª, ¿ª½½·¹½¬°¡ ¼±ÇàµÇ¾î Àִ Ư¼ö¹®ÀÚµéÀº ½©·ÎºÎÅÍ ¸ðµÎ º¸È£µÇ¾îÁø´Ù. ======================================================================== ´ÙÀ½ °­ÀÇ´Â À¯´Ð½º°¡ Á¦°øÇÏ´Â ÆíÁý±â(Editor)¿¡ ´ëÇØ ¼³¸íµå¸®°Ú½À´Ï´Ù. ------------------------------------------------------------------------ #14 À¯´Ï½Ã½º (adunis2 ) À¯´Ð½º ÅؽºÆ® ÆíÁý±â: ÀϹÝÀû Ư¡ 01/29 18:14 77 line À¯´Ð½º ÅؽºÆ® ÆíÁý±â : ÀϹÝÀû Ư¡ ------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ»çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. -------------------------------------------------------------------- 1. À¯´Ð½º ÅؽºÆ® ÆíÁý±â ( UNIX Text Editors ) ÅؽºÆ® ÆíÁý±â´Â È­ÀÏÀ» »ý¼ºÇÏ°í ¼öÁ¤Çϱâ À§ÇØ »ç¿ëÇÏ´Â À¯´Ð½º ÇÁ·Î±×·¥ÀÌ´Ù. ´Ù¸¥ ¿öµåÇÁ·Î¼¼¼­ ÇÁ·Î±×·¥°ú °°ÀÌ ÅؽºÆ® ÆíÁý±â´Â ÅؽºÆ®¸¦ Á¤ÇüÈ­ ½ÃÅ°Áö ¾Ê´Â´Ù. À¯´Ð½º´Â ÅؽºÆ®, Å×ÀÌºí ¶Ç´Â ¿¬»ê½ÄÀÇ Á¤ÇüÈ­(formatting)¸¦ ´Ù·ç±â À§ÇÑ °³°³ÀÇ ÇÁ·Î±×·¥µéÀ» °®´Â´Ù. ÀÌ·¯ÇÑ ÇÁ·Î±×·¥µéÀº ÀϹÝÀûÀ¸·Î ÅؽºÆ®³»¿¡ ³»Æ÷µÈ ÇüÅÂÀÇ ÄÚµåµéÀ» ¿ä±¸ÇÑ´Ù. ÄÚµåÈ­µÈ ÅؽºÆ® È­ÀϵéÀº ³»Æ÷µÈ ÄÚµåµéÀ» ¹ø¿ªÇÏ´Â Format processorÀÇ ÀÔ·ÂÀ¸·Î »ç¿ëµÇ°í, ¼øÂ÷ÀûÀ¸·Î ÅؽºÆ®¸¦ Á¤ÇüÈ­ ÇÑ´Ù. ´Ù¾çÇÑ Çü½ÄÀ» ¿ä±¸ÇÏ´Â È­ÀϵéÀº ÅؽºÆ® ÆíÁý ±â´É°ú Á¤ÇüÈ­ ±â´ÉÀ» ÇÔ²² Áö¿øÇÏ´Â ¿öµåÇÁ·Î¼¼¼­ ÇÁ·Î±×·¥À» ÀÌ¿ëÇÏ¸é ½±°Ô ´Ù·ê¼ö ÀÖ´Ù. µÎ°³ÀÇ °£ÆíÇÑ Text formattersÀÎ pr°ú fmt¿¡ ´ëÇؼ­´Â ÀÌÈÄ¿¡ ¼³¸íµÉ °ÍÀÌ´Ù. 2. À¯´Ð½º ÆíÁý±âÀÇ Á¾·ù À¯´Ð½º´Â ¸î°³ÀÇ ÅؽºÆ® ÆíÁý±â¸¦ Á¦°øÇÑ´Ù. ¸î°³ÀÇ ÆíÁý±â´Â ¼±ÅÃµÈ ¶óÀλóÀÇ ÅؽºÆ®¸¸À» ó¸®ÇÏ°í(ed,ex,editµî), ±×¿ÜÀÇ ÆíÁý±âµéÀº Çѹø¿¡ ÇÑ È­¸é»óÀÇ ÅؽºÆ®¸¦ Á¶ÀÛÇÑ´Ù(vi,veditµî). Á¦ÇÑÀûÀÎ ±â´ÉµéÀ» Á¦°øÇÏ´Â ÆíÁý±âµµ ÀÖ´Ù(red, viewµî). ƯÁ¤ ÆíÁý±â¸¦ »ç¿ëÇÏ¿© »ý¼ºÇÑ È­ÀÏÀº ´Ù¸¥ ÆíÁý±â¿¡ ÀÇÇؼ­ ¼öÁ¤µÉ ¼ö ÀÖ´Ù. ´ëºÎºÐÀÇ À¯´Ð½º ÆíÁý±â´Â ¸í·É¾î¸¦ ÀԷ¹޾Æ, ¿ä±¸µÈ ±â´ÉÀ» ¼öÇàÇÏ´Â ÇüÅÂÀÇ ´ëÈ­½Ä 󸮸¦ ¼öÇàÇÑ´Ù. ºñ´ëÈ­½Ä ½ºÆ®¸² ÆíÁý±â(sed)´Â ¸í·É¾î ¶óÀÎ»ó¿¡ ÁöÁ¤µÈ ¶Ç´Â °¢°¢ÀÇ ÇÁ·Î±×·¥ È­Àϼӿ¡ µé¾îÀÖ´Â ÆíÁý ¸í·É¿¡ µû¶ó¼­ È­ÀÏÀ» ÆíÁýÇÑ´Ù. ÀÌ ÆíÁý±â´Â »ç¿ëÀÚÀÇ °£¼·ÀÌ ¿ä±¸µÇÁö ¾Ê´Â ¹Î°¨ÇÏÁö ¾Ê°í, ÀüüÀûÀÎ °»½ÅÀ» ¼öÇàÇϴµ¥ À¯¿ëÇÏ°í, ½© ÇÁ·Î±×·¥¿¡¼­ ºó¹øÈ÷ »ç¿ëµÈ´Ù. 3. À¯´Ð½º ÆíÁý±âÀÇ Æ¯¼º ¸í·É¾î °¢ À¯´Ð½º ÆíÁý±âµéÀº À¯´Ð½º ½© ¸í·É¾î°¡ ¾Æ´Ñ µ¶Æ¯ÇÑ ÇüÅÂÀÇ ÀÏ·ÃÀÇ ¸í·É¾îµéÀ» ÀνÄÇÑ´Ù. ÆíÁý¿ë ¹öÆÛ(buffer) ÆíÁý±â°¡ ±âµ¿µÇ¾úÀ»¶§, ÆíÁý µ¿¾È¿¡ ÅؽºÆ®¿Í ¼öÁ¤ »çÇ×ÀÌ ÀúÀåµÉ ¹öÆÛ¶ó ºÒ¸®¿ì´Â ÀϽÃÀû ÀÛ¾÷¿µ¿ªÀÌ ¸Þ¸ð¸®³»¿¡ ±¸ÃàµÈ´Ù. ¹öÆÛÀÇ ³»¿ëÀº ÇöÀçÀÇ ÆíÁý ÀÛ¾÷ µ¿¾È¿¡¸¸ Á¸ÀçÇÑ´Ù. ÆíÁýÀÌ Á¾·áµÇ¸é, ÀúÀåµÇ¾î¾ß ÇÒ ³»¿ëÀ̳ª, ÅؽºÆ®, º¯°æºÐÀº ¾ø¾îÁø´Ù. ´ÙÇེ·´°Ôµµ ÆíÁý±â´Â ¹öÆÛ³»¿¡ ÀúÀåµÇÁö ¾ÊÀº º¯°æ »çÇ×ÀÌ ÀÖÀ» °æ¿ì¿¡´Â ÀÌ¿¡ °üÇÑ ¸Þ¼¼Áö¸¦ »Ñ·ÁÁØ´Ù. ±âÁ¸ÀÇ È­ÀÏÀÌ ÆíÁýµÇ¸é, È­ÀÏÀº ¹öÆÛ³»¿¡ º¹»çµÈ´Ù. ¹öÆÛ³»ÀÇ º¹»çµÈ È­ÀÏÀÌ º¯°æµÇ¸é ÀúÀåÇÒ¼öµµ, º»·¡ÀÇ È­ÀÏ¿¡ ¿µÇâÀ» ÁÖÁö ¾Ê°í ¹«½ÃÇÒ ¼ö ÀÖ´Ù. ¿î¿µ ¸ðµå (Operation mode) ÆíÁý±â´Â ¸í·É¾î ¸ðµå ¶Ç´Â ÅؽºÆ® ÀÔ·Â ¸ðµåÁß Çϳª·Î ÀÛ¾÷ÀÌ ¼öÇàµÈ´Ù. ¸í·É¾î ¸ðµå´Â º¹»ç, À̵¿, »èÁ¦µîÀÇ ÅؽºÆ® Á¶ÀÛÀ» ¼öÇàÇÒ ¼ö ÀÖ´Ù. ÆíÁý ÀÛ¾÷½Ã¿¡ »ç¿ëÀÚ´Â ¸í·É¾î ¸ðµå¿Í ÀÔ·Â ¸ðµå Áß ÇÊ¿ä·ÎÇÑ ¸ðµå·Î º¯°æÇÒ ¼ö ÀÖ´Ù. µðÆúÆ® ¸ðµå( ÆíÁý±â ±âµ¿ÈÄ Ã³À½ À§Ä¡ÇÏ°Ô µÇ´Â ¸ðµå)´Â ¸í·É¾î ¸ðµåÀÌ´Ù. À̹ø °­ÀÇ¿¡¼­´Â ¶óÀÎ ¿¡µðÅÍÀÎ ed¿Í ½ºÅ©¸° ¿¡µðÅÍÀÎ vi¿¡´ëÇØ ¼³¸íÇÒ °ÍÀÌ´Ù. ºñ·Ï ½ºÅ©¸° ¿¡µðÅÍÀÎ vi°¡ ´õ À¶Å뼺ÀÖ°í, »ç¿ëÀÚ¿¡ Ä£¼÷ÇÏÁö¸¸, vi°¡ »ç¿ëºÒ°¡´ÉÇÒ ¶§¿¡ ¿¡µðÅ͸¦ ¿ä±¸ÇÏ´Â ½Ã½ºÅÛ À¯Áöº¸¼ö ÀÛ¾÷ÀÌ ¼öÇàµÉ ¶§¸¦ À§ÇØ, ed ¿¡µðÅÍ¿¡ ´ëÇÑ ¼³¸íÀ» ¼±Çà ÇÒ °ÍÀÌ´Ù. ¶ÇÇÑ ed ¿¡µðÅÍ´Â ÇÊ¿ä·ÎÇÏ´Â ±âº»ÀûÀÎ ÆíÁý ±â´ÉµéÀ» Á¦°øÇÏ´Â ¹Ý¸é¿¡ ÀûÀº Å©±âÀÇ ÇÁ·Î±×·¥À̱⠶§¹®¿¡, ¿î¿µÃ¼Á¦ÀÇ Å×ÀÌÇÁ»ó¿¡ °è¼ÓÀûÀ¸·Î Æ÷Ç﵃ °ÍÀÓÀ¸·Î ¹ø°Å·Ó´Ù ÇÏ´õ¶óµµ ¹è¿öµÎ´Â °ÍÀÌ À¯¸®ÇÒ °ÍÀÌ´Ù. ======================================================================== ´ÙÀ½ °­ÀÇ´Â À¯´Ð½º ¹®¼­ ÆíÁý±âÀÎ ed¿¡ ´ëÇؼ­ ¼³¸í µå¸®°Ú½À´Ï´Ù. ------------------------------------------------------------------------ #15 À¯´Ï½Ã½º (adunis2 ) ¶óÀÎ ÆíÁý±â edÀÇ ±âº» »çÇ× 01/31 09:13 178 line ¶óÀÎ ¿¡µðÅÍ : ed ÆíÁý±âÀÇ ±âº» »çÇ× ------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ»çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. -------------------------------------------------------------------- 1. ¶óÀÎ ÆíÁý±â : ed ed´Â ¶óÀÎ ´ÜÀ§·Î È­ÀÏÀ» ÆíÁýÇÏ´Â ÆíÁý±âÀÌ´Ù. edÀÇ ÆíÁý ¸í·É¾îµéÀº º°µµ·Î ÆíÁýÇÒ ¶óÀÎÀÇ ¹üÀ§¸¦ ÁöÁ¤ÇÑ °æ¿ì¸¦ Á¦¿ÜÇÏ°í´Â ÇöÀçÀÇ ¶óÀο¡¸¸ ¿µÇâÀ» ¹ÌÄ£´Ù. ed ÆíÁý±â°¡ ½ÇÇà ¿ä±¸µÇ¾úÀ»¶§, »õ·Î¿î ÅؽºÆ®¸¦ Áï½Ã Ãß°¡ÇÒ¼ö ÀÖµµ·Ï ÇϱâÀ§ÇÏ¿© ±âÁ¸ÀÇ È­ÀÏÀÇ ¸¶Áö¸· ¶óÀÎÀÌ current lineÀÌ µÈ´Ù. ( current line : ¶óÀÎ ÆíÁý±â¿¡¼­ ÇÑ ½ËÁ¡¿¡¼­ÀÇ ÆíÁý ´ë»óÀÌ µÇ´Â ¶óÀÎ ) 1) È­ÀÏÀÇ »ý¼º ed¸¦ »ç¿ëÇÑ È­ÀÏÀÇ »ý¼º ÀýÂ÷´Â ´ÙÀ½°ú °°´Ù. (1) ed file_nameÀ» ÀÔ·ÂÇÏ¿© ed¸¦ ½ÇÇàÇÑ´Ù. ¸¸¾à È­ÀϸíÀÌ ÁöÁ¤ÇÏÁö ¾Ê¾Ò´Ù¸é, ÆíÁý±â¸¦ Á¾·áÇϱâ Àü¿¡ È­ÀϸíÀ» Á¦°øÇØ¾ß ÇÑ´Ù´Â °ÍÀ» ¸í½ÉÇØ¾ß ÇÑ´Ù. ±×·¸Áö¾ÊÀ» °æ¿ì¿¡´Â ÆíÁýÇÑ µ¥ÀÌŸ¸¦ ÀҴ´Ù. ±âÁ¸¿¡ ¾ø´Â È­ÀϸíÀ» ÁöÁ¤ÇßÀ» °æ¿ì¿¡´Â ed ÆíÁý±â´Â »õ·Î¿î È­ÀÏÀÓÀ» ³ªÅ¸³»´Â ?file_nameÀ» Ç¥½ÃÇÑ´Ù. ±×·¯³ª ±âÁ¸¿¡ Á¸ÀçÇÏ´Â È­ÀÏÀÏ °æ¿ì¿¡´Â È­ÀÏ»ó¿¡ Á¸ÀçÇÏ´Â ÅؽºÆ®ÀÇ byte¼ö°¡ ´ë½Å Ç¥½ÃµÈ´Ù. ÆíÁý±â°¡ ½ÃÀ۵ǾúÀ»¶§ÀÇ »óÅ´ ¸í·É¾î ¸ðµåÀÌ´Ù. (2) a¸¦ ÀÔ·ÂÇÏ¿© ÅؽºÆ®¸¦ Ãß°¡ÇÑ´Ù. ÅؽºÆ® ÀÔ·Â ¸í·É¾î a´Â current line ÀÌÈÄ¿¡ ÅؽºÆ®¸¦ Ãß°¡ÇÑ´Ù. ÅؽºÆ®¸¦ ÀÔ·ÂÇÏ°í, °¢ ¶óÀÎÀÇ ³¡¿¡¼­ enter¸¦ ´©¸¥´Ù. ÆíÁý±â´Â ´ÜÀÏ ¶óÀÎÀ¸·Î½á ±îÁö¸¦ ÅؽºÆ®·Î Ãë±ÞÇÑ´Ù. ÀÔ·Â ¸ðµå¿¡¼­ ŸÀÌÇÎ ¿À·ù¸¦ ºü¸£°Ô ±³Á¤Çϱâ À§Çؼ­´Â Ä¿¼­ÀÇ ¿ÞÂÊ¿¡ ÀÖ´Â ¹®ÀÚ¸¦ Áö¿ì±â À§ÇØ, stty ¸í·É¿¡ ÀÇÇØ ¼³Á¤µÇ¾î ÀÖ´Â »èÁ¦ ¹®ÀÚ¸¦,,Åë»ó <^h>,, »ç¿ëÇÑ´Ù. ¶ÇÇÑ Å°¸¦ »ç¿ëÇÒ ¼ö ÀÖ´Ù. ±âŸ ed ÆíÁý±â¿¡¼­ »ç¿ëÇÏ´Â ¸í·É¾îµé¿¡ ´ëÇؼ­´Â ÀÌÈÄ¿¡ ¼³¸íÇÑ´Ù. (3) ¶óÀÎ»ó¿¡ .(period)À» ÀÔ·Â ÇÔÀ¸·Î½á ÀÔ·Â ¸ðµå¸¦ Á¾·áÇÑ´Ù. .À» ÀÔ·ÂÇÑ ¶óÀÎ ÀÌÀüÀÇ ÀÔ·ÂÀº ÅؽºÆ®·Î 󸮵ȴÙ. .Àº ÀÔ·Â ¸ðµå¸¦ Á¾·áÇÏ°í, ¸í·É¾î ¸ðµå·Î µ¹¾Æ°£´Ù. (4) w ¸í·É¾î¸¦ »ç¿ëÇÏ¿© ÆíÁý ¹öÆÛ»ó¿¡ ÀÖ´Â ÅؽºÆ®¸¦ ÀúÀåÇÑ´Ù. ÀúÀåµÈ ÅؽºÆ®ÀÇ byte ¼ö°¡ ÀÚµ¿ÀûÀ¸·Î Ç¥½ÃµÈ´Ù. ¸¸¾à ÆíÁý±â¸¦ È£ÃâÇßÀ»¶§ È­ÀϸíÀ» ÁöÁ¤ÇÏÁö ¾Ê¾Ò´Ù¸é, w ¸í·É¾î ´ÙÀ½¿¡ °ø¹éÀ» µÎ°í È­ÀϸíÀ» ÁöÁ¤ÇÑ´Ù. ¿¹¸¦µé¸é w file_name°ú °°´Ù. (5) q ¸í·É¾î¸¦ ÀÔ·ÂÇÔÀ¸·Î½á ÆíÁý ÀÛ¾÷À» Á¾·áÇÑ´Ù. ¸í·É ½ÇÇàÈÄ ½©ÀÌ ´ÙÀ½ À¯´Ð½º ¸í·É¾î¸¦ ¹Þ¾ÆµéÀÓÀ» °³½ÃÇÔÀ» ³ªÅ¸³»´Â ½© ÇÁ·ÒÇÁÆ®°¡ Ç¥½ÃµÈ´Ù. ´ÙÀ½Àº ed ÆíÁý±â¸¦ ÅëÇÑ ÀÛ¾÷ ¿¹ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $ed newfile <--- (1) ¦¢ ¦¢ ?newfile ¦¢ ¦¢ a <--- (2) ¦¢ ¦¢ This sample file is created using ed line editor ¦¢ ¦¢ The . ends text input and returns to command mode. ¦¢ ¦¢ . <--- (3) ¦¢ ¦¢ w <--- (4) ¦¢ ¦¢ 256 ¦¢ ¦¢ q <--- (5) ¦¢ ¦¢ $ ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ 2. edÀÇ º¸Á¶ ¸í·É¾î ´ÙÀ½Àº ed¸¦ ÅëÇÑ ÆíÁý ÀÛ¾÷ µ¿¾È¿¡ »ç¿ëÇÒ ¼ö ÀÖ´Â º¸Á¶ ¸í·É¾îµé¿¡ ´ëÇÑ ¼³¸íÀÌ´Ù. P ¸í·É¾î ¸ðµå¸¦ ³ªÅ¸³»´Â * ÇÁ·ÒÇÁÆ®¸¦ Ç¥½ÃÇÑ´Ù. ed´Â ÀÛ¾÷ ¸ðµå°¡ ½ÃÀ۵ǾúÀ½À» ³ªÅ¸³»´Â ÇÁ·ÒÇÁÆ®¸¦ ÀÚµ¿ÀûÀ¸·Î Ç¥½ÃÇÏÁö ¾Ê´Â´Ù. ÆíÁý±â°¡ ±âµ¿µÉ¶§¸¶´Ù ÀÌ ¸í·É¾î¸¦ ½ÇÇàÇÔÀÌ ¸í·É¾î ¸ðµå°¡ ½ÃÀ۵ɶ§¸¶´Ù * ÇÁ·ÒÇÁÆ®¸¦ Ç¥½ÃµÇµµ·Ï Çϴµ¥ µµ¿òÀ» ÁØ´Ù. ed ÆíÁý±âÀÇ ¿É¼Ç -p prompt´Â µðÆúÆ® * ÇÁ·ÒÇÁÆ®°¡ ¾Æ´Ñ ´Ù¸¥ ¸í·É¾î ÇÁ·ÒÇÁÆ®¸¦ »ç¿ëÀÚ°¡ Á¤ÀÇÇÒ ¼ö ÀÖµµ·Ï ÇØÁØ´Ù. h ¶Ç´Â H ? Ç¥½Ã·Î Ç¥ÇöµÇ´Â °¡Àå ÃÖ±ÙÀÇ ¿¡·¯¿¡ ´ëÇÑ help ¸Þ¼¼Áö¸¦ Ç¥½ÃÇÑ´Ù. ed´Â ¿¡·¯ ¸Þ¼¼Áö¸¦ ÀÚµ¿ÀûÀ¸·Î Ç¥½ÃÇÏÁö ¾Ê´Â´Ù. ¿¡·¯°¡ ¹ß»ýµÉ¶§ ed´Â ? Ç¥½Ã¸¦ Ç¥½ÃÇÑ´Ù. h ¸í·É¾î´Â °¡Àå ÃÖ±ÙÀÇ ¿¡·¯¿¡ ´ëÇÑ °£·«ÇÑ ¿¡·¯ ¸Þ¼¼Áö¸¦ Ç¥½ÃÇÑ´Ù. ÆíÁý±â°¡ ¿ä±¸ÇÒ¶§¸¶´Ù H ¸í·É¾î¸¦ ½ÇÇàÇϹǷμ­ Àüü ÆíÁý ÀÛ¾÷Áß °è¼ÓÀûÀ¸·Î ¸Þ¼¼Áö¸¦ Ç¥½ÃÇϵµ·Ï ÇÏ´Â °ÍÀÌ À¯¸®ÇÏ´Ù. °è¼ÓÀûÀÎ ¿¡·¯ ¸Þ¼¼Áö ¼³Á¤ ±â´ÉÀº ¶ÇÇѹøÀÇ H ¸í·É¾î¸¦ ÀÔ·ÂÇϸé ÇØÁ¦µÈ´Ù. 3. ed ¸í·É¾îÀÇ Çü½Ä ed ¸í·É¾îÀÇ Çü½ÄÀº ´ÙÀ½°ú °°´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ [ address ] command [ argument(s) ] ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ address ¿¬ÀÌ¾î ±â¼úµÈ ¸í·É¾îÀÇ ¿µÇâÀ» ¹Þ´Â ÆíÁý ¹öÆÛ»óÀÇ Æ¯Á¤ ¶óÀÎ ¶Ç´Â ¶óÀεéÀÇ ¹üÀ§¸¦ ÁöÁ¤ÇÑ´Ù. ¸¸¾à address°¡ »ý·«µÇ¸é, ¸í·É¾î´Â ÆíÁý ¹öÆÛ»óÀÇ current lineÀÌ ´ë»óÀÌ µÈ´Ù. current lineÀº ÆíÁý ¹öÆÛ»óÀÇ ÇöÀç ¼±ÅõǾî ÀÖ´Â ¶óÀÎÀ» ¸»ÇÑ´Ù. current lineÀº ÆíÁý±â¿¡¼­ È­ÀÏÀÌ »ç¿ë °³½ÃµÉ¶§ ¸¶Áö¸· ¶óÀÎÀÌ µÇ°Å³ª, ¸í·É¾î ¸ðµå¿¡¼­ ÂüÁ¶µÈ Á÷ÀüÀÇ ¶óÀÎÀÌ´Ù. command ¾î¶² ÆíÁýÀ» ¼öÇàÇÒ °ÍÀΰ¡¸¦ ÇÑ ¹®Àڷμ­ ÁöÁ¤ÇÑ´Ù. ¸¸¾à ¸í·É¾î°¡ »ý·«µÇ¸é, µðÆúÆ® p (print) ¸í·É¾î°¡ ½ÇÇàµÈ´Ù. arguments È­ÀϸíÀ̳ª ´Ù¸¥ ¶óÀÎ address¿Í °°Àº ƯÁ¤ ¸í·Éµé¿¡¼­ ¿ä±¸µÇ¾îÁö´Â ºÎ°¡ÀûÀÎ Á¤º¸¸¦ Á¦°øÇÑ´Ù. ( ¿¹Á¦ ) w ¹öÆÛÀÇ ³»¿ëÀ» ÀúÀåÇϱâ À§ÇÑ w ¸í·É¾î°¡ ´Üµ¶À¸·Î »ç¿ëµÈ ¿¹. w newfile ¹öÆÛÀÇ ³»¿ëÀ» ´Ù¸¥ À̸§ÀÇ È­ÀÏ ¶Ç´Â ÆíÁý±â È£Ãâ½Ã ¹ÌÁöÁ¤ÇÑ È­ÀϸíÀ» ÁöÁ¤Çϱâ À§ÇØ w ¸í·É¾î ´ÙÀ½¿¡ È­ÀϸíÀ» arguments·Î¼­ ÁöÁ¤ÇÑ ¿¹¸¦ º¸¿©ÁÖ°í ÀÖ´Ù. 1,8w file2 ¹öÆÛ³»ÀÇ ³»¿ëÁß ÀϺκÐÀ» ´Ù¸¥ È­ÀϸíÀ¸·Î ÀúÀåÇϱâ À§ÇØ address¿Í arguments¸¦ ÇÔ²² ÁöÁ¤ÇÑ ¿¹¸¦ º¸¿©ÁÖ°í ÀÖ´Ù. 4. Line addressÀÇ ÁöÁ¤ ¹æ½Ä Line address´Â ¿¬ÀÌ¾î ±â¼úµÇ¾î ÀÖ´Â ¸í·É¾î¿¡ ÀÇÇØ ¿µÇâÀ» ¹Þ°ÔµÉ ¶óÀÎ ¶Ç´Â ¶óÀεéÀÇ ¹üÀ§¸¦ ÁöÁ¤ÇÑ´Ù. ¸¸¾à line address°¡ »ý·«µÇ¸é, ¸í·É¾î´Â ¹öÆÛ³»ÀÇ current line¿¡ ¿µÇâÀ» ÁØ´Ù. Line address´Â ¼ýÀÚ, ¹®ÀÚ Çü½Ä ¶Ç´Â ¼ýÀÚ¿Í ¹®ÀÚÀÇ Á¶ÇÕ Çü½ÄÀ¸·Î ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù. ed´Â ¹öÆÛ³»ÀÇ »ó´ëÀû À§Ä¡¿¡ (¼ø¼­) µû¶ó¼­ ÂüÁ¶ÇÒ °¢ ¶óÀο¡ ¶óÀÎ ¹øÈ£¸¦ ÇÒ´çÇÑ´Ù. ÀÌ ¶óÀÎ ¹øÈ£´Â ÅؽºÆ®°¡ À̵¿µÇ°Å³ª, »èÁ¦µÇ°Å³ª, º¹»çµÇ¾úÀ»¶§µµ ¸¶Âù°¡Áö·Î ÂüÁ¶µÉ ¼ö ÀÖ´Ù. ¶óÀÎ ¹øÈ£ 0¹øÀº È­ÀÏÀÇ ½ÃÀÛ À§Ä¡¸¦ ÂüÁ¶Çϱâ À§ÇØ line address·Î »ç¿ëµÉ¼ö ÀÖ´Ù. ¹®ÀÚ Çü½ÄÀÇ line address´Â Á¤È®ÇÑ ¶óÀÎ ¹øÈ£¸¦ ¸ð¸¦¶§ À¯¿ëÇÏ°Ô »ç¿ëÇÒ ¼ö ÀÖ´Ù. ´ÙÀ½Àº ¹®ÀÚ Çü½ÄÀ¸·Î line address¸¦ ÁöÁ¤Çϴµ¥ »ç¿ëµÇ´Â ±âÈ£µéÀÌ´Ù. . current line $ last line + next line - previous line ,(comma)´Â address³»¿¡¼­ ¶óÀÎ ¹üÀ§¸¦ ³ªÅ¸³½´Ù. ¿¹¸¦ µé¸é 2,5 2¶óÀκÎÅÍ 5¶óÀαîÁö .,7 current lineºÎÅÍ 7¶óÀαîÁö .,$ current lineºÎÅÍ ³¡±îÁö 1,$ 1¶óÀκÎÅÍ ¸¶Áö¸· ¶óÀαîÁö(È­ÀÏ Àüü) g´Â À§¿Í µ¿ÀÏÇÑ ¹üÀ§¸¦ ³ªÅ¸³½´Ù. ======================================================================== ´ÙÀ½ °­ÀÇ´Â À¯´Ð½º ¹®¼­ ÆíÁý±âÀÎ ed¿¡ ´ëÇؼ­ ¼³¸í µå¸®°Ú½À´Ï´Ù. ------------------------------------------------------------------------ #16 À¯´Ï½Ã½º (adunis2 ) ¶óÀÎ ÆíÁý±â edÀÇ ÀÏ¹Ý ¸í·É¾î 02/05 08:50 219 line ¶óÀÎ ¿¡µðÅÍ edÀÇ Á¶ÀÛ ¸í·É¾î ------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ»çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. -------------------------------------------------------------------- 1. ¶óÀγ»ÀÇ ÅؽºÆ® Ç¥½Ã ¸í·É ¸î°¡ÁöÀÇ ¸í·É¾î¸¦ ÅؽºÆ®¸¦ Ç¥½ÃÇϱâ À§ÇØ »ç¿ëÇÒ ¼ö ÀÖ´Ù. ´Ù½Ã ¸»ÇÏÀÚ¸é, line address°¡ »ý·«µÇ¾úÀ» °æ¿ì¿¡´Â ¸í·É¾î´Â ¹öÆÛ³»ÀÇ current line¿¡ ¿µÇâÀ» ÁØ´Ù. p current line ¶Ç´Â ÁöÁ¤ÇÑ ¶óÀÎÀÇ ÅؽºÆ®¸¦ È­¸é»ó¿¡ ÇÁ¸°Æ® ÇÑ´Ù. ¿¹¸¦µé¸é, 1,$p ¸í·ÉÀº ÆíÁý ¹öÆÛ»óÀÇ ¸ðµç ¶óÀÎÀÇ ÅؽºÆ®¸¦ Ç¥½ÃÇÑ´Ù. ¶ÇÇÑ ",p" ¸í·É¾î´Â ¸ðµç ¶óÀÎÀ» ÇÁ¸°Æ®Çϱâ À§ÇÑ ´ÜÃàÇü ¸í·ÉÀÌ´Ù. p ¸í·É¾î´Â »ç¿ëÀÚ°¡ ¸í·É¾î¸¦ ÁöÁ¤ÇÏÁö ¾Ê¾ÒÀ»¶§ °¡Á¤µÇ´Â µðÆúÆ® ¸í·ÉÀ¸·Î ÀÌ¿ëµÈ´Ù. n »ó´ëÀû ¶óÀιøÈ£¿Í ÇÔ²² current line ¶Ç´Â ÁöÁ¤ÇÑ ¶óÀÎÀÇ ÅؽºÆ®¸¦ È­¸é»ó¿¡ ÇÁ¸°Æ®ÇÑ´Ù. ¿¹¸¦µé¸é, 1,$nÀ̶ó°í ÁöÁ¤ÇÏ¸é ¶óÀÎ ¹øÈ£¿Í ÇÔ²² ¸ðµç ¶óÀÎÀ» È­¸é»ó¿¡ Ç¥½ÃÇÑ´Ù. ",n" ¸í·É¾î´Â ¸ðµç ¶óÀÎÀ» ¶óÀÎ ¹øÈ£¿Í ÇÔ²² ÅؽºÆ®¸¦ È­¸é»ó¿¡ Ç¥½ÃÇϱâ À§ÇÑ ¸í·É¾îÀÌ´Ù. l Åǹ®ÀÚ¿Í Á¦¾î Äڵ尰Àº °ÍÀÌ µé¾îÀÖ´Â current line ¶Ç´Â ÁöÁ¤ÇÑ ¶óÀεéÀ» È­¸é»ó¿¡ Ç¥½ÃÇÑ´Ù. °¢°¢ÀÇ Åǹ®ÀÚµéÀº > ¹®ÀÚ·Î ´ëÄ¡µÇ¾î ÇÁ¸°Æ® µÈ´Ù. ¿¹¸¦µé¸é, 5,9lÀ̶ó°í ÁöÁ¤Çϸé ÇÁ¸°Æ® ºÒ°¡´ÉÇÑ ¹®ÀÚ¸¦ ƯÁ¤ ¹®ÀÚ·Î º¯È¯ÇÑ »óÅ·Î, 5 ¶óÀκÎÅÍ 9 ¶óÀαîÁö¸¦ ÇÁ¸°Æ® ÇÑ´Ù. ",l" ¸í·ÉÀº Àüü ¶óÀÎÀ» À§¿Í °°ÀÌ Ãâ·ÂÇϱâ À§ÇÑ ´ÜÃàÇü ¸í·ÉÀÌ´Ù. = È­ÀÏ ¶Ç´Â ƯÁ¤ ¶óÀÎÀÇ ¶óÀÎ ¹øÈ£¸¦ Ç¥½ÃÇÑ´Ù. ¿¹¸¦µé¸é ".=" ÁöÁ¤Àº ÇöÀç ¶óÀÎ ¹øÈ£¸¦ ÇÁ¸°Æ®ÇÏ°í, "$=" ÁöÁ¤Àº ¸¶Áö¸· ¶óÀÎÀÇ ¶óÀÎ ¹øÈ£¸¦ ÇÁ¸°Æ®ÇÑ´Ù. /pattern ¶Ç´Â ?pattern ÁöÁ¤ÇÑ ¹®ÀÚ¿­ÀÌ µé¾îÀÖ´Â ´ÙÀ½ ¶óÀÎÀ» ÇÁ¸°Æ®ÇÑ´Ù. µ¿ÀÏ patternÀÇ Á¤¹æÇâ °Ë»öÀ» °è¼ÓÇϱâ À§Çؼ­´Â /¸¦ »ç¿ëÇÑ´Ù. È­ÀÏ¿¡ ÀÖ´Â ¸¶Áö¸· patternÀ» ã¾ÆÁö°í, °Ë»öÀ» °è¼Ó ¼öÇàÇϸé, ed´Â È­ÀÏÀÇ Ã¹ºÎºÐ¿¡¼­ ºÎÅÍ Á¤¹æÇâ °Ë»öÀ» °è¼ÓÇÏ°Ô µÈ´Ù. °Ë»öÀÇ ¹æÇâÀ» µ¹¸®°íÀÚ ÇÒ °æ¿ì¿¡´Â ?¸¦ »ç¿ëÇÑ´Ù. ´Ù¸¥ patternÀÇ ¹®ÀÚ¿­À» ¿ª¹æÇâÀ¸·Î °Ë»öÇÏ°íÀÚ ÇÒ °æ¿ì¿¡´Â ?new_patternÀ̶ó°í ÁöÁ¤ÇÑ´Ù. È­Àϳ»ÀÇ ¸¶Áö¸· ¿ª¹æÇâ ¹®ÀÚ¿­ÀÌ °Ë»öµÇ¸é ed´Â È­ÀÏÀÇ ³¡¿¡¼­ ºÎÅÍ, ¿ª¹æÇâ °Ë»öÀ» °è¼ÓÇÑ´Ù. 2. ÅؽºÆ®ÀÇ ÀÔ·Â ÅؽºÆ®¸¦ ÀÔ·ÂÇϱâ À§ÇØ »ç¿ëÇÏ´Â ¸í·É¾î´Â ´ÙÀ½°ú °°´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ a ÇöÀç À§Ä¡ ÀÌÈÄ¿¡ ÅؽºÆ®¸¦ Ãß°¡ÇÑ´Ù. ¦¢ ¦¢ i ÇöÀç À§Ä¡ ÀÌÀü¿¡ ÅؽºÆ®¸¦ »ðÀÔÇÑ´Ù. ¦¢ ¦¢ c ±âÁ¸ÀÇ ÅؽºÆ®¸¦ º¯°æÇÑ´Ù. ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ Append (a) a ¸í·É¾î´Â È­ÀÏ¿¡ ÅؽºÆ®¸¦ Ãß°¡Çϱâ À§ÇØ »ç¿ëÇÑ´Ù. a ¸í·É¾î´Â ÇöÀç ¶Ç´Â ÁöÁ¤µÈ line address ÀÌÈÄ¿¡ ÅؽºÆ®¸¦ Ãß°¡ÇÑ´Ù. ÇöÀçÀÇ ¶óÀÎÀÌ ¾Æ´Ñ ´Ù¸¥ ¶óÀο¡ Ãß°¡¸¦ Çϱâ À§Çؼ­´Â line address¸¦ ÁöÁ¤ÇÏ¿© ¼öÇàÇÒ ¼ö ÀÖ´Ù. ¶óÀÎ ¹øÈ£´Â ÅؽºÆ® ¼ø¼­¿¡µû¸¥ º¯°æ»çÇ×À» Àû¿ëÇϱâ À§ÇØ ¹Ù²Û´Ù. ¿¹¸¦µé¸é 4a´Â 4 ¶óÀÎ ÀÌÈÄ¿¡ ÅؽºÆ®¸¦ Ãß°¡ÇÑ´Ù. Insert (i) i ¸í·É¾î´Â ÇöÀç ¶Ç´Â ÁöÁ¤ÇÑ line addressÀü¿¡ ÅؽºÆ®¸¦ »ðÀÔÇÑ´Ù. current lineÀÌ ¾Æ´Ñ ´Ù¸¥ ¶óÀο¡ »ðÀÔÇϱâ À§Çؼ­´Â line address¸¦ »ðÀÔÇÏ¸é µÈ´Ù. ¿¹¸¦µé¸é 4i´Â 4 ¶óÀÎ ÀÌÀü¿¡ ÅؽºÆ®¸¦ »ðÀÔÇÑ´Ù. Change (c) c ¸í·É¾î´Â ÇöÀç ¶Ç´Â ÁöÁ¤ÇÑ ¶óÀÎÀ» °»½ÅÇÑ´Ù. current line ÀÌ¿ÜÀÇ ´Ù¸¥ ¶óÀÎÀ» °»½ÅÇϱâ À§Çؼ­´Â line address¸¦ ÁöÁ¤ÇÑ´Ù. ¿¹¸¦µé¸é 4c´Â 4 ¶óÀÎÀ» °»½ÅÇÑ´Ù. stty·Î ¼±¾ðµÈ »èÁ¦¹®ÀÚ¸¦ ,Åë»ó <^h> ¶Ç´Â , »ç¿ëÇÏ¿© ÁöÁ¤ÇÑ ¶óÀο¡¼­ÀÇ ÀԷ¸ðµå µ¿¾È ±³Á¤À» ¼öÇàÇÒ ¼ö ÀÖ´Ù. ±³Á¤ ¹æ½ÄÀº Å°¸¦ ÀÔ·ÂÇϱâ ÀüÀÇ ÆíÁý ¶óÀÎÀÇ ¼öÁ¤½Ã¿¡ È¿°úÀûÀÌ´Ù. ÅؽºÆ®¸¦ ¼öÁ¤ÇÏ°í, ±³Á¤Çϱâ À§ÇÑ ´Ù¸¥ ¸í·ÉµéÀº Â÷·Ê´ë·Î ÀÌÈÄ¿¡ ¼³¸íµÈ´Ù. ÀÔ·Â ¸ðµå¸¦ Á¾·áÇϱâ À§Çؼ­´Â ºó ¶óÀο¡ .À» ÀÔ·ÂÇÏ°í Å°¸¦ ÀÔ·ÂÇÑ´Ù. 3. ÅؽºÆ®ÀÇ ¼öÁ¤ ÅؽºÆ®¸¦ ¼öÁ¤Çϱâ À§ÇÑ ±âº»ÀûÀÎ ¸í·É¾î´Â ´ÙÀ½°ú °°´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ u Á÷ÀüÀÇ º¯°æÀ» Ãë¼ÒÇÑ´Ù. ¦¢ ¦¢ d ÅؽºÆ®¸¦ »èÁ¦ÇÑ´Ù. ¦¢ ¦¢ m ÅؽºÆ®¸¦ À̵¿ÇÑ´Ù. ¦¢ ¦¢ t ÅؽºÆ®¸¦ º¹»çÇÑ´Ù. ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ Undo Last Change (u) ¸Å¿ì Áß¿äÇÏ°í À¯¿ëÇÑ ¸í·ÉÁß Çϳª·Î, undo ¸í·É¾î´Â Á÷ÀüÀÇ °»½ÅºÐÀ» Ãë¼ÒÇϰųª ¶Ç´Â º¹±¸ ÇÑ´Ù. ÀÌ ¸í·É¾î´Â Ãë¼ÒÇØ¾ß ÇÒ ÇÊ¿ä°¡ ÀÖÀ»¶§ ÆíÁý±â¸¦ ÀúÀåÇÏÁö ¾Ê°íÆíÁý±â¸¦ Á¾·áÇÏ´ø°Í°ú, ¸ðµç ÆíÁý °»½ÅÀ» ¹ö¸²¿¡ À־ ´õ¿í Æí¸®ÇÑ ´ë¾ÈÀ» Á¦°øÇÑ´Ù. u ¸í·É¾î¸¦ ¹Ýº¹ÀûÀ¸·Î ´©¸£¸é Á÷ÀüÀÇ °»½Å ³»¿ë ³»¿ëÀÇ Ãë¼Ò¹× ¹Ý¿µÀÌ ¹Ýº¹µÈ´Ù. ¿¹¸¦µé¸é, È­ÀÏÀÇ Àüü ³»¿ëÀ» »èÁ¦ÇÏ´Â 1,$d ¸í·É¾îÀÇ °á°ú´Â u ¸í·É¾î¸¦ ½ÇÇàÇÔÀ¸·Î½á ÆíÁý ÀÛ¾÷½Ã¿¡ ½±°Ô º¹±¸µÉ ¼ö ÀÖ´Ù. Delete (d) d ¸í·É¾î´Â current line ¶Ç´Â ÁöÁ¤ÇÑ ¶óÀÎÀ» »èÁ¦ÇÑ´Ù. current line ÀÌ¿ÜÀÇ ¶óÀÎÀ» »èÁ¦ÇÏ°íÀÚ ÇÒ °æ¿ì¿¡´Â line address¸¦ »èÁ¦ÇÑ´Ù. ¿¹¸¦µé¸é, 2,4d´Â 2 ¶óÀκÎÅÍ 4 ¶óÀαîÁö¸¦ »èÁ¦ÇÑ´Ù. Move (m) m ¸í·É¾î´Â µÎ°³ÀÇ line address¸¦ ¿ä±¸ÇÑ´Ù. À̵¿µÉ ¶óÀÎÀº ¸í·É¾îÀÇ ¾Õ¿¡ ±â¼úÇÏ°í, ¸í·É¾îÀÇ µÚ¿¡ À̵¿ À§Ä¡¸¦ ÁöÁ¤ÇÑ´Ù. ¿¹¸¦µé¸é, .,$m0 ¸í·É¾î´Â ÇöÀç ¶óÀκÎÅÍ ¸¶Áö¸· ¶óÀÎÀ» È­ÀÏÀÇ Ã¹ºÎºÐÀÎ 0 ¶óÀÎ ÀÌÈÄ¿¡ À̵¿ÇÑ´Ù. Copy (c) t ¸í·É¾îµµ ¶ÇÇÑ 2°³ÀÇ line address¸¦ ÁöÁ¤ÇÑ´Ù. º¹»çµÉ ¶óÀÎÀº ¸í·É¾îÀÇ ¾Õ¿¡ ÁöÁ¤ÇÏ°í, ¸í·É¾îÀÇ µÚ¿¡ º¹»ç À§Ä¡¸¦ Áöµ¿ÇÑ´Ù. ¿¹¸¦µé¸é, .,$t0 ¸í·É¾î´Â ÇöÀçºÎÅÍ ¸¶Áö¸· ¶óÀαîÁöÀÇ ³»¿ëÀ» È­ÀÏÀÇ Ã¹ºÎºÐÀÎ ¸¶Áö¸· ¶óÀο¡ º¹»çÇÑ´Ù. ´Ù¾çÇÑ ´Ù¸¥ ¸í·É¾î´Â ed¿¡¼­ »ç¿ëµÉ ¼ö ÀÖ´Ù. ÀÌ ¸í·É¾îµé¿¡ ´ëÇÑ ÀÚ¼¼ÇÑ ³»¿ëÀº vi ÆíÁý±â ºÎºÐÀ» ÂüÁ¶Çϱ⠹ٶõ´Ù. ÀÌÀ¯´Â ed ¸í·É¾î¿Í vi ¸í·É¾î´Â ¼­·Î ȣȯµÇ±â ¶§¹®ÀÌ´Ù. 4. ÅؽºÆ®ÀÇ ´ëÄ¡ ¿©±â¿¡¼­ ¼³¸íµÇ´Â ÆíÁý ¸í·ÉÀº Àüü ¶óÀο¡ ¿µÇâÀ» ¹ÌÄ£´Ù. s ¸í·É¾î´Â ¶óÀγ»ÀÇ ÅؽºÆ®¸¦ ´ëÄ¡ÇÑ´Ù. s ¸í·É¾îÀÇ Çü½ÄÀº ´ÙÀ½°ú °°´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ [address]s/old_text/new_text/command ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ address ´ëÄ¡µÇ¾î¾ß ÇÒ ¶óÀÎ s ´ëÄ¡ ¸í·É¾î /old_text ´ëÄ¡µÉ ÅؽºÆ® /new_text ´ëÄ¡ ÅؽºÆ® /command ÇÊ¿ä½Ã ÁöÁ¤ÇÏ´Â ¿É¼Ç ´ëÄ¡ ¸í·É¾îÀÇ °¢ ¿ä¼ÒµéÀº ´ëºÎºÐ /·Î½á ±¸ºÐµÈ´Ù. ±×·¸Áö¸¸ ÁöÁ¤ÇÑ ´ëÄ¡ ¸í·É¾î»ó¿¡¼­ /¸¦ ÁöÁ¤ÇÏ´Â À§Ä¡¿¡ µ¿ÀϹ®ÀÚ¸¦ ÁöÁ¤ÇÔÀ¸·Î½á /¸¦ ´ë½ÅÇÏ¿© »ç¿ëÇÒ ¼ö ÀÖ´Ù. ¿¹¸¦µé¸é 1,$s/old/new/ÀÇÁöÁ¤ Çü½ÄÀ» 1,$s-old-new-¶ó´Â Çü½ÄÀ¸·Î ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù. ´ëÄ¡ ¸í·É¾î »ó¿¡ º°µµÀÇ command ÁöÁ¤ÀÌ ¾øÀ» °æ¿ì, ÁöÁ¤ÇÑ ¶óÀο¡ ÁöÁ¤ÇÑ ¹®ÀÚ¿­ÀÌ ¿©·¯°³ Á¸ÀçÇÒ °æ¿ì, µðÆúÆ®·Î ( ¹ÌÁ¤Àǽà ) ¶óÀλóÀÇ Ã¹¹ø° ¹®ÀÚ¿­¸¸À» ´ëÄ¡ÇÑ´Ù. ¿¹¸¦µé¸é, ¾î´À ¶óÀÎ»ó¿¡ ´ÙÀ½°ú °°Àº ÅؽºÆ®°¡ µé¾î ÀÖ´Ù°í °¡Á¤ÇÏÀÚ. 111 222 333 111 444 000 222 111 À̶§ s/111/kdw/¶ó°í ÁöÁ¤Çϸé, ù¹ø° ÀÖ´Â 111¸¸ÀÌ kdw·Î ´ëÄ¡µÈ´Ù. ¶ÇÇÑ s ¸í·É¾î Àü¿¡ ¶óÀÎ ¹üÀ§¸¦ ÁöÁ¤ÇÏ°Ô µÇ¸é, ´ëÄ¡ ÀÛ¾÷Àº ÁöÁ¤ÇÑ ¹üÀ§ÀÇ ¾îµå·¹½º³»ÀÇ ¸ðµç ¶óÀο¡´ëÇØ ÀÛ¾÷À» ¼öÇàÇÑ´Ù. ¿¹¸¦µé¸é 1,$s/is/was ¸í·ÉÀº È­Àϳ»ÀÇ ¸ðµç ¶óÀÎÀÇ Ã¹¹ø° is¸¦ was·Î ´ëÄ¡ÇÑ´Ù. ¶óÀγ»¿¡ ÀÖ´Â ÁöÁ¤ ¹®ÀÚ¿­ÀÇ ¸ðµÎ¸¦ ´ëÄ¡Çϱâ À§Çؼ­´Â s ¸í·É¾î ¸¶Áö¸·¿¡ g¸¦ ÁöÁ¤ÇÑ´Ù. ¿¹¸¦µé¸é, s/is/was/g´Â current line»óÀÇ ¸ðµç is¸¦ was·Î ´ëÄ¡Çϸç, 1,$s/is/was/g ¸í·É¾î´Â Àüü È­Àϳ»ÀÇ is¸¦ was·Î ´ëÄ¡ÇÑ´Ù. ´ëÄ¡ ÀÛ¾÷½Ã¿¡ g/string/s/old/new¿Í °°Àº Çü½Äµµ »ç¿ëµÉ ¼ö ÀÖ´Ù. ÀÌ Çü½ÄÀ¸·Î ÁöÁ¤µÈ °æ¿ì¿¡´Â stringÀÌ µé¾îÀÖ´Â ¶óÀγ»ÀǸðµç old¸¦ new·Î ´ëÄ¡ÇÑ´Ù. ÅؽºÆ® ÀÛ¾÷Áß À߸øµÈ ´ëÄ¡°¡ ÇàÇØÁ³À» °æ¿ì¿¡´Â undo ¸í·ÉÀ» ÅëÇØ ´ëÄ¡¸¦ Ãë¼ÒÇÒ ¼ö ÀÖ´Ù. 5. ½©·ÎÀÇ ÀϽÃÀû À̵¿ ÆíÁýÀÛ¾÷ µ¿¾È¿¡ À¯´Ð½º ¸í·É¾î¸¦ ½ÇÇàÇØ¾ß µÉ ÇÊ¿ä°¡ ÀÖ´Ù. ½©·ÎÀÇ ÀϽÃÀû À̵¿ ¸í·ÉÀÎ '!'´Â Çϳª ¶Ç´Â ±× ÀÌ»óÀÇ ¸í·É¾îµéÀ» ½ÇÇàÇϱ⠽©ÀÇ ÀϽÃÀû ¾ï¼¼½º¸¦ Çã¿ëÇÑ´Ù. ½©·ÎÀÇ ÀϽÃÀû À̵¿À» ÇàÇϱâ À§Çؼ­´Â edÀÇ ¸í·É¾î ¶óÀÎ»ó¿¡ !¸¦ ÀÔ·ÂÇÑÈÄ ½ÇÇàÇÒ ½© ¸í·É¾î¸¦ ÁöÁ¤ÇÑÈÄ Å°¸¦ ÀÔ·ÂÇÏ¸é µÈ´Ù. ¿¹¸¦µé¾î edÀÇ ¸í·É¾î»ó¿¡ !ls¸¦ ÀÔ·ÂÇϸé, ls ¸í·É¾î°¡ ½ÇÇàµÈÈÄ Ãâ·ÂÀÌ È­¸é»ó¿¡ Ç¥½ÃµÈ´Ù. ÀÌÈÄ ÆíÁý ÀÛ¾÷ÀÌ °è¼ÓµÈ´Ù´Â Àǹ̸¦ °®´Â ¸í·É¾î Ãâ·Â ´ÙÀ½¿¡ !°¡ Ç¥½ÃµÈ´Ù. ±×¸®°í ¸í·É¾îÀÇ Ãâ·ÂÀº È­ÀÏÀÇ ÀϺηΠ󸮵ÇÁö´Â ¾Ê´Â´Ù. º¹¼ö°³ÀÇ ¸í·É¾î¸¦ ½ÇÇàÇϱâ À§Çؼ­´Â ;(¼¼¹ÌÄÝ·Ð)À¸·Î °¢°¢À» ±¸ºÐÇÑ´Ù. ¿¹¸¦µé¸é, !pwd;date;who¶ó ÁöÁ¤Çϸé, ÁöÁ¤ÇÑ ¸í·É¾îµéÀ» ¼ø¼­´ë·Î ½ÇÇàÇÏ°í, ÆíÁý ÀÛ¾÷À» °è¼ÓÇϱâ Àü¿¡ ¸ðµç Ãâ·ÂÀ» Ç¥½ÃÇÑ´Ù. ¸·¿¬ÇÏ°Ô ½©·ÎÀÇ ÀϽÃÀû À̵¿À» Çϱâ À§Çؼ­´Â !sh ¸í·ÉÀ» ÀÔ·ÂÇÑ´Ù. ÀÌ°æ¿ì ´Ù½Ã ÆíÁýÀÛ¾÷À» ¼öÇàÇϱâ À§Çؼ­´Â, ½© ÇÁ·ÒÇÁÆ®»ó¿¡¼­ ^d¸¦ ´©¸£°Å³ª exit¸¦ ÀÔ·ÂÇÑ´Ù. 6. edÀÇ Recovery(Àå¾Ö·ÎºÎÅÍÀÇ º¹±¸) ÆíÁýÀÛ¾÷ÀÌ ºñÁ¤»óÀûÀ¸·Î Á¾·áÇßÀ» °æ¿ì, À¯´Ð½º´Â ÆíÁý ¹öÆÛ»óÀÇ ³»¿ëÀ» »ç¿ëÀÚÀÇ home directory¼ÓÀÇ ed.hup È­ÀÏ¿¡ ÀúÀåÇÑ´Ù. Çѹø È­ÀÏÀÇ ³»¿ëÀÌ È®ÀεǸé, ed.hup È­ÀÏÀº ´ÙÀ½¹øÀÇ recovery½Ã¿¡ ¶Ç´Ù¸¥ ³»¿ëÀÌ ÀúÀåµÊÀ¸·Î½á ÀÌÀü ³»¿ëÀº ÂüÁ¶°¡ ºÒ°¡´ÉÇÏ°Ô µÇ±â ¶§¹®¿¡ °¡´ÉÇÑÇÑ »¡¸® ´Ù¸¥ À̸§À¸·Î ÀúÀåÇØ µÎ¾î¾ß ÇÑ´Ù. ======================================================================== ´ÙÀ½ °­ÀÇ´Â À¯´Ð½º ½ºÅ©¸° ÆíÁý±âÀÎ viÀÇ ÀÏ¹Ý °³¿ä¿¡ ´ëÇؼ­ ¼³¸í µå¸®°Ú½À´Ï´Ù. ------------------------------------------------------------------------ #17 À¯´Ï½Ã½º (adunis2 ) ½ºÅ©¸° ÆíÁý±â viÀÇ ±âº» »çÇ× 02/05 08:51 194 line ½ºÅ©¸° ¿¡µðÅÍ viÀÇ ÀÏ¹Ý °³¿ä ------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ»çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. -------------------------------------------------------------------- ÀÌ °­ÀÇ¿¡¼­´Â vi¸¦ ÀÌ¿ëÇÏ¿© È­ÀÏÀ» »ý¼ºÇÏ°í, ÆíÁýÇÏ´Â ¹æ¹ý¿¡ ´ëÇؼ­ ¼³¸íÇÑ´Ù. 1. ÀϹÝÀûÀÎ vi ÆíÁý±âÀÇ Æ¯Â¡ vi´Â ´ëÈ­½Ä ½ºÅ©¸° ÆíÁý±âÀÌ´Ù. ed¿Í´Â ´Þ¸® vi´Â ÇѽËÁ¡¿¡ ÇÑ È­¸éºÐÀÇ ÅؽºÆ®¸¦ Ç¥½ÃÇÑ´Ù. vi ÆíÁý±â´Â »ç¿ëÀÚ¿¡°Ô ½ºÅ©¸°»óÀÇ ÀÓÀÇ ÁöÁ¡, ¶Ç´Â È­Àϳ»ÀÇ ÀÓÀÇÀÇ ÁöÁ¡À¸·Î Ä¿¼­¸¦ À̵¿½ÃÅ°°Å³ª, ÇöÀçÀÇ È­¸é ÀÌÀü ¶Ç´Â ÀÌÈÄ È­¸éÀ¸·ÎÀÇ À̵¿À» Çã¿ëÇÑ´Ù. ÀϹÝÀûÀ¸·Î vi ÆíÁý±â´Â ed ÆíÁý±âº¸´Ù ´õ¿í À¶Å뼺ÀÖ°í, À¯¿¬ÇÑ ÆíÁý±âÀÌ´Ù. vi´Â ´õ¿í µ¶Æ¯ÇÑ ¿î¿µ Ư¡À» °®°í ÀÖ´Ù. . vi°¡ ½ÇÇà ¿ä±¸µÇ¾úÀ»¶§, ÆíÁý ¹öÆÛ°¡ ÅؽºÆ® ÀÔ·Â »çÇ×°ú ÆíÁý »çÇ×À» ÀúÀåÇϱâ À§ÇØ È®¸³µÈ´Ù. . vi´Â ed¿Í °°ÀÌ ±âº»ÀûÀ¸·Î ÅؽºÆ® ÀÔ·Â ¸ðµå¿Í ¸í·É¾î ÀÔ·Â ¸ðµåÀÇ 2°¡Áö ¸ðµå¿¡¼­ ¿î¿µµÈ´Ù. ¸í·É¾î ¸ðµå´Â ÅؽºÆ®¸¦ Á¶ÀÛÇϱâ À§Çؼ­ »ç¿ëµÈ´Ù. vi´Â ºÎ°¡ÀûÀÎ ¸í·É¾îÀÇ »ç¿ëÀ» Çã¿ëÇϱâ À§ÇÑ last line mode¶ó ºÒ¸®¿ì´Â ¶Ç´Ù¸¥ ¸í·É¾î ¸ðµå¸¦ °®°í ÀÖ´Ù. . vi ¸í·É¾î´Â ed ¸í·É¾î¿Í °°ÀÌ Å°¸¦ ¿ä±¸ÇÏÁö ¾Ê´Â´Ù. ¶ÇÇÑ vi ¸í·É¾î´Â ÀϹÝÀûÀ¸·Î È­¸é»ó¿¡ Ç¥½ÃµÇÁöµµ ¾Ê´Â´Ù. ÀÌÈÄ¿¡ ¼³¸íµÇ´Â ¸í·É¾îµéÀº ±âº»ÀûÀÌ°í À¯¿ëÇÑ ¸í·É¾îµéÀÌ´Ù. ±×·¸Áö¸¸ vi´Â À̺¸´Ù ´Ù¾çÇÑ ¸í·É¾îµéÀ» Á¦°øÇÔÀ¸·Î À̵éÀ» È®ÀÎÇϱâ À§ÇØ °ü·Ã ¼­ÀûÀ̳ª, ¿Â¶óÀÎ ÂüÁ¶ ¸Þ´º¾óÀÎ manÀ̳ª mandex¸¦ ÂüÁ¶Çϱ⠹ٶõ´Ù. 2. viÀÇ ¼³Á¤(setup) vi ÆíÁý±â´Â °¢ Å͹̳ÎÀÇ ÇÑÁ¤µÈ Ư¼º°ú ±â´É¿¡ ÀÇÁ¸ÇÏ´Â ÆíÁý±âÀ̱⠶§¹®¿¡ vi ÆíÁý±â¸¦ »ç¿ëÇÏ´Â ´Ü¸»ÀÇ Á¾·ù¸¦ Á¶¸íÇØ¾ß ÇÑ´Ù. ¸¸¾à Å͹̳ΠÁ¾·ù°¡ Á¤ÀǵǾî ÀÖÁö ¾ÊÀ¸¸é, vi ÆíÁý±â°¡ ½ÇÇàµÉ¶§ ÀÌ¿¡ »óÀÀÇÏ´Â ¸Þ¼¼Áö¸¦ Ç¥½ÃÇÑ´Ù. Å͹̳ΠÁ¾·ù¸¦ Á¤ÀÇÇϱâ À§Çؼ­´Â, /usr/share/lib/termcap È­ÀÏ¿¡ linkµÇ¾î ÀÖ´Â /etc/termcap È­ÀϷκÎÅÍ Àû´çÇÑ Å͹̳ÎÀ» ½© º¯¼öÀÎ TERM¿¡ ÇÒ´çÇÏ°í, ÀÌ Á¤º¸¸¦ ¿ä±¸ÇÏ´Â ´Ù¸¥ ÇÁ·Î¼¼½ºµé¿¡ °ªµéÀ» Àü´ÞÇØ ÁØ´Ù. ( ƯÁ¤ º¯¼ö°ªÀ» ´Ù¸¥ ÇÁ·Î¼¼½º¿¡ Àü´ÞÇÏ´Â ÀÛ¾÷À» export¶ó°í ÇÑ´Ù. ) ¿¹¸¦µé¸é, uvt1224 Å͹̳ÎÀ» ÁöÁ¤ÇϱâÀ§ÇØ À¯´Ð½º ½© ÇÁ·ÒÇÁÆ®¿¡ ´ÙÀ½°ú °°ÀÌ ÀÔ·ÂÇÑ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ TERM=uvt1224;export TERM ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ½© º¯¼ö´Â ¸ðµÎ ´ë¹®ÀÚÀÌ°í, º¯¼ö¸í TERM°ú º¯¼ö °ªÀÎ uvt1224 »çÀÌ¿¡´Â °ø¹éÀ» µÎÁö ¾Ê´Â´Ù. À§ÀÇ¿¹¿Í´Â ´Þ¸® º¯¼ö¼±¾ð ºÎºÐ°ú export ¸í·É¾î ºÎºÐÀ» ´Ù¸¥ ¶óÀο¡ ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù. Å͹̳ΠÁöÁ¤Àº ÇöÀçÀÇ ·Î±×ÀÎ ¼¼¼Ç¿¡ ´ëÇؼ­¸¸ Àû¿ëµÈ´Ù. ¸Å¹ø ·Î±×Àνø¶´Ù ÀÚµ¿ÀûÀ¸·Î Å͹̳ÎÀ» Á¤ÀÇÇϱâ À§Çؼ­´Â »ç¿ëÀÚÀÇ home directory³»ÀÇ .profile³»¿¡ À§ÀÇ ¸í·É¾î ºÎºÐÀ» ÁöÁ¤ÇÑ´Ù. ´Ù¸¥ vi ȯ°æÁ¤ÀÇ °ªµé¿¡ ´ëÇؼ­´Â ÀÌÈÄ¿¡ ´Ù½Ã ¼³¸íÇÑ´Ù. ½©¿¡´ëÇÑ ÀÚ¼¼ÇÑ ¼³¸íÀº ÃßÈÄ¿¡ ¼³¸íµÉ °úÁ¤¿¡¼­ ¾ð±ÞÇϱâ·Î ÇÑ´Ù. 3. vi¸¦ ÅëÇÑ È­ÀÏÀÇ »ý¼º vi¸¦ ÅëÇÑ È­ÀÏÀÇ »ý¼º ÀýÂ÷´Â ed¸¦ »ç¿ëÇÏ´Â ÀýÂ÷¿Í À¯»çÇÏ´Ù. 1) vi file_nameÀÇ Çü½ÄÀ¸·Î ÆíÁý±â¸¦ °³½ÃÇÑ´Ù. ¸¸¾à È­ÀϸíÀÌ »ý·«µÇ¾úÀ» °æ¿ì¿¡´Â, ÆíÁý±â¸¦ Á¾·áÇÒ¶§ À̸§À» Á¦°øÇØ¾ß ÇÔÀ» ¸í½ÉÇØ¾ß ÇÑ´Ù. vi´Â È­ÀϸíÀ» Á¦°øÇϵµ·Ï ÇϱâÀ§ÇØ 'No current filename'À̶ó´Â ÁÖÀÇ ¸Þ¼¼Áö¸¦ Ç¥½ÃÇÑ´Ù. ÆíÁý ½ºÅ©¸°Àº ed¿Í ´Ù¸¥ ÇüÅ·Πǥ½ÃµÈ´Ù. Ä¿¼­°¡ °¡Àå À­ ¶óÀο¡ ³ªÅ¸³ª°í ¿¬ÀÌ¾î ºó¶óÀÎÀÓÀ» ³ªÅ¸³»´Â ÀÏ·ÃÀÇ ~(tildes)Ç¥½Ã°¡ Ç¥½ÃµÈ´Ù. È­ÀϸíÀº ¸¶Áö¸· ¶óÀο¡ ³ªÅ¸³ª°í, ±âÁ¸ È­ÀÏÀÇ ¹®ÀÚ¼ö ¶Ç´Â »õ·Î¿î È­ÀÏÀ» ³ªÅ¸³»´Â new fileÀ̶ó´Â ±ÛÀÚ°¡ [ ] Ç¥½ÃµÇ¾î µÚµû¸¥´Ù. óÀ½ÀÇ ÆíÁý±â´Â ¸í·É¾î ¸ðµåÀÌ´Ù. 2) a¿Í °°Àº ÀÔ·Â ¸í·É¾î¸¦ ÀÔ·Â ÇÔÀ¸·Î½á ÅؽºÆ®¸¦ Ãß°¡ÇÑ´Ù. À̶§ ¸¦ ´©¸£Áö ¾Ê´Â´Ù. À̶§ a¶ó´Â ¹®ÀÚ´Â ½ºÅ©¸°»ó¿¡ ³ªÅ¸³ªÁö ¾ÊÀ½À» ÁÖ¸ñÇϱ⠹ٶõ´Ù. ÅؽºÆ®¸¦ ÀÔ·ÂÇÏ°í °¢ ¶óÀÎÀÇ ³¡¿¡¼­ Å°¸¦ ÀÔ·ÂÇÑ´Ù. 3) Å°¸¦ ´©¸§À¸·Î½á ÀԷ¸ðµå¸¦ Á¾·áÇÑ´Ù. ¸¦ ´©¸¦¶§±îÁöÀÇ ¸ðµç ÀÔ·ÂÀº ÅؽºÆ®·Î Ãë±ÞµÈ´Ù. 4) ¹öÆÛÀÇ ³»¿ëÀ» ÀúÀåÇÏ°í, ÆíÁý±â¸¦ Á¾·áÇÑ´Ù. vi´Â ¹öÆÛÀÇ ³»¿ëÀ» ÀúÀåÇÏ°í, ÆíÁý±â¸¦ ÀúÀåÇϱâ À§ÇÑ ¸î°¡ÁöÀÇ ¸í·É¾îµéÀ» Á¦°øÇÑ´Ù. vi¸¦ È£ÃâÇßÀ»¶§ È­ÀϸíÀ» ÁöÁ¤ÇßÀ» °æ¿ì¿¡´Â ZZ ¸í·É¾î´Â ¹öÆÛÀÇ ³»¿ëÀ» È­ÀÏ¿¡ ÀúÀåÇÏ°í, ÆíÁý±â¸¦ Á¾·áÇÏ´Â µÎ°¡Áö ±â´ÉÀ» ¼öÇàÇÑ´Ù. ¶ÇÇÑ ¶óÀÎ ÆíÁý±â ed¿¡¼­ »ç¿ëÇß´ø ¸í·É¾îµéÀ» :(ÄÝ·Ð)ÀÌ ¼±ÇàµÈ ÇüÅ Áï, :q , :w ¶Ç´Â :wq¿Í °°ÀÌ »ç¿ëÇÒ ¼ö ÀÖ´Ù. À̶§ :À» ÀÔ·ÂÇÏ°Ô µÇ¸é, Ä¿¼­´Â È­¸é»óÀÇ ¸¶Áö¸· ¶óÀÎÀ¸·Î À̵¿µÊÀ» ÁÖ¸ñÇØ¾ß ÇÑ´Ù. ÀÌÈÄ ¼³¸íµÇ´Â ¸í·É¾îÁß :ÀÌ ¼±ÇàÇÏ´Â ¸í·É¾î´Â °°Àº À§Ä¡¿¡ Ç¥½ÃµÈ´Ù. ´ÙÀ½Àº ÆíÁý ÀÛ¾÷ÁßÀÇ vi È­¸éÀ» º¸¿©ÁÖ´Â ¿¹Á¦ÀÌ´Ù. $vi testfile ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ Use an input command to enter text. ¦¢ ¦¢ Press at the end of each line. ¦¢ ¦¢ Press to exit the input mode. ¦¢ ¦¢ ¦¢ ¦¢ ~ ¦¢ ¦¢ ~ ¦¢ ¦¢ ~ ¦¢ ¦¢ ~ ¦¢ ¦¢ ~ ¦¢ ¦¢ ~ ¦¢ ¦¢ Áß·« ¦¢ ¦¢ ~ ¦¢ ¦¢ ~ ¦¢ ¦¢ ~ ¦¢ ¦¢ :wq ¦¢ ¦¢ "testfile" [New file] 5 lines, 174 characters ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ 4. Ä¿¼­ÀÇ ¹®ÀÚ ¶Ç´Â ¶óÀÎ ´ÜÀ§ À̵¿ ½ºÅ©¸°»óÀÇ Ä¿¼­¸¦ À̵¿Çϱâ À§ÇÑ Å°´Â ´ÙÀ½°ú °°´Ù. º¹¼öÀÇ ¹®ÀÚ³ª ¶óÀÎÀ» ´ÜÀ§·Î À̵¿Çϱâ À§Çؼ­´Â Ä¿¼­ À̵¿Å° ¾Õ¿¡ ¿øÇÏ´Â ¼ýÀÚ¸¦ ÁöÁ¤ÇÑ´Ù. ±× ¿¹´Â ´ÙÀ½°ú °°´Ù. 5¶ó°í ÁöÁ¤Çϸé Ä¿¼­°¡ ÁÂÃøÀ¸·Î 5¹®ÀÚ À̵¿µÈ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¨¦¨¦¡¦¡¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ Ä¿¼­À̵¿¹æÇâ ¦¢ Ä¿¼­ À̵¿Å° ¦¢¦¢Ä¿¼­À̵¿¹æÇ⦢ Ä¿¼­ À̵¿Å° ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦«¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ ¿ÞÂÊ ¦¢ h ¦¢¦¢ ¿À¸¥ÂÊ ¦¢ l ¦¢ ¦¢ ¦¢ ¿ÞÂÊ ¹æÇâÅ° ¦¢¦¢ ¦¢ ¿À¸¥ÂÊ ¹æÇâÅ°¦¢ ¦¢ ¦¢ ¦¢¦¢ ¦¢ ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦«¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ ¾Æ·¡ÂÊ ¦¢ j ¦¢¦¢ À­ÂÊ ¦¢ k ¦¢ ¦¢ ¦¢ ¾Æ·¡ÂÊ ¹æÇâÅ°¦¢¦¢ ¦¢ À­ÂÊ ¹æÇâÅ° ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦ª¦ª¦¡¦¡¦¡¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ »ó±â µµÇ¥¿¡¼±¾ðµÈ Å°µéÀº À¯´Ð½º ½Ã½ºÅÛ Á¢¼Ó ÇÁ·Î±×·¥ÀÎ ¿¡¹Ä·¹ÀÌÅÍ ÇÁ·Î±×·¥ÀÇ Å°°ª Á¤ÀÇ ÇüÅ¿¡ µû¶ó ´Ù¸¥ ±â´ÉÀ» ¼öÇàÇÒ ¼ö ÀÖ½À´Ï´Ù. 5. Ä¿¼­ÀÇ Æ¯Á¤ ´ÜÀ§·ÎÀÇ À̵¿ Ä¿¼­¸¦ ¹®ÀÚ ¶Ç´Â ¶óÀÎ ´ÜÀ§·Î À̵¿ÇÏ´Â °Í¿¡ ºÎ°¡ÀûÀ¸·Î Ä¿¼­´Â ´Ü¾î, ¹®Àå, ´Ü¶ô, Àý ´õ¿ì±â ½ºÅ©¸°»óÀÇ ´Ù¸¥ À§Ä¡·Î À̵¿ÇÒ ¼ö ÀÖ´Ù. À̵¿ ¸í·É¾î´Â ´ÙÀ½°ú °°´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ À̵¿ ´ÜÀ§ ¦¢¸í·É ¹®ÀÚ ¦¢ ¼³ ¸í ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ ´Ü¾î ¦¢ w ¦¢ ÇÑ ´Ü¾î ¾ÕÀ¸·Î ¦¢ ¦¢ ¦¢ e ¦¢ ÇöÀç ´Ü¾î ³¡À¸·Î ¦¢ ¦¢ ¦¢ b ¦¢ ÇÑ ´Ü¾î µÚ·Î ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ ¹®Àå ¦¢ ( ¦¢ Àü¹®ÀåÀÇ ½ÃÀÛÀ¸·Î ¦¢ ¦¢ ¦¢ ) ¦¢ ´ÙÀ½ ¹®ÀåÀÇ ½ÃÀÛÀ¸·Î ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ ´Ü¶ô ¦¢ { ¦¢ ÀÌÀü ´Ü¶ôÀÇ ½ÃÀÛÀ¸·Î ¦¢ ¦¢ ¦¢ } ¦¢ ´ÙÀ½ ´Ü¶ôÀÇ ½ÃÀÛÀ¸·Î ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ È­¸é ¦¢ H ¦¢ Çö È­¸éÀÇ °¡Àå óÀ½À¸·Î ¦¢ ¦¢ ¦¢ M ¦¢ Çö È­¸éÀÇ Áß°£ ºÎºÐÀ¸·Î ¦¢ ¦¢ ¦¢ L ¦¢ Çö È­¸éÀÇ °¡Àå ³¡À¸·Î ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ È­ÀÏ ¦¢ G ¦¢ È­ÀÏÀÇ ³¡À¸·Î ¦¢ ¦¢ ¦¢ 1G ¦¢ È­ÀÏÀÇ ½ÃÀÛÀ¸·Î ¦¢ ¦¢ ¦¢ nG ¦¢ È­ÀÏÀÇ n ¶óÀÎÀ¸·Î ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ 6. ÆíÁý È­¸é ´ÜÀ§·ÎÀÇ À̵¿ ÆíÁý ÀÛ¾÷µ¿¾È ´ÙÀ½°ú °°ÀÌ ÆíÁý È­¸é ´ÜÀ§·Î À̵¿À» ÇàÇÒ ¼ö ÀÖ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ À̵¿ ÇüÅ ¦¢¸í·É¾î ¦¢ À̵¿ ¹æÇâ ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ È­¸é ´ÜÀ§ ¦¢ ^f ¦¢ ´ÙÀ½ È­¸é ¦¢ ¦¢ ¦¢ ^b ¦¢ ÀÌÀü È­¸é ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ ¹Ý È­¸é ´ÜÀ§ ¦¢ ^d ¦¢ ´ÙÀ½ ¹Ý È­¸é ¦¢ ¦¢ ¦¢ ^u ¦¢ ÀÌÀü ¹Ý È­¸é ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ È­¸é ÀüÈÄÀÇ ¦¢ ^e ¦¢ ÇöÈ­¸é ´ÙÀ½ ¶óÀÎ ¦¢ ¦¢ ¶óÀÎ ´ÜÀ§ ¦¢ ^y ¦¢ ÇöÈ­¸é ÀÌÀü ¶óÀÎ ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ======================================================================== ´ÙÀ½ °­ÀÇ´Â À¯´Ð½º ½ºÅ©¸° ÆíÁý±âÀÎ viÀÇ ÆíÁý ¸í·É¾î¿¡ ´ëÇؼ­ ¼³¸í µå¸®°Ú½À´Ï´Ù. ------------------------------------------------------------------------ #19 À¯´Ï½Ã½º (adunis2 ) ½ºÅ©¸° ÆíÁý±â viÀÇ ÀÏ¹Ý ¸í·É¾î 02/07 09:19 231 line ½ºÅ©¸° ¿¡µðÅÍ viÀÇ ÆíÁý ¸í·É¾î ------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ»çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. -------------------------------------------------------------------- 1. ÅؽºÆ®ÀÇ °Ë»ö °Ë»ö ¸í·É¾î´Â ÁöÁ¤ÇÑ ¹®ÀÚ¿­ÀÌ µé¾îÀÖ´Â È­Àϳ»ÀÇ Æ¯Á¤ÇÑ À§Ä¡·Î Ä¿¼­¸¦ À§Ä¡½ÃÅ°´Âµ¥ ºü¸¥ ¹æ½ÄÀ» Á¦°øÇÑ´Ù. vi¿¡¼­ °Ë»ö ¸í·É¾î´Â edÀÇ °Ë»ö ¸í·É¾î¿Í ±âº»ÀûÀ¸·Î µ¿ÀÏÇÏ´Ù. ±×·¯³ª vi¿¡¼­´Â Ãß°¡·Î 2°¡Áö ¸í·É¾î Áï, n°ú NÀ» Á¦°øÇÑ´Ù. °Ë»ö ¸í·É¾î´Â ´ÙÀ½°ú °°´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ ¸í·É¾î ¦¢ ¼³ ¸í ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢/pattern ¦¢patternÀ¸·Î ÁöÁ¤µÈ ¹®ÀÚ¿­À» Á¤¹æÇâÀ¸·Î °Ë»ö ¦¢ ¦¢/ ¦¢µ¿ÀÏÇÑ pattern¿¡´ëÇØ Á¤¹æÇâ °Ë»öÀ» ¹Ýº¹¼öÇà ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢?pattern ¦¢patternÀ¸·Î ÁöÁ¤µÈ ¹®ÀÚ¿­À» ¿ª¹æÇâÀ¸·Î °Ë»ö ¦¢ ¦¢? ¦¢µ¿ÀÏÇÑ pattern¿¡´ëÇØ ¿ª¹æÇâ °Ë»öÀ» ¹Ýº¹¼öÇà ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢n ¦¢µ¿ÀÏÇÑ ¹æÇâÀ¸·Î ÀÌÀü °Ë»öÀ» ´Ù½Ã ¼öÇà ¦¢ ¦¢N ¦¢¹Ý´ë ¹æÇâÀ¸·Î ÀÌÀü °Ë»öÀ» ´Ù½Ã ¼öÇà ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ 2. ÆíÁý ÀÛ¾÷½ÃÀÇ º¸Á¶ ¸í·É¾î ´ÙÀ½ ¸í·É¾î´Â ÆíÁý ÀÛ¾÷½Ã À¯¿ëÇÑ ±â´ÉÀ» Á¦°øÇÑ´Ù. :set showmode È­¸éÀÇ ¿ìÃø ¾Æ·¡ÂÊ¿¡ ÇöÀçÀÇ ÅؽºÆ® ÀÔ·Â ¸ðµå¿¡ ´ëÇÑ »óÅÂÁ¤º¸¸¦ Ç¥½ÃÇÑ´Ù. »óÅÂÁ¤º¸´Â ÀÔ·Â ¸ðµå µ¿¾È¿¡¸¸ Ç¥½ÃµÈ´Ù. »óÅÂÁ¤º¸°¡ Ç¥½ÃµÇ¾î ÀÖÁö ¾ÊÀº °æ¿ì´Â vi°¡ ¸í·É¾î ¸ðµå»ó¿¡ ÀÖ´Ù´Â °ÍÀ» ÀǹÌÇÑ´Ù. ÀÌ ±â´ÉÀº ÇöÀçÀÇ vi ÀÛ¾÷ µ¿¾È¿¡¸¸ Àû¿ëµÈ´Ù. vi°¡ ±âµ¿µÇ¾úÀ»¶§ ÀÔ·Â ¸ðµåÀÇ »óÅ Á¤º¸°¡ Ç¥½ÃµÇ°ÔÇÏ´Â ¹æ¹ýÀº ÀÌÈÄ¿¡ ¼³¸íÇÑ´Ù. u ed ¸í·É¾î¿Í °°ÀÌ, undo ¸í·ÉÀº ÆíÁý ¹öÆÛ»ó¿¡¼­ Á÷ÀüÀÇ º¯°æÀ» Ãë¼ÒÇÑ´Ù. U Ä¿¼­°¡ À§Ä¡ÇÏ°í ÀÖ´Â ¶óÀο¡¼­ÀÇ ¸ðµç º¯°æÀ» Ãë¼ÒÇÑ´Ù. . Á÷ÀüÀÇ ÆíÁý º¯°æ³»¿ëÀ» ¹Ýº¹ ¼öÇàÇÑ´Ù. redo ¸í·ÉÀÎ . ¸í·É¾î´Â È­Àϳ»ÀÇ ¿©·¯ Àå¼Ò¿¡ µ¿ÀÏÇÑ º¯°æÀ» ¼öÇàÇÏ°íÀÚ ÇÒ °æ¿ì¿¡ À¯¿ëÇÏ´Ù. ÀÌ ¸í·ÉÀº ¹öÆÛ³»¿¡¼­ º¯°æ³»¿ëÀ» ÀúÀåÇϱâ À§ÇÑ ÆíÁý ÀÛ¾÷À» ¼öÇàÇÑ´Ù. µû¶ó¼­ ¿øÇÏ´Â À§Ä¡·Î Ä¿¼­¸¦ ÀçÀ§Ä¡ÇÏ°í, Á÷ÀüÀÇ ÆíÁý³»¿ëÀ» ´Ù½Ã ¼öÇàÇϱâ À§ÇØ . ¸í·É¾î¸¦ »ç¿ëÇÑ´Ù. º¯°æ³»¿ëÀº ¹öÆÛ³»¿¡¼­ ´Ù¸¥ º¯°æ³»¿ëÀÌ ¼öÇàµÉ¶§±îÁö ´Ù½Ã ¼öÇàµÉ ¼ö ÀÖ´Ù. 3. ÅؽºÆ®ÀÇ ÀÔ·Â vi´Â ÅؽºÆ®¸¦ ÀÔ·ÂÇϱâ À§ÇØ ¸î°¡Áö ¸í·É¾î¸¦ Á¦°øÇÑ´Ù. ±×µéÀ» ¾Æ·¡¿¡ ¿ä¾àµÇ¾î ÀÖ´Ù. ÅؽºÆ®¸¦ ÀÔ·ÂÇÑ ÈÄ¿¡ ´Ù¸¥ vi ¸í·É¾îµéÀ» ½ÇÇàÇϱâ Àü¿¡ ÀÔ·Â ¸ðµå¸¦ Á¾·áÇϱâÀ§ÇØ ¸¦ ´©¸¥´Ù. ÀԷ¸ðµå»ó¿¡¼­ÀÇ ÀÔ·Â ¿À·ù´Â stty »èÁ¦ Å°ÀÎ Åë»ó ^h ¶Ç´Â BS-F12¸¦ »ç¿ëÇÏ¿© ±³Á¤ÇÒ ¼ö ÀÖ´Ù. a ÇöÀçÀÇ Ä¿¼­ À§Ä¡ ÀÌÈÄ¿¡ ÅؽºÆ®¸¦ Ãß°¡ÇÑ´Ù. A ÇöÀçÀÇ ¶óÀÎ ÀÌÈÄ¿¡ ÅؽºÆ®¸¦ Ãß°¡ÇÑ´Ù. i ÇöÀçÀÇ Ä¿¼­ ÀÌÀü¿¡ ÅؽºÆ®¸¦ »ðÀÔÇÑ´Ù. I ÇöÀçÀÇ ¶óÀÎ ÀÌÀü¿¡ ÅؽºÆ®¸¦ »ðÀÔÇÑ´Ù o ÇöÀçÀÇ ¶óÀÎ ÀÌÈÄ¿¡ ºó¶óÀÎÀ» Ãß°¡ÇÏ°í, Å°¸¦ ´©¸¦¶§±îÁö °è¼ÓµÈ ÅؽºÆ® ÀÔ·ÂÀ» Çã¿ëÇÑ´Ù. O ÇöÀçÀÇ ¶óÀÎ À§¿¡ ºó¶óÀÎÀ» Ãß°¡ÇÏ°í, Å°¸¦ ´©¸¦¶§±îÁö °è¼ÓµÈ ÅؽºÆ® ÀÔ·ÂÀ» Çã¿ëÇÑ´Ù. r Ä¿¼­°¡ À§Ä¡ÇÏ°í ÀÖ´Â ÇÑ ¹®ÀÚ¸¦ °»½ÅÇÑ´Ù. R Å°¸¦ ´©¸¦¶§±îÁö °è¼ÓÀûÀ¸·ÎÅؽºÆ®¸¦ °»½ÅÇÑ´Ù. 4. ÅؽºÆ®ÀÇ ¼öÁ¤ ÅؽºÆ®¸¦ ¼öÁ¤ÇÏ´Â ±âº»ÀûÀÎ ±â´ÉµéÀº ´ÙÀ½°ú °°´Ù. ÀÌ·¯ÇÑ ÆíÁý ±â´ÉÀ» ¼öÇàÇÏ´Â ¸í·É¾îµéÀº ÀÌÈÄ¿¡ º°µµ·Î ¼³¸íÇÑ´Ù. »èÁ¦ Çϳª ¶Ç´Â ±× ÀÌ»óÀÇ ¹®ÀÚ ¶Ç´Â ÅؽºÆ® ¹üÀ§¸¦ »èÁ¦ÇÑ´Ù. À̵¿ ¹öÆÛ³»¿¡ ÁöÁ¤µÈ ÅؽºÆ®¸¦ »èÁ¦ÇÏ°í, ƯÁ¤ À§Ä¡¿¡ »èÁ¦µÇ¾ú´ø ³»¿ëÀ» º¹»çÇÑ´Ù. º¹»ç ÁöÁ¤ÇÑ ÅؽºÆ®¸¦ ¹öÆÛ³»·Î º¹»çÇÏ°í, ƯÁ¤ À§Ä¡¿¡ ±× ÅؽºÆ®¸¦ º¹»çÇÑ´Ù. ´ëÄ¡ Çϳª ¶Ç´Â ±× ÀÌ»óÀÇ ¹®ÀÚµéÀ» ¸¦ ´©¸¦¶§±îÁöÀÇ ÀÔ·Â ÅؽºÆ®·Î ¹Ù²Û´Ù. º¯°æ ÁöÁ¤ÇÑ ÅؽºÆ® ´ÜÀ§¸¦ ¸¦ ´©¸¦¶§±îÁöÀÇ ÀÔ·Â ÅؽºÆ®·Î ¹Ù²Û´Ù. 4.1 ÅؽºÆ®ÀÇ »èÁ¦ ÅؽºÆ®¸¦ »èÁ¦ÇϱâÀ§ÇÑ ¹æ¹ýÀº ÇöÀçÀÇ ¿î¿µ¸ðµå¿¡ µû¶ó ´Ù¸£´Ù. ÀԷ¸ðµå stty ¸í·É¾î¿¡ÀÇ Á¤ÀÇµÈ »èÁ¦ Å°´Â Åë»ó ^hÀÌ´Ù. ÀÌ Å°´Â Ä¿¼­¸¦ Çѹø¿¡ ÇÑ ±ÛÀÚ¾¿ ¿ÞÂÊÀ¸·Î À̵¿ÇÑ´Ù. ¹®ÀÚ´Â »èÁ¦µÇÁö ¾Ê´Â´Ù. À̵¿ÈÄ »õ·Î ÀÔ·ÂÇÏ´Â ³»¿ëÀ¸·Î ¼Õ½±°Ô ´ëÄ¡ÇÒ ¼ö ÀÖ´Ù. Å°µµ À¯»çÇÑ ±â´ÉÀ» ¼öÇàÇÑ´Ù. ¸í·É¾î ¸ðµå x ¸í·É¾î´Â ÇöÀç Ä¿¼­ À§Ä¡ÀÇ ¹®ÀÚ¸¦ »èÁ¦ÇÑ´Ù. º¹¼ö°³ÀÇ ¹®ÀÚµµ x ¸í·É¾î ÀÔ·ÂÀü¿¡ ºÐÀÚ¼ö¸¦ ¼ýÀÚ·Î ´©¸§À¸·Î½á »èÁ¦ÇÒ ¼ö ÀÖ´Ù. ¿¹¸¦µé¸é, 5x´Â Ä¿¼­ À§Ä¡ºÎÅÍ 5¹®ÀÚ¸¦ »èÁ¦ÇÑ´Ù. d ¸í·É¾î´Â ÅؽºÆ® ¹üÀ§¸¦ Ç¥½ÃÇÏ´Â ºÎÈ£¿¡ ÀÇÇØ ÁöÁ¤µÈ ÅؽºÆ® ´ÜÀ§¸¦ »èÁ¦ÇÑ´Ù. ¿¹¸¦µé¸é, dw´Â ÇÑ ´Ü¾î¸¦ »èÁ¦ÇÏ°í, d$´Â Ä¿¼­ºÎÅÍ ¶óÀÎÀÇ ³¡±îÁö¸¦ »èÁ¦ÇÏ°í, dd´Â Ä¿¼­¸¦ Æ÷ÇÔÇÏ°í ÀÖ´Â ÇöÀçÀÇ ¶óÀÎÀ» »èÁ¦ÇÑ´Ù. ¶ÇÇÑ ¸í·É¾î ¾Õ¿¡ ¼ýÀÚ¸¦ ÁöÁ¤ÇÔÀ¸·Î½á º¹¼ö°³ÀÇ ÅؽºÆ® ´ÜÀ§µéÀ» »èÁ¦ÇÒ ¼ö ÀÖ´Ù. ¿¹¸¦µé¸é, 3dd´Â Ä¿¼­°¡ À§Ä¡ÇÏ°í ÀÖ´Â ÇöÀçÀÇ ¶óÀκÎÅÍ ´ÙÀ½ µÎ¶óÀÎÀ» »èÁ¦ÇÑ´Ù. 4.2 ÅؽºÆ®ÀÇ À̵¿ ÅؽºÆ®ÀÇ À̵¿Àº 3 ´Ü°è·Î ¼öÇàÇÑ´Ù. 1) À̵¿ÇÒ ÅؽºÆ®¸¦ ¹öÆÛ³»¿¡¼­ »èÁ¦ÇÑ´Ù. Àû´çÇÑ ÅؽºÆ® ¹üÀ§¸¦ ÁöÁ¤ÇÏ¿© d ¸í·É¾î¸¦ »ç¿ëÇÏ¿© ¿øÇÏ´Â ÅؽºÆ®¸¦ »èÁ¦ÇÑ´Ù. ¶ÇÇÑ º¹¼öÀÇ ÅؽºÆ®¸¦ ´ë»óÀ¸·Î Çϱâ À§Çؼ­´Â ¼ýÀÚ¸¦ ÇÔ²² ÁöÁ¤ÇÏ¿© ó¸®ÇÒ ¼ö ÀÖ´Ù. ¿¹¸¦µé¸é, 2dd ¸í·É¾î´Â ¹öÆÛ³»¿¡¼­ 2 ¶óÀÎÀ» ( Ä¿¼­°¡ À§Ä¡ÇÏ°í ÀÖ´Â ¶óÀΰú ±× ´ÙÀ½ ¶óÀÎ ) »èÁ¦ÇÑ´Ù. 2) Ä¿¼­¸¦ ÅؽºÆ®¸¦ À̵¿ÇÒ À§Ä¡·Î ¿Å±ä´Ù. 3) ¹öÆÛ³»ÀÇ ÅؽºÆ®¸¦ ÇöÀçÀÇ Ä¿¼­ À§Ä¡¿¡ À§Ä¡½ÃŲ´Ù. (put) ÇöÀç Ä¿¼­ ÀÌÈÄ¿¡ ÅؽºÆ®¸¦ À§Ä¡½ÃÅ°±â À§Çؼ­´Â p ¸í·É¾î¸¦ »ç¿ëÇÑ´Ù. ¹öÆÛ´Â ¿ÀÁ÷ Á÷ÀüÀÇ °»½Å ³»¿ë¸¸À» ÀúÀåÇϱ⠶§¹®¿¡ ÀÌ ¸í·ÉÀº »èÁ¦ ¸í·É¾î¸¦ ¼öÇàÇÑ ÈÄ¿¡ Áï°¢ÀûÀ¸·Î »ç¿ëÇØ¾ß ÇÑ´Ù. ÀÌ¿Í À¯»çÇÑ P ¸í·É¾î´Â Ä¿¼­ ÀÌÀü¿¡ »èÁ¦µÈ ÅؽºÆ®¸¦ À§Ä¡½ÃŲ´Ù. °»½Å ³»¿ëÀÌ ¹öÆÛ³»¿¡ À¯ÁöµÇ¾îÁö´Â µ¿¾È¿¡´Â, put ¸í·É¾î´Â È­ÀÏ ¾î´À °÷¿¡¼­³ª µ¿ÀÏ ÅؽºÆ®¿¡ ´ëÇØ ¿©·¯¹ø À̵¿À» ¼öÇàÇÒ ¼ö ÀÖ´Ù. 4.3 ÅؽºÆ®ÀÇ º¹»ç ÅؽºÆ®ÀÇ º¹»ç ÀýÂ÷´Â ÅؽºÆ® À̵¿ ÀýÂ÷¿Í À¯»çÇÏ´Ù. 1) ¹öÆÛ³»·Î º¹»çÇÒ ÅؽºÆ®¸¦ º¹»çÇÑ´Ù. Àû´çÇÑ ÅؽºÆ® ¹üÀ§¸¦ ÁöÁ¤ÇÑ y ¸í·É¾î¸¦ »ç¿ëÇÏ¿© ¿øÇÏ´Â ÅؽºÆ®¸¦ ¹öÆÛ³»·Î º¹»çÇÑ´Ù. ¶ÇÇÑ º¹¼öÀÇ ÅؽºÆ®µéÀ» ´ë»óÀ¸·Î ÇϱâÀ§ÇØ ¼ýÀÚ¸¦ ¸í·É¾î¿¡ ÇÔ²² ÁöÁ¤ÇÏ¿© ó¸®ÇÒ ¼ö ÀÖ´Ù. ¿¹¸¦µé¸é, 2yy ¸í·É¾î´Â 2 ¶óÀÎÀ»(Ä¿¼­°¡ À§Ä¡ÇÏ°í ÀÖ´Â ¶óÀΰú ±× ´ÙÀ½ ¶óÀÎ) ¹öÆÛ³»·Î º¹»çÇÑ´Ù. 2) ÅؽºÆ®¸¦ º¹»çÇÏ°íÀÚ ÇÏ´Â À§Ä¡·Î Ä¿¼­¸¦ ¿Å±ä´Ù. 3) ¹öÆÛ³»ÀÇ ÅؽºÆ®¸¦ ÇöÀçÀÇ Ä¿¼­ À§Ä¡¿¡ º¹»çÇÑ´Ù. Ä¿¼­ ÀÌÈÄ¿¡ ÅؽºÆ®¸¦ À§Ä¡½ÃÅ°±â(º¹»çÇϱâ) À§ÇØ p ¸í·É¾î¸¦ »ç¿ëÇÑ´Ù. ¹öÆÛ¿¡´Â ¿ÀÁ÷ Á÷ÀüÀÇ º¹»çµÈ ³»¿ë¸¸À» º¸Á¸ÇÏ°Ô µÊÀ¸·Î, yank ¸í·É¾î¸¦ ¼öÇàÇÑ ÈÄ ¹Ù·Î p ¸í·É¾î¸¦ ¼öÇàÇÑ´Ù. ÀÌ¿Í À¯»çÇÏ°Ô P ¸í·ÉÀº ÇöÀçÀÇ Ä¿¼­ À§Ä¡Àü¿¡ ¹öÆÛ³»¿¡ º¹»çµÇ¾î ÀÖ´Â ÅؽºÆ®¸¦ À§Ä¡½ÃŲ´Ù.(º¹»çÇÑ´Ù) ¶ÇÇÑ º¹»çµÈ ÅؽºÆ®°¡ ¹öÆÛ³»¿¡ À¯ÁöµÇ´Â µ¿¾ÈÀº °è¼ÓÀûÀ¸·Î ¼öÇàÇÒ ¼ö ÀÖ´Ù. 4.4 ÅؽºÆ®ÀÇ ´ëÄ¡ ÀÌ ¸í·É¾î´Â Å°¸¦ ´©¸¦¶§±îÁö ÅؽºÆ® ÀÔ·ÂÀ¸·Î ¶óÀλóÀÇ Çϳª ¶Ç´Â ±× ÀÌ»óÀÇ ¹®ÀÚµéÀ» ´ëÄ¡ÇÏ´Â »èÁ¦¿Í Ãß°¡ ±â´ÉÀ» Á¶ÇÕÇÑ ¸í·ÉÀÌ´Ù. $ Ç¥½Ã°¡ ÅؽºÆ® ´ëÄ¡ÀÇ ³¡À» Ç¥½ÃÇϱâ À§ÇØ ¸¶Áö¸· ¹®ÀÚ À§Ä¡¿¡ ³ªÅ¸³­´Ù. ¿¹¸¦µé¸é, 4s ¸í·É¾î´Â Ä¿¼­À§Ä¡ºÎÅÍ ½ÃÀÛÇÏ¿© 4¹®ÀÚ¸¦ »èÁ¦ÇÏ°í, Å°¸¦ ´©¸¦¶§±îÁöÀÇ ÀÏ·ÃÀÇ ´ëÄ¡ ÅؽºÆ®¸¦ Ãß°¡ÇϱâÀ§ÇØ ÀÔ·Â ¸ðµå¸¦ °³½ÃÇÑ´Ù. ´ëÄ¡(substitute) ¸í·É¾î´Â ¾Æ·¡ÀÇ µµÇ¥¿¡¼­ ¼³¸íµÈ´Ù. ¶óÀÎ ¿¡µðÅÍ ¸í·É¾î´Â :(colon)À» ¸í·É¾î ¾Õ¿¡ ÁöÁ¤ÇÔÀ¸·Î½á last line mode¿¡¼­ ½ÇÇàÇÒ ¼ö ÀÖ´Ù. ´ëÄ¡ ¹üÀ§¸¦ ÁöÁ¤Çϱâ À§ÇØ, ¸í·É¾î¸¦ ½ÇÇàÇϱâ Àü¿¡ Ä¿¼­¸¦ À§Ä¡½ÃÅ°°Å³ª ¶Ç´Â ÇÊ¿ä·ÎÇÏ´Â ¸í·É¾î»ó¿¡ ¶óÀÎÀÇ ¹üÀ§¸¦ ÁöÁ¤ÇÑ´Ù. ¿¹¸¦µé¸é, :1,$s/help/assistance/g ¸í·ÉÀº È­Àϳ»ÀÇ ¸ðµç help ¹®ÀÚ¿­À» assistance ¹®ÀÚ¿­·Î ´ëÄ¡ÇÑ´Ù. substitute ¸í·É¾î´Â ´Ü¾î, ¹®ÀÚ, ´Ü¶ôµîÀ» ´ëÄ¡Çϱâ À§ÇÑ ÅؽºÆ® ¹üÀ§¸¦ ÁöÁ¤ÇÏ´Â ºÎÈ£¸¦ ¹Þ¾ÆµéÀÌÁö ¾Ê´Â´Ù. ÀÌÈÄ¿¡ ¼³¸íµÇ´Â change ¸í·É¾î´Â ÀÌ¿Í°°Àº ƯÁ¤ ´ÜÀ§ÀÇ ÅؽºÆ®µéÀ» ´ëÄ¡Çϴµ¥ À¯¿ëÇÏ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ ¸í·É¾î ¦¢ ¼³ ¸í ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ s ¦¢ ÇÑ ¹®ÀÚ¸¦ ´ëÄ¡ÇÏ°í, ÅؽºÆ®¸¦ Ãß°¡ÇÑ´Ù. ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ ns ¦¢ n ¹®ÀÚ¸¦ ´ëÄ¡ÇÏ°í, ÅؽºÆ®¸¦ Ãß°¡ÇÑ´Ù. ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ S ¦¢ ÇÑ ¶óÀÎ Àüü¸¦ ´ëÄ¡ÇÑ´Ù. ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ 4.5 ÅؽºÆ®ÀÇ º¯°æ change ¸í·É¾î c´Â substitute ¸í·É°ú À¯»çÇÑ ±â´ÉÀ» ¼öÇàÇϸç, ´ë»ó ÅؽºÆ®¸¦ ´Ù¾çÇÑ ½Éº¼·Î¼­ °£ÆíÇÏ°Ô ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù. {¿¹¸¦µé¸é, w (word), ) (sentence) } c ¸í·É¾î´Â Å°¸¦ ´©¸¦¶§±îÁöÀÇ ÅؽºÆ® ÀÔ·ÂÀ¸·Î ÁöÁ¤ÇÑ ÅؽºÆ®¸¦ ´ëÄ¡ÇÑ´Ù. ¶ÇÇÑ $ Ç¥½Ã°¡ ´ëÄ¡µÉ ÅؽºÆ®ÀÇ ³¡À» Ç¥½ÃÇϱâ À§ÇØ ´ëÄ¡µÉ ¸¶Áö¸· ¹®ÀÚ¿¡ Ç¥½ÃµÈ´Ù. ¿¹¸¦µé¸é, 3cc´Â Ä¿¼­°¡ À§Ä¡ÇÏ°í ÀÖ´Â ¶óÀκÎÅÍ ½ÃÀÛÇÏ¿© 3 ¶óÀÎÀÇ ÅؽºÆ®¸¦ Å°¸¦ ´©¸¦¶§±îÁö ÀԷµǴ ÅؽºÆ®·Î ´ëÄ¡ÇÑ´Ù. ( ¿¹Á¦ ) ¦£¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ cw ¦¢Ä¿¼­°¡ À§Ä¡ÇÏ°í ÀÖ´Â ÇöÀç ´Ü¾î¸¦ Å°¸¦ ¦¢ ¦¢ ¦¢´©¸¦¶§±îÁöÀÇ ÅؽºÆ® ÀÔ·ÂÀ¸·Î ¹Ù²Û´Ù. ¦¢ ¦§¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ 7cc ¦¢ÇöÀç ¶óÀκÎÅÍ ½ÃÀÛÇÏ¿© 7 ¶óÀÎÀ» »èÁ¦ÇÏ°í, Å°¸¦ ¦¢ ¦¢ ¦¢´©¸¦¶§±îÁö ÅؽºÆ® ÀÔ·ÂÀ» ¹Þ¾ÆµéÀ̱â À§ÇØ ÀԷ¸ðµå¸¦ °³½ÃÇÑ´Ù¦¢ ¦§¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ 4c) ¦¢4 ¹®ÀåÀ» »èÁ¦ÇÏ°í, Å°¸¦ ´©¸¦¶§±îÁö ´ëÄ¡ ÅؽºÆ®ÀÇ ¦¢ ¦¢ ¦¢ÀÔ·ÂÀ» Çã¿ëÇÑ´Ù. ¦¢ ¦¦¦¡¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ======================================================================== ´ÙÀ½ °­ÀÇ´Â ½ºÅ©¸° ÆíÁý±âÀÎ viÀÇ ¶óÀÎ ¿¡µðÅÍ ¸í·É¾î¹× viÀÇ È¯°æ Á¦¾î¿¡ ´ëÇؼ­ ¼³¸í µå¸®°Ú½À´Ï´Ù. ------------------------------------------------------------------------ #20 À¯´Ï½Ã½º (adunis2 ) vi ¶óÀÎ ¿¡µðÅÍ ¸í·É¾î¹× ȯ°æ Á¦¾î 02/08 08:45 150 line viÀÇ ¶óÀÎ ¿¡µðÅÍ ¸í·É¾î¹× ȯ°æ Á¦¾î ------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ»çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. -------------------------------------------------------------------- 1. viÀÇ ¶óÀÎ ¿¡µðÅÍ ¸í·É¾î ¶óÀÎ ¿¡µðÅÍ ¸í·É¾îµéÀº last line mode¿¡¼­ ¼öÇàÇÒ¼ö ÀÖÀ¸¸ç, ¶óÀÎ ¿¡µðÅÍ ¸í·É¾î ¾Õ¿¡ :(colon)À» ÁöÁ¤ÇÔÀ¸·Î½á vi¿¡¼­ ¼öÇàÇÒ ¼ö ÀÖ´Ù. ¶óÀÎ ¿¡µðÅÍ ¸í·ÉÀ» ÀÔ·ÂÇϱâ À§ÇØ :À» ´©¸£¸é, Ä¿¼­´Â È­¸é»óÀÇ °¡Àå ¸¶Áö¸· ¶óÀÎÀ¸·Î À̵¿ÇϰԵǸç, ÀÔ·ÂÇÏ´Â ¸í·É¾îµéÀÌ È­¸é»ó¿¡ Ç¥½ÃµÇ¸ç, À» ´©¸§À¸·Î½á ½ÇÇàÇÒ ¼ö ÀÖ´Ù. ºó¹øÇÏ°Ô »ç¿ëµÇ´Â ¶óÀÎ ¿¡µðÅÍ ¸í·É¾îµéÀº ¾Æ·¡¿Í °°´Ù. ¶ÇÇÑ ÀϹÝÀûÀ¸·Î ¸¹ÀÌ »ç¿ëµÇ¾îÁö´Â ¸í·É¾îÀÇ º¯Çüµµ °°ÀÌ ¼³¸íµÈ´Ù. º¸´Ù ÀÚ¼¼ÇÑ ¼³¸íÀº À¯´Ï½Ã½º U6000 ½Ã½ºÅÛ »ç¿ëÀÚ °¡À̵带 ÂüÁ¶Çϱ⠹ٶõ´Ù. :!command Çϳª ¶Ç´Â ±×ÀÌ»óÀÇ ½© ¸í·É¾îµéÀ» ¼öÇàÇϱâ À§ÇØ À¯´Ð½º ½©ÀÇ ÀϽÃÀû ¾ï¼¼½º¸¦ Çã¿ëÇÑ´Ù. Çѹø¿¡ º¹¼ö command¸¦ ÁöÁ¤Çϱâ À§Çؼ­´Â ;(¼¼¹ÌÄÝ·Ð)À» »ç¿ëÇÑ´Ù. ÁöÁ¤ÇÑ ¸í·É¾îÀÇ ½ÇÇàÀÌ Á¾·áµÈÈÄ ¸í·É¾îÀÇ Ãâ·ÂÀÌ Ç¥½ÃµÇ´Âµ¥, ÀÌÈÄ ÆíÁýÀÛ¾÷ÀÌ °è¼ÓµÈ´Ù´Â °ÍÀ» ÀǹÌÇÏ´Â [Hit return to continue]¶ó´Â ¸Þ¼¼Áö°¡ Ç¥½ÃµÈ´Ù. À̶§ ¾Æ¹« Å°³ª ÀÔ·ÂÇϸé vi ÆíÁýÀÛ¾÷ÀÌ °è¼ÓµÈ´Ù. ¶ÇÇÑ ½©·Î ÀÏÁ¤±â°£ ºüÁ®³ª¿Í ½© ¸í·ÉÀÇ ¼öÇàÀ» ¿øÇÒ °æ¿ì¿¡´Â :sh ¸í·ÉÀ» »ç¿ëÇÑ´Ù. À̶§ Ç¥½ÃµÇ´Â ½© ÇÁ·ÒÇÁÆ®´Â À¯´Ð½º ½©ÀÇ ¾ï¼¼½º¸¦ ¼öÇàÇÏ°í ÀÖ´Ù´Â °ÍÀ» ÀǹÌÇÑ´Ù. ½©¿¡¼­ ÀÛ¾÷µµÁß¿¡ ÆíÁýÀÛ¾÷À¸·Î µÇµ¹¾Æ°¡±â À§Çؼ± ^d ³ª exit ¸í·ÉÀ» ½ÇÇàÇÑ´Ù. :f ÇöÀç ÆíÁýÁßÀÎ È­Àϸí, Ä¿¼­°¡ À§Ä¡ÇÏ°í ÀÖ´Â ¶óÀÎ ¹øÈ£, È­ÀÏ¿¡¼­ Ä¿¼­°¡ À§Ä¡ÇÏ°í ÀÖ´Â ¶óÀÎÀÇ ¹éºÐÀ²À» Ç¥½ÃÇÑ´Ù. ¶ÇÇÑ :f newfile ¸í·É¾î´Â ¹öÆÛ»ó¿¡¼­ ÇöÀçÀÇ È­ÀϸíÀ» ´Ù½Ã ¼³Á¤ÇÑ´Ù. ÀÌ °æ¿ì µð½ºÅ©»ó¿¡ Á¸ÀçÇÏ´Â ±âÁ¸ÀÇ È­Àϸ鿡´Â ¿µÇâÀ» ÁÖÁö ¾Ê´Â´Ù. :r ÇöÀç Ä¿¼­°¡ À§Ä¡ÇÏ°í ÀÖ´Â ¶óÀÎ ¾Æ·¡¿¡ ÇöÀç ¶Ç´Â ÁöÁ¤ÇÑ È­ÀÏÀÇ ³»¿ëÀ» Àоî¿Â´Ù. :r !command´Â ÇöÀç ¶óÀÎ ¾Æ·¡¿¡ ÁöÁ¤ÇÑ ¸í·É¾îÀÇ ½ÇÇà °á°ú¸¦ Àоî¿Â´Ù. :e ¹öÆÛ»ó¿¡¼­ ÆíÁýÁßÀÎ ÇöÀçÀÇ È­ÀÏÀ» ÁöÁ¤ÇÑ È­ÀÏ·Î ´ëÄ¡ÇÑ´Ù. ÀÌ °æ¿ì ÆíÁýÁßÀÎ È­ÀÏÀÌ ¼öÁ¤µÇ¾î, ¹öÆÛ»óÀÇ È­ÀÏÀ» ´ëÄ¡Çϱâ Àü¿¡ ÀúÀåÇÒ ÇÊ¿ä°¡ ÀÖ´Ù¸é, °æ°í ¸Þ¼¼Áö°¡ Ç¥½ÃµÈ´Ù. :e! ¸í·É¾î´Â ÇöÀç ÆíÁýÁßÀÎ È­ÀÏÀÇ º¯°æ »çÇ×À» ¹«½ÃÇÏ°í, ÆíÁý±â¸¦ Á¾·áÇÏÁö ¾ÊÀº »óÅ¿¡¼­ »õ·Î¿î È­ÀÏ·Î ÆíÁýÀÛ¾÷À» °è¼ÓÇϵµ·Ï ÇØÁØ´Ù. ¶ÇÇÑ :e! newfile ¸í·É¾î´Â ÇöÀç ÆíÁýÁßÀÎ È­ÀÏ¿¡¼­ÀÇ º¯°æ »çÇ×À» ¹ö¸®°í, ÁöÁ¤ÇÑ È­ÀÏ·Î ¹öÆÛ»óÀÇ È­ÀÏÀ» ´ëÄ¡ÇÑ´Ù. :w ¹öÆÛ»ó¿¡¼­ ÆíÁýÁßÀÎ È­ÀÏÀ» ÀúÀåÇÑ´Ù. ¶ÇÇÑ ÆíÁýÁßÀÎ È­ÀÏÁß ÀϺκРÁï, ƯÁ¤ ¹üÀ§ÀÇ ¶óÀε鸸À» ÀúÀåÇÒ ¼ö Àִµ¥, ÀÌ °æ¿ì w ¸í·É¾î ¾Õ¿¡ ¶óÀÎ ¹üÀ§¸¦ ÁöÁ¤ÇÑ´Ù. ÀÌ°æ¿ì ¿ø·¡ÀÇ È­ÀÏ ¼Õ»óÀ» ¹æÁöÇÏ°í, È­ÀÏÀ» µû·Î À¯ÁöÇϱâ À§ÇØ Åë»ó ´Ù¸¥ È­ÀϸíÀ» w ¸í·É¾î¿Í ÇÔ²² ÁöÁ¤ÇÑ´Ù. À̶§ ±âÁ¸¿¡ Á¸ÀçÇÏ´Â È­ÀϸíÀ» ÁöÁ¤Çϸé. vi´Â È­ÀÏÀÌ ÀÌ¹Ì Á¸ÀçÇÏ°í ÀÖ´Ù´Â °æ°í ¸Þ¼¼Áö¸¦ Ç¥½ÃÇÏ°í, ÀÛ¾÷À» ¼öÇàÇÏÁö ¾Ê´Â´Ù. ÀÌ °æ¿ì :w! ¸í·É¾î´Â ÆíÁý ¹öÆÛ»óÀÇ ³»¿ëÀ¸·Î ÁöÁ¤ÇÑ È­ÀÏ¿¡ ÀúÀåÇÑ´Ù. (overwrite) :q ÆíÁý±â¸¦ Á¾·áÇÑ´Ù. ÀϹÝÀûÀ¸·Î, ÀÌ ¸í·É¾î´Â ÀúÀå ¸í·É¾î¿Í ÇÔ²² ¶Ç´Â ±× ÀÌÈÄ¿¡ »ç¿ëÇÑ´Ù. :q! ¸í·É¾î´Â È­Àϳ»ÀÇ ¸ðµç °»½Å ³»¿ëÀ» ¹«½ÃÇÏ°í ÆíÁý±â¸¦ Á¾·áÇÑ´Ù. :set ÆíÁý ȯ°æÀ» ¼öÁ¤ÇÑ´Ù. set ¸í·É°ú ÇÔ²² ÁöÁ¤µÇ¾îÁö´Â ¿É¼ÇµéÀº(option) ÀÌÈÄ °è¼Ó ¼³¸íµÈ´Ù. 2. vi ȯ°æÀÇ º¯°æ set ¸í·ÉÀÇ ¿É¼ÇµéÀº vi ÆíÁý ȯ°æÀ» ¼öÁ¤Çϱâ À§ÇØ Á¤ÀÇµÉ ¼ö ÀÖ´Ù. ÀÌ·¯ÇÑ ¿É¼ÇµéÀº ¶óÀÎ ¹øÈ£ÀÇ Ç¥½Ã, ¹®ÀÚ¿­ °Ë»ö½Ã ´ë¼Ò¹®ÀÚ ±¸º° ¹«½Ã, ¶Ç´Â tab°ú indent °°Àº È­¸é»ó¿¡ Ç¥½Ã ºÒ°¡´ÉÇÑ ¹®ÀÚµéÀÇ Ç¥½Ãµî°ú °°Àº ¸¹Àº ±â´ÉµéÀ» ¼öÇàÇÑ´Ù. ÀÌÀü¿¡ viÀÇ ÀϹݻçÇ׿¡ °üÇÑ °­ÀÇ¿¡¼­ ÀÌ¹Ì :set showmode ¸í·É¾î°¡ ÀÔ·Â ¸ðµåÀÇ ÇÁ·ÒÇÁÆ®¸¦ Ç¥½ÃÇϱâÀ§ÇØ »ç¿ëµÈ´Ù´Â °ÍÀ» ¼³¸íÇß´Ù. ÀÌ·¯ÇÑ ¿É¼ÇµéÀº enable(¼³Á¤), disable(ÇØÁ¦)ÇϱâÀ§ÇØ set ¸í·É¾î¸¦ »ç¿ëÇÑ´Ù. 2.1 set¸í·É¾îÀÇ ¿É¼Ç È®ÀÎ set ¸í·É¾îÀÇ ¸ðµç ¿É¼ÇµéÀ» È®ÀÎÇϱâ À§Çؼ­´Â :set all ¸í·ÉÀ» ¼öÇàÇÑ´Ù. ¶ÇÇÑ °¢°¢ÀÇ ¿É¼Ç¿¡ ÇöÀç ¼³Á¤µÇ¾î ÀÖ´Â °ªÀ» È®ÀÎÇϱâ À§Çؼ­´Â :set option_name? ¸í·É¾î¸¦ »ç¿ëÇÑ´Ù. ¶Ç´Â ±âº»°ªÀÌ º¯°æµÇ¾îÁø ¿É¼ÇÀ» È®ÀÎÇϱâ À§Çؼ­´Â :set ¸í·É¾î¸¦ »ç¿ëÇÑ´Ù. 2.2 ¿É¼ÇÀÇ ¼³Á¤ ¸î¸î ¿É¼ÇÀº :set option_nameó·³ set ¸í·É¾î¿Í ÇÔ²² ¿É¼Ç À̸§À» ÁöÁ¤ÇÔÀ¸·Î½á ¼³Á¤ÇÒ ¼ö ÀÖ´Ù. ÀÌ·± ¿É¼ÇµéÀº :set no_option_name°ú °°ÀÌ ¿É¼Ç¸í¿¡ no¸¦ ºÙ¿© ÁöÁ¤ÇÔÀ¸·Î½á ÇØÁ¦ÇÒ ¼ö ÀÖ´Ù. ¿¹¸¦µé¸é, :set number ¸í·ÉÀº ÆíÁý ÀÛ¾÷ µ¿¾È¿¡ ¶óÀÎ ¹øÈ£¸¦ Ç¥½ÃÇÑ´Ù. ¶ÇÇÑ :set nonumber ¸í·ÉÀº ÆíÁý ÀÛ¾÷ µ¿¾È¿¡ ¶óÀÎ ¹øÈ£¸¦ Ç¥½ÃÇÏÁö ¾Ê°Ô ÇÑ´Ù. ´Ù¸¥ ¿É¼ÇµéÀº º¯°æ °¡´ÉÇÑ °ªµéÀ» ´ëÀÔÇÏ´Â Çü½ÄÀ¸·Î ¼³Á¤ÇÑ´Ù. ¿¹¸¦µé¸é, :set window=5´Â ½ºÅ©¸°ÀÇ Å©±â¸¦ 5 ¶óÀÎÀ¸·Î ¼³Á¤ÇÑ´Ù. ½ºÅ©¸° Å©±â¸¦ ´Ù½Ã ¼³Á¤Çϱâ À§Çؼ­´Â :set window=10°ú °°ÀÌ ¿É¼Ç¿¡ ´Ù¸¥ °ªÀ» ´ëÀÔÇÑ´Ù. º¹¼ö°³ÀÇ ¿É¼ÇÀÌ ÇϳªÀÇ set ¸í·É¾î ¶óÀο¡ µ¿ÀÏ ½ËÁ¡¿¡ ¼³Á¤µÉ ¼ö ÀÖ´Ù. ¿¹¸¦µé¸é, :set numbershowmode ¸í·É¾î´Â ¶óÀÎ ¹øÈ£¹× ÀÔ·Â ¸ðµåÀÇ »óÅ ÇÁ·ÒÇÁÆ®¸¦ Ç¥½ÃÇÑ´Ù. set ¿É¼ÇµéÀº ¸î°¡Áö ¹æ½ÄÀ¸·Î Á¤ÀÇÇÒ ¼ö ÀÖ´Ù. . ÆíÁý ÀÛ¾÷ µ¿¾È¿¡ ¿É¼ÇÀ» ¼³Á¤ÇÑ´Ù. ÀÌ °æ¿ì, ¿É¼ÇÀº ÇöÀçÀÇ ÆíÁý ÀÛ¾÷ µ¿¾È¿¡¸¸ È¿·ÂÀ» °®´Â´Ù. . ÀÚµ¿ ½ÇÇàÀ» ÅëÇØ ¿É¼ÇÀ» ¼³Á¤ÇÑ´Ù. - »ç¿ëÀÚ ·Î±×ÀÎ ÀÛ¾÷½Ã¿¡ ÀÚµ¿ ½ÇÇàÇϱâ À§ÇØ .profile¿¡ set ¸í·É¾î¿Í ¿É¼ÇÀ» EXINIT='set option1 option2'°ú °°Àº Çü½ÄÀ¸·Î ÁöÁ¤ÇÑ´Ù. ¿©±â¿¡¼­ EXINIT¶ó´Â º¯¼ö´Â vi°¡ µ¶Á¡ »ç¿ëÇÏ´Â º¯¼öÀ̸ç, set ¸í·É¾î¿Í optionµéÀº ¹Ýµå½Ã ' ' ·Î ¹­¾î ÁÖ¾î¾ß ÇÑ´Ù. ¿¹¸¦µé¸é EXINIT='set showmode number'¿Í °°Àº Çü½ÄÀÌ´Ù. - set ¸í·É¾î¿Í ¿É¼ÇÀ» Æ÷ÇÔÇÏ°í ÀÖ´Â .exrc¶ó´Â È­ÀÏÀ» »ç¿ëÀÚÀÇ home directory¿¡ »ý¼ºÇÑ´Ù. ÀÌ È­ÀÏÀº vi°¡ ±âµ¿µÉ¶§ ½ÇÇàµÇ°Ô µÈ´Ù. ÀÌ È­ÀÏ ¾È¿¡¼­ÀÇ ¿É¼Ç ¼³Á¤ ¹æ½ÄÀº ÆíÁý ÀÛ¾÷½Ã ¿É¼Ç ¼³Á¤°ú °°Àº ¹æ½ÄÀ¸·Î ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù. À̶§´Â EXINIT¶ó´Â º¯¼ö´Â »ç¿ëµÇÁö ¾Ê´Â´Ù. ¿¹¸¦µé¸é, set showmode number°ú °°´Ù. 3. viÀÇ Àå¾Ö º¹±¸ ±â´É À¯´Ð½º´Â vi°¡ ºñÁ¤»óÀûÀ¸·Î Á¾·áÇÒ¶§ ¹öÆÛÀÇ ³»¿ëÀ» º¸Àü ÇØÁØ´Ù. ¹öÆÛÀÇ ³»¿ëÀº ÆíÁýµÇ´ø È­ÀÏ°ú µ¿ÀÏ À̸§À¸·Î vi È­ÀÏ¿¡ ÀúÀåµÈ´Ù. º¸Á¸µÇ¾ú´ø È­ÀÏÀ» vi¸¦ ÅëÇØ ¾ï¼¼½º ÇÏ·Á¸é ´ÙÀ½°ú °°Àº Çü½ÄÀ¸·Î ¸í·É¾î¸¦ ÁöÁ¤ÇÑ´Ù. vi -r file_name È­ÀÏÀÇ ÆíÁýÀ» °è¼ÓÇϰųª, ÀúÀåÇÑ ÈÄ, ÆíÁý±â¸¦ Á¾·áÇÑ´Ù. ======================================================================== ´ÙÀ½ °­ÀÇ´Â µð·ºÅ丮¹× È­ÀÏÀ» °ü¸®Çϱâ À§ÇÑ À¯´Ð½º ¸í·É¾îµé¿¡ ´ëÇؼ­ ¼³¸í µå¸®°Ú½À´Ï´Ù. ------------------------------------------------------------------------ #21 À¯´Ï½Ã½º (adunis2 ) È­ÀÏ¹× µð·ºÅ丮 °ü¸® ¸í·É¾î ÀÏ¹Ý 02/08 08:47 41 line À¯´Ð½º µð·ºÅ丮¹× È­ÀÏ °ü¸®¿ë ¸í·É¾îµéÀÇ °³¿ä ------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ»çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. -------------------------------------------------------------------- 1. À¯´Ð½º µð·ºÅ丮¹× È­Àϵé À¯´Ð½º´Â ´Ù¾çÇÑ »ç¿ëÀÚÀÇ ÀÛ¾÷À» Áö¿øÇϱâ À§ÇØ ¼ö¹é¿©°³ÀÇ À¯Æ¿¸®Æ¼µéÀ» Á¦°øÇÑ´Ù. ÇâÈÄ ÀÏÁ¤±â°£ µ¿¾È À¯´Ð½º Åë½Å °­Á¿¡¼­´Â ÀϹÝÀûÀ¸·Î °¡Àå ³Î¸® »ç¿ëµÇ´Â µð·ºÅ丮¸¦ »ç¿ëÇÏ°í, Á¶Á÷È­Çϱâ À§ÇÑ ¸í·É¾î¹× È­ÀÏ ½Ã½ºÅÛ ±¸Á¶»ó¿¡¼­ È­ÀÏÀ» Á¶ÀÛ, °ü¸®Çϱâ À§ÇÑ À¯Æ¿¸®Æ¼µé¿¡ ´ëÇؼ­ ¼³¸íÇÕ´Ï´Ù. ´ÙÀ½Àº ÇâÈÄ ÀÏÁ¤±â°£ µ¿¾È ¼³¸íµÉ À¯´Ð½º À¯Æ¿¸®Æ¼µé¿¡ ´ëÇÑ ¼Ò°³ÀÔ´Ï´Ù. 1) µð·ºÅ丮ÀÇ °ü¸® (1) ÇöÀçÀÇ µð·ºÅ丮ÀÇ Àý´ë °æ·Î¸¦ Ç¥½Ã pwd (2) ÇöÀç µð·ºÅ丮ÀÇ ³»¿ëÀ» Ãâ·Â ls (3) »õ·Î¿î µð·ºÅ丮ÀÇ »ý¼º mkdir (4) ÀÛ¾÷µð·ºÅ丮ÀÇ À̵¿ cd (5) ÇöÀçÀÇ µð·ºÅ丮µéÀÇ »èÁ¦ rmdir 2) È­ÀÏÀÇ °ü¸® (1) È­ÀÏÀÇ Á¾·ù¸¦ ºÐ·ù file (2) È­ÀÏÀÇ ³»¿ëÀ» Ãâ·Â cat, pg (3) È­ÀÏÀÇ º¹»ç cp (4) È­ÀÏÀÇ À̵¿¹× À̸§ º¯°æ mv (5) È­ÀÏÀÇ ¸µÅ© ln (6) È­ÀÏÀÇ ÇÁ¸°Æ® pr, lp, lpstat, cancel disable, enable (7) È­ÀÏÀÇ À§Ä¡ °Ë»ö find (8) È­Àϳ»ÀÇ Æ¯Á¤ ¹®ÀÚ¿­ °Ë»ö grep (9) È­ÀÏ ³»¿ëÀ» Á¤·Ä sort (10) È­ÀÏÀÇ »èÁ¦ rm ======================================================================== ´ÙÀ½ °­ÀÇ¿¡¼­´Â pwd ¿Í mkdir ¸í·É¾î¿¡ ´ëÇؼ­ ¼³¸í µå¸®°Ú½À´Ï´Ù. ------------------------------------------------------------------------ #22 À¯´Ï½Ã½º (adunis2 ) µð·ºÅ丮 °ü¸® ¸í·É: pwd¿Í mkdir 02/08 13:05 106 line µð·ºÅ丮 °ü¸® ¸í·É : pwd¿Í mkdir ------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ»çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. -------------------------------------------------------------------- ¿ì¼± ÀÌ °úÁ¤À» ÁøÇàÇϱ⿡ ¾Õ¼­¼­ ¸î°¡Áö ¿ë¾î¿¡ ´ëÇØ ¼³¸íÇÑ´Ù. ¿ì¸®°¡ ÈçÈ÷ °èÃþÇü ±¸Á¶¸¦ °®´Â È­ÀÏ Ã¼Á¦¸¦ Áö¿øÇÏ´Â ½Ã½ºÅÛÀ» (¿¹¸¦µé¸é unix ¶Ç´Â dosµî) »ç¿ëÇÒ ¶§ current directory ¶Ç´Â working directory¶ó´Â ¸»À» ÀÚÁÖÇÑ´Ù. µû¶ó¼­ ¿ì¼± ÀÌ·± ¿ë¾î¿¡ ´ëÇØ ÀÌÇظ¦ Çؾ߸¸ ÇÑ´Ù. ÀÌ µÎ°¡Áö ¿ë¾î´Â º»ÁúÀûÀ¸·Î µ¿ÀÏÇÑ Àǹ̸¦ °®´Â ¿ë¾îÀÌ´Ù. °èÃþ ±¸Á¶»ó¿¡ ÀÖ´Â È­ÀÏÀ» ÂüÁ¶Çϱâ À§Çؼ­´Â ±× È­ÀÏÀÌ µé¾îÀÖ´Â µð·ºÅ丮·Î À̵¿ÇÏ¿©¾ß ÇÕ´Ï´Ù. ÀÌ¿Í °°ÀÌ »ç¿ëÀÚ°¡ ƯÁ¤ È­ÀÏÀ» ÂüÁ¶¸¦( È­ÀÏÀÇ »ý¼º, È­ÀÏ ³»¿ëÀÇ ÂüÁ¶µî ) À§ÇØ À̵¿ÇÏ¿© À§Ä¡ÇÏ°í ÀÖ´Â µð·ºÅ丮¸¦ current directory ¶Ç´Â working directory¶ó ÇÑ´Ù. ÀÌ °úÁ¤¿¡¼­´Â ÀÌ µÎ°¡ÁöÀÇ µð·ºÅ丮¸¦ "ÀÛ¾÷ µð·ºÅ丮"¶ó°í ÃÑĪÇÑ´Ù. 1. ÀÛ¾÷ µð·ºÅ丮ÀÇ Àý´ë °æ·Î(absulute path) Ç¥½Ã ¦£¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ pwd ¦¢ÇöÀçÀÇ ÀÛ¾÷ µð·ºÅ丮ÀÇ Àý´ë °æ·Î¸¦ Ç¥½ÃÇÑ´Ù. ¦¢ ¦¦¦¡¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÀÌ ¸í·É¾î´Â ÀÛ¾÷ µð·ºÅ丮ÀÇ Àý´ë °æ·Î¸¦ Ç¥½ÃÇÑ´Ù. pwd ¸í·É¾î´Â ¿É¼Ç°ú ÀÎÀÚ¸¦(arguments) »ç¿ëÇÏÁö ¾Ê´Â´Ù. ÀÌ ¸í·É¾î´Â ´Ù¸¥ ¸í·É¾îÀÇ ½ÇÇà ÀüÈÄ¿¡ °èÃþ È­ÀÏ ½Ã½ºÅÛ³»¿¡¼­ÀÇ À§Ä¡¸¦ ¾Ë°íÀÚ ÇÒ¶§ ¿ä±äÇÏ°Ô »ç¿ëÇÒ ¼ö ÀÖ´Ù. ¿¹¸¦µéÀÚ¸é, »õ·Î¿î È­ÀÏ ¶Ç´Â µð·ºÅ丮µéÀ» »ý¼ºÇϱâ Àü¿¡ ÀÛ¾÷ µð·ºÅ丮¸¦ È®ÀÎÇϴµ¥ ¸¹Àº µµ¿òÀ» ÁØ´Ù. ¶ÇÇÑ pwd ¸í·É¾î´Â µð·ºÅ丮 À§Ä¡¸¦ º¯°æÇÑ ÈÄ¿¡ ÀÛ¾÷ µð·ºÅ丮¸¦ È®ÀÎÇϱâ À§ÇØ ¿ä±äÇÏ°Ô »ç¿ëµÉ ¼ö ÀÖ´Ù. (¿¹Á¦) $pwd /home/user1 2. µð·ºÅ丮ÀÇ »ý¼º ¦£¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ mkdir ¦¢ Çϳª ¶Ç´Â ±× ÀÌ»óÀÇ µð·ºÅ丮¸¦ »ý¼ºÇÑ´Ù. ¦¢ ¦¦¦¡¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ µð·ºÅ丮´Â ¿¬°üµÈ È­ÀϵéÀ» ÇÔ²² ¸ð¾ÆµÎ´Âµ¥ À¯¿ëÇϱ⠶§¹®¿¡, ¿øÇÏ´Â È­ÀϵéÀÇ ºü¸¥ ¾ï¼¼½º¹× °Ë»öÀ» Çã¿ëÇϱâ À§ÇÑ È¿À²Àû ±¸Á¶¸¦ ¸¸µé¼ö ÀÖ´Ù. mkdir ¸í·É¾î´Â Çϳª ¶Ç´Â ±× ÀÌ»óÀÇ µð·ºÅ丮¸¦ »ý¼ºÇϱâ À§ÇØ »ç¿ëÇÒ ¼ö ÀÖ´Ù. ´Ù¼öÀÇ µð·ºÅ丮¸¦ »ý¼ºÇϱâ À§Çؼ­´Â ¸í·É¾î ´ÙÀ½¿¡ µð·ºÅ丮 ¸íµéÀ» ³ª¿­ÇÏ¸é µÈ´Ù. µð·ºÅ丮¸íÀ» ÁöÁ¤ÇÏ´Â ±ÔÄ¢Àº ¾Õ¿¡¼­ ¼³¸íÇß´ø È­ÀÏ¸í ¸í¸í ±ÔÄ¢À» µû¸¥´Ù. ´Ù½Ã¸»Çϸé, µð·ºÅ丮¸íÀÇ ÃÖ´ë ±ÛÀÚ¼ö´Â È­ÀÏ ½Ã½ºÅÛ Á¾·ù¿¡ µû¶ó ´Ù¸¥µ¥, ¿¹¸¦µé¸é ufs È­ÀÏ ½Ã½ºÅÛÀÏ °æ¿ì¿¡´Â 256 ±ÛÀÚ¸¦, s5 È­ÀÏ ½Ã½ºÅÛÀÏ °æ¿ì¿¡´Â 14 ±ÛÀÚ±îÁö ºÎ¿©ÇÒ ¼ö ÀÖ´Ù. (¿µ¹®ÀÚ ±âÁØ) ½Å±Ô »ý¼ºµÇ´Â µðÆúÆ® µð·ºÅ丮¿¡ ´ëÇÑ µðÆúÆ® Á¢±Ù±ÇÇÑÀº( permission ) ½Ã½ºÅÛ³»ÀÇ ¸ðµç »ç¿ëÀÚ°¡ Àбâ(read), ¾²±â(write), ½ÇÇàÇϱâ(execute)¸¦ ÇÒ ¼ö ÀÖµµ·Ï ¼³Á¤µÈ´Ù. ±×·¸Áö¸¸ µð·ºÅ丮¸¦ »ý¼ºÇÑ »ç¿ëÀÚ´Â(Áï, owner) -m ¿É¼ÇÀ» ÁöÁ¤ÇÔ¿¡ ÀÇÇØ µðÆúÆ® Á¢±Ù±ÇÇÑÀÌ ¾Æ´Ñ ´Ù¸¥ Á¢±Ù±ÇÇÑÀ» ºÎ¿©ÇÒ ¼ö ÀÖ´Ù. Á¢±Ù ±ÇÇÑ¿¡ ´ëÇÑ ÀÚ¼¼ÇÑ ¼³¸íÀº Â÷ÈÄ °­ÀÇ¿¡¼­ ÀÚ¼¼È÷ ¼³¸íµÉ °ÍÀÌ´Ù. ( mkdir ¸í·ÉÀÇ ¿É¼Ç ) ¦£¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ -m ¦¢ »ý¼ºµÇ´Â µð·ºÅ丮ÀÇ Á¢±Ù ±ÇÇÑÀ» ºÎ¿©ÇÑ´Ù. ¦¢ ¦¢ -p ¦¢ ºÎ¸ð(parent) µð·ºÅ丮¸¦ »ý¼ºÇÑ´Ù. ¦¢ ¦¦¦¡¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ( ¿¹Á¦ ) 1) $mkdir subdir1 ÀÛ¾÷ µð·ºÅ丮³»¿¡ subdir1À̶ó´Â ¼­ºê µð·ºÅ丮¸¦ »ý¼ºÇÏ´Â ±âº»ÀûÀÎ mkdir ¸í·ÉÀÇ »ç¿ë¿¹ÀÌ´Ù. 2) $mkdir memo letter report ÇϳªÀÇ mkdir ¸í·É¾î¸¦ ÅëÇØ º¹¼ö°³ÀÇ ¼­ºê µð·ºÅ丮¸¦ »ý¼ºÇÏ´Â ¿¹ÀÌ´Ù. 3) $mkdir -m 700 mydir »õ·Î »ý¼ºµÇ´Â mydirÀ̶ó´Â µð·ºÅ丮¿¡ µðÆúÆ® Á¢±Ù ±ÇÇÑ ´ë½Å »ç¿ëÀÚ°¡ ÀÓÀÇ·Î 700À̶ó´Â Á¢±Ù ±ÇÇÑÀ» ºÎ¿©ÇÏ¿© »ý¼ºÇÏ´Â ¿¹ÀÌ´Ù. 700À̶ó´Â Á¢±Ù ±ÇÇÑÀº ÀÏ´Ü, µð·ºÅ丮¸¦ »ý¼ºÇÑ »ç¿ëÀÚ¸¸ÀÌ ¾ï¼¼½ºÇÒ ¼ö ÀÖ°í, ´Ù¸¥ »ç¿ëÀÚ´Â ¾ï¼¼½º ºÒ°¡ÇÑ °ÍÀ̶ó°í¸¸ ÀÌÇØÇϱ⠹ٶõ´Ù. ÀÚ¼¼ÇÑ °ÍÀº ÀÌÈÄ ÀÚ¼¼È÷ ¼³¸íµÈ´Ù. 4) $mkdir -p report/monthly ÀÌ ¿¹Á¦´Â report¶ó´Â ºÎ¸ð µð·ºÅ丮¸¦ »ý¼ºÇÏ°í, monthly¶ó´Â ¼­ºê µð·ºÅ丮¸¦ »ý¼ºÇÑ´Ù. Áï ºÎ¸ð¿Í ¼­ºê µð·ºÅ丮¸¦ µ¿½Ã¿¡ »ý¼ºÇÏ´Â °ÍÀ» º¸¿©ÁÖ´Â ¿¹Á¦ÀÌ´Ù. Âü°í·Î -m ¿É¼Ç°ú -p ¿É¼ÇÀÌ µ¿½Ã¿¡ ÁöÁ¤µÇ¾úÀ» °æ¿ì¿¡´Â »ý¼ºµÇ´Â ºÎ¸ð¹× ¼­ºê µð·ºÅ丮¿¡´Â -p·Î ÁöÁ¤ÇÑ µ¿ÀÏÇÑ Á¢±Ù±ÇÇÑÀÌ ¼³Á¤µÈ´Ù. ¿¹¸¦µé¸é, $mkdir -m 700 -p report/monthly Çü½ÄÀÌ´Ù. ======================================================================== ´ÙÀ½ °­ÀÇ¿¡¼­´Â ls ¸í·É¾î¿¡ ´ëÇؼ­ ¼³¸í µå¸®°Ú½À´Ï´Ù. ------------------------------------------------------------------------ #23 À¯´Ï½Ã½º (adunis2 ) µð·ºÅ丮 °ü¸® ¸í·É: ls 02/09 15:01 197 line µð·ºÅ丮 °ü¸® ¸í·É : ls ------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ»çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. -------------------------------------------------------------------- 1. µð·ºÅ丮ÀÇ ³»¿ë È®ÀÎ ¦£¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ ls ¦¢ µð·ºÅ丮ÀÇ ³»¿ëÀ» Ç¥½ÃÇÑ´Ù. ¦¢ ¦¦¦¡¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ls ¸í·É¾î´Â ÁöÁ¤ÇÑ µð·ºÅ丮³»ÀÇ ³»¿ëÀ» Ç¥½ÃÇØ ÁØ´Ù. ¸í·É¾î ÁöÁ¤½Ã ÀÎÀÚ(arguments)¸¦ ÁöÁ¤ÇÏÁö ¾ÊÀ» °æ¿ì¿¡´Â ÇöÀçÀÇ ÀÛ¾÷ µð·ºÅ丮ÀÇ ³»¿ëÀ» Ç¥½ÃÇÑ´Ù. ³»¿ëÀÌ ¸¹À» °æ¿ì ¿©·¯ È­¸é¿¡ °ÉÄ£ Ãâ·ÂÀÌ Ç¥½ÃµÇ´Âµ¥ ÀÌ °æ¿ì Å°³ª <^s> ¿Í <^q>Å°¸¦ »ç¿ëÇÏ¿© Ãâ·ÂÀ» ÀϽà Á¤Áö ¶Ç´Â Àç°³ÇÒ ¼ö ÀÖ´Ù. ls ¸í·É¾î´Â Ãâ·Â ¾ç½ÄÀ» º¯°æÇϱâ À§ÇÑ ¸¹Àº ¿É¼ÇÀ» °®´Â´Ù. ¿É¼ÇµéÁß °¡Àå ºó¹øÈ÷ »ç¿ëµÇ´Â ¿É¼ÇµéÀº ´ÙÀ½°ú °°´Ù. ¿É¼ÇÀ» ÁöÁ¤ÇÏÁö ¾Ê¾ÒÀ»¶§ Àû¿ëµÇ´Â Ãâ·Â Çü½ÄÀº Ãâ·Â ÇÊµå ´ÜÀ§·Î Á¤·ÄµÇ¾îÁø »óÅ·Πµð·ºÅ丮ÀÇ ³»¿ëµéÀ» Ç¥½ÃµÈ´Ù. -l ¿É¼ÇÀº Ãâ·ÂµÈ °¢ È­ÀÏ°ú µð·ºÅ丮µé¿¡ ´ëÇÑ ¼­¼úÇü½ÄÀÇ (ÀÚ¼¼ÇÑ Á¤º¸) Á¤º¸¸¦ Á¦°øÇÑ´Ù. (¿É¼Ç) -a .À¸·Î ½ÃÀÛÇÏ´Â È­Àϵé Áï ½Ã½ºÅÛ È­Àϵ鵵 ÀÏ¹Ý È­ÀÏ¹× µð·ºÅ丮¿Í ÇÔ²² Ãâ·ÂÇÑ´Ù. -i Ãâ·ÂµÇ´Â °¢ È­ÀÏ¹× µð·ºÅ丮µéÀÇ inode Á¤º¸¸¦ Ç¥½ÃÇÑ´Ù. -d µð·ºÅ丮ÀÇ ³»¿ëÀ» Ç¥½ÃÇÏÁö¾Ê°í, ÁöÁ¤ÇÑ µð·ºÅ丮 ÀÚü¿¡ ´ëÇÑ Á¤º¸¸¸À» Ç¥½ÃÇÑ´Ù. -l Ãâ·ÂµÇ´Â °¢°¢ÀÇ È­ÀÏ°ú µð·ºÅ丮¿¡ ´ëÇÑ ¼­¼ú Çü½ÄÀÇ ÀÚ¼¼ÇÑ Á¤º¸¸¦ Ç¥½ÃÇÑ´Ù. -r Åë»óÀº ¿À¸§Â÷¼øÀ¸·Î Á¤·ÄµÇ¾î Ãâ·ÂµÇ´Âµ¥, ÀÌ¿Í ¹Ý´ë·Î ³»¸²Â÷¼øÀ¸·Î Á¤·ÄÇÏ¿© Ç¥½ÃÇÑ´Ù. -t È­ÀÏ¹× µð·ºÅ丮ÀÇ ¼öÁ¤ ³¯Â¥¸¦ ±âÁØÀ¸·Î Á¤·ÄÇÏ¿© Ãâ·ÂÇÑ´Ù. -x Ãâ·ÂµÇ´Â ¸ðµç ÇʵåµéÀ» ´ë»óÀ¸·Î Á¤·ÄÇÏ¿© Ãâ·ÂÇÑ´Ù. -F Ãâ·Â ³»¿ë¿¡¼­ µð·ºÅ丮µé¿¡°Ô´Â /¸¦, ½ÇÇà È­Àϵ鿡°Ô´Â *¸¦, ½Éº¼¸¯ ¸µÅ©µÈ È­ÀÏ¿¡´Â &¸¦ ºÙ¿© Ç¥½ÃÇÑ´Ù. -R ÀÛ¾÷ µð·ºÅ丮³»ÀÇ È­ÀÏ°ú ¼­ºê µð·ºÅ丮µéÀ» Ç¥½ÃÇÑ´Ù. ´Ü, ¼­ºê µð·ºÅ丮ÀÇ °æ¿ì¿¡´Â ±× ³»¿ëµé±îÁöµµ ÇÔ²² Á¤·ÄÇÏ¿© Ç¥½ÃÇÑ´Ù. ´ÙÀ½Àº ls ¸í·É¾îÀÇ »ç¿ë¿¹¸¦ º¸¿©ÁÖ°í ÀÖ´Ù. 1) ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ÀÌ ¿¹´Â ls ¸í·É¾î°¡ ¿É¼Ç°ú ÀÎÀÚ(argument)¾øÀÌ ¦¢ $ls ¦¢ ÇöÀçÀÇ ÀÛ¾÷ µð·ºÅ丮ÀÇ ³»¿ëÀ» Ãâ·ÂÇØ ÁÖ´Â ¦¢ file1 ¦¢ °ÍÀ» º¸¿©ÁÖ°í ÀÖ´Ù. ¦¢ memo1 ¦¢ ¿©±â¼­ Ãâ·ÂµÇ´Â ³»¿ëÀÌ ³»¸²Â÷¼øÀ¸·Î Á¤·ÄµÇ¾î ¦¢ letter ¦¢ Ç¥½ÃµÇ´Â °ÍÀ» ÁÖ¸ñÇÑ´Ù. ¶ÇÇÑ Ãâ·ÂµÇ´Â °ÍÁß ¦¢ report ¦¢ ¼­ºê µð·ºÅ丮ÀÇ ³»¿ëÀ» ÇÔ²² Ç¥½ÃÇÏ°íÀÚ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÇÒ °æ¿ì¿¡´Â -R ¿É¼ÇÀ» ÁöÁ¤ÇÑ´Ù. 2) ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ÀÌ ¿¹¿¡¼­´Â ls ¸í·É¾î¸¦ ¼öÇàÇÔ¿¡ À־ ¦¢$ls report ¦¢ µð·ºÅ丮¸íÀ» ÁöÁ¤ÇÒ °æ¿ì¿¡´Â µð·ºÅ丮 ÀÚü¿¡ ¦¢annual ¦¢ ´ëÇÑ Á¤º¸°¡ ¾Æ´Ñ ±×ÀÇ ³»¿ëÀ» Ç¥½ÃÇÔÀ» º¸¿©ÁÖ°í ¦¢monthly ¦¢ ÀÖ´Ù. ¸¸ÀÏ µð·ºÅ丮 ÀÚ½ÅÀÇ Á¤º¸¸¦ Ç¥½ÃÇÏ°íÀÚ ¦¢statsfile ¦¢ ÇÒ °æ¿ì¿¡´Â ¾Æ·¡¿Í °°ÀÌ ÁöÁ¤ÇÑ´Ù. ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¥ 3) ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $ls -ld report ¦¢ ¦¢ drwxr-xr-x 2 user1 admin 512 jul 9 11:02 report ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÀÌ ¿¹¼­´Â ƯÁ¤ µð·ºÅ丮 ÀÚü¿¡´ëÇÑ Á¤º¸¸¦ º¸´Â ¹æ¹ý¿¡ ´ëÇØ º¸¿©ÁÖ°í ÀÖ´Ù. Ãâ·ÂµÇ´Â °¢ Çʵå´Â ´ÙÀ½ ¿¹Á¦¿¡¼­ ¼³¸íÇÑ´Ù. 4) ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$ls -ial ¦¢ ¦¢total 5 ¦¢ ¦¢534 drwxr-xr-x 2 user1 admin 512 May 13 08:34 . ¦¢ ¦¢231 drwxr-xr-x 2 user1 admin 512 May 7 10:30 .. ¦¢ ¦¢389 -rw-r--r-- 1 user1 admin 952 May 13 16:45 .profile ¦¢ ¦¢497 -rwxr-xr-x 2 user1 admin 1672 Jul 7 13:23 memo ¦¢ ¦¢832 lrwxr-xr-x 2 user1 admin 12 Jul 16 09:52 status->report/stats¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢(1) (2) (3) (4) (5) (6) (7) (8) (9) ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ (1) inode ¹øÈ£ À¯´Ð½º È­ÀÏ ½Ã½ºÅÛ³»¿¡¼­ °³°³ÀÇ È­ÀÏÀ» °ü¸®Çϱâ À§ÇØ »ç¿ëÇÏ´Â Å×À̺íÀÎ inode³»ÀÇ ¿£Æ®¸®µéÀÇ À妽º ¹øÈ£·Î¼­, °¢°¢ÀÇ ¿£Æ®¸®µéÀº È­ÀÏ µ¥ÀÌŸÀÇ µð½ºÅ©»óÀÇ ¹èÄ¡ »óȲ¿¡´ëÇÑ ±â¼ú°ú È­ÀÏÀÇ ¼ÒÀ¯ÀÚ, È­ÀÏÀÇ Á¢±Ù Çã°¡, ±×¸®°í È­ÀÏ µ¥ÀÌŸÀÇ Á¢±Ù ½Ã°£µîÀÇ Á¤º¸¸¦ Æ÷ÇÔÇÏ°í ÀÖ´Ù. À¯´Ð½º ¿î¿µÃ¼Á¦´Â À̸¦ ÀÌ¿ëÇÏ¿© »ç¿ëÀÚÀÇ Æ¯Á¤È­ÀÏ ÂüÁ¶¿ä±¸½Ã¿¡ ±× È­ÀÏ¿¡ ´ëÇÑ Àü¹ÝÀû Á¤º¸¸¦ ¾ò¾î, ÇØ´çÈ­ÀÏÀÇ ÂüÁ¶¸¦ °¡´ÉÇÏ°Ô ÇÑ´Ù. ´ÙÀ½Àº inode¸¦ Àß ÀÌÇØÇÒ ¼ö ÀÖµµ·Ï Ãß°¡ÇÑ ±×¸²ÀÌ´Ù. I-node Å×ÀÌºí ¦£¦¡¦¡¦¡¦¤ ¦£¦¡¦¡¦¤ ¦¢1001 ¦§¦¡¦¡¦¡> data¦¢ ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦§¦¡¦¡¦¡¦© ¦¦¦¡¦¡¦¥ ¦¢»ç¿ëÀÚÀÇ ¦§¦¡>¦¢1002 ¦§¦¡¦¤ ¦£¦¡¦¡¦¤ ¦¢È­ÀÏ ÂüÁ¶ ¿ä±¸¦¢ ¦§¦¡¦¡¦¡¦© ¦¦¦¡¦¡> data¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¦¢1003 ¦§¦¡¦¤ ¦¦¦¡¦¡¦¥ ¦§¦¡¦¡¦¡¦© ¦¢ ¦¢ . ¦¢ ¦¢ ¦£¦¡¦¡¦¤ ¦¢ . ¦¢ ¦¦¦¡> data¦¢ ¦¦¦¡¦¡¦¡¦¥ ¦¦¦¡¦¡¦¥ inodeÀÇ ÀÚ¼¼ÇÑ ¿ªÇÒ¹× ³»ºÎ±¸Á¶, È­ÀÏ ½Ã½ºÅÛ »ó¿¡¼­ÀÇ À§Ä¡µî¿¡ ´ëÇؼ­´Â À¯´Ð½º È°¿ë ¹æ½Ä¿¡ ´ëÇÑ °­ÀÇ°¡ ³¡³ª°í ¿¬ÀçµÉ À¯´Ð½º °ü¸®ÀÚ ±â´É¿¡¼­ ÀÚ¼¼È÷ ¼³¸íµÉ °ÍÀÔ´Ï´Ù. (2) È­ÀÏÀÇ Á¾·ù ÀÌ ºÎºÐ¿¡´Â d, -, l ¹®ÀÚµîÀÌ Ç¥½ÃµÈ´Ù. °¢°¢ÀÌ ³ªÅ¸³»´Â Àǹ̴ ´ÙÀ½°ú °°´Ù. d µð·ºÅ丮ÀÓÀ» ÀǹÌÇÑ´Ù. - È­ÀÏÀÓÀ» ÀǹÌÇÑ´Ù. l ½Éº¼¸¯ ¸µÅ©µÈ È­ÀÏÀÓÀ» ÀǹÌÇÑ´Ù. (½Éº¼¸¯ ¸µÅ©µÈ È­ÀÏ¿¡ ´ëÇؼ­´Â ÀÌÈÄ¿¡ ¼³¸íµÉ ln ¸í·É¾î ºÎºÐ¿¡¼­ ÀÚ¼¼È÷ ¼³¸íµÈ´Ù. ) (3) Á¢±Ù ±ÇÇÑ ÇØ´ç È­ÀÏÀ» ¾ï¼¼½ºÇÒ ¼ö ÀÖ´Â ±ÇÇÑÀ» »ç¿ëÀÚ ºÎ·ùº°·Î Ç¥½ÃÇÑ´Ù. ÀÚ¼¼ÇÑ ³»¿ëÀº ÀÚ¼¼È÷ Â÷ÈÄ¿¡ ¼³¸í µÇ°ÚÁö¸¸, ´ë·« ¿ä¾àÇÏ¸é ´ÙÀ½°ú °°´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ È­ÀÏ ¼ÒÀ¯ÀÚ ¦¢ µ¿ÀÏ ±×·ì³» »ç¿ëÀÚ ¦¢ ±âŸ »ç¿ëÀÚ ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ rwx ¦¢ r-x ¦¢ r-x ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ r = read, w = write, x = execute ±ÇÇÑÀÌ ºÎ¿©µÇ¾î ÀÖ´Ù´Â ÀÇ¹Ì (4) links °èÃþ ±¸Á¶»ó¿¡ Á¸ÀçÇÏ´Â µð·ºÅ丮µéÀº °èÃþÀ» Çü¼ºÇϱâ À§ÇØ ¼­·Î°£ÀÇ »ó.ÇÏ °ü°è¿¡ µû¶ó ¿¬°áµÇ¾î(Áï, ¸µÅ©µÇ¾î) ÀÖ´Ù. ÀÌ Çʵ忡 ³ª¿À´Â ¼ýÀÚ´Â ÇØ´ç ¿ä¼Ò°¡ ¸µÅ©µÇ¾î ÀÖ´Â ¼ö¸¦ ÀǹÌÇÑ´Ù. ¿¹¸¦µé¸é ´ÙÀ½°ú °°´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ / ¦¢ ¦¦¦¡¦¡¦¨¦¡¦¡¦¥ ¦¢ ¦£¦¡¦¡¦ª¦¡¦¡¦¤ ÀÌ¿Í °°Àº ±¸Á¶¿¡¼­ ¦¢directory ¦¢ directory´Â ÀÚ½ÅÀÇ ¦£¦¡¦¡¦¡¦¤ ¦¦¦¨¦¨¦¡¦¨¦¨¦¥ ¦£¦¡¦¡¦¡¦¤ ºÎ¸ð µð·ºÅ丮ÀÎ /·ÎÀÇ ¦¢subdir1 ¦¡¦¡¦¥¦¢ ¦¢¦¦¦¡¦¡¦¡¦©È­ÀÏd ¦¢ ¸µÅ©¿Í ÇÏÀ§ µð·ºÅ丮·ÎÀÇ ¦¦¦¡¦¡¦¡¦¥ ¦¢¦£¦ª¦¡¦¡¦¤ ¦¦¦¡¦¡¦¡¦¥ ¸µÅ© 3°³¸¦ °®°í, ÀÚ½ÅÀ¸·ÎÀÇ ¦¢¦¢subdir3 ¸µÅ© 1°³¸¦ °®À½À¸·Î½á ¦¢¦¦¦¡¦¡¦¡¦¥ ÃÑ 5°³ÀÇ ¸µÅ©¼ö¸¦ °®°ÔµÈ´Ù. ¦£¦¡¦ª¦¡¦¤ ¦¢subdir2 ¦¦¦¡¦¡¦¡¦¥ % Åë»ó ¸µÅ©¼ö´Â µð·ºÅ丮µé°£ÀÇ ¿¬°á°ü°è°¡ º¯°æµÉ °æ¿ì¿¡ »õ·Ó°Ô ¼³Á¤µÇ´Âµ¥, È­ÀÏÀÇ °æ¿ì¿¡µµ ln ¸í·É¾î°¡ ¼öÇàµÊÀ¸·Î½á ±× °ªÀÌ º¯°æµÉ ¼ö ÀÖ´Ù. ±âº»ÀûÀÎ È­ÀÏÀÇ ¸µÅ©¼ö´Â 1ÀÌ´Ù. ÀÚ½ÅÀÌ ¼ÓÇÑ µð·ºÅ丮·ÎÀÇ ¸µÅ© 1°³¸¦ ¸»ÇÑ´Ù. ln ¸í·É¾î´Â Â÷ÈÄ¿¡ ÀÚ¼¼È÷ ¼³¸íµÈ´Ù. (5),(6) ÇØ´ç È­ÀÏ¹× µð·ºÅ丮¸¦ »ý¼ºÇÑ »ç¿ëÀÚÀÇ user-id¹× group-id¸¦ ÀǹÌÇÑ´Ù. À̵鿡 ´ëÇؼ­´Â Â÷ÈÄ ¼³¸íµÉ »ç¿ëÀÚ¹× ±×·ì Á¦¾î ºÎºÐ¿¡¼­ ÀÚ¼¼È÷ ¼³¸íÇÑ´Ù. (7) Å©±â ¼ö byte ´ÜÀ§ÀÇ È­ÀÏ¹× µð·ºÅ丮 Å©±â¸¦ ÀǹÌÇÑ´Ù. (8) ¼öÁ¤ ³¯Â¥ Á÷ÀüÀÇ È­ÀÏ ¼öÁ¤ ½Ã°£¹× ¼öÁ¤ ³¯Â¥ (9) È­ÀÏ¹× µð·ºÅ丮 À̸§ ÀÌ Çʵ忡 ³ªÅ¸³ª´Â ³»¿ëÁß stats->report/stats´Â ÇØ´çÈ­ÀÏ Áï, stats°¡ report µð·ºÅ丮¹×ÀÇ stats È­ÀÏ¿¡ ¸µÅ©µÈ È­ÀÏÀÓÀ» ÀǹÌÇÑ´Ù. ======================================================================== ´ÙÀ½ °­ÀÇ¿¡¼­´Â µð·ºÅ丮 °ü¸® ¸í·ÉÀÎ cd¿Í rmdir ¸í·É¾î¿¡ ´ëÇؼ­ ¼³¸í µå¸®°Ú½À´Ï´Ù. ------------------------------------------------------------------------ #24 À¯´Ï½Ã½º (adunis2 ) µð·ºÅ丮 °ü¸® ¸í·É: cd¿Í rmdir 02/10 09:02 100 line µð·ºÅ丮 °ü¸® ¸í·É : cd ¿Í rmdir ¸í·É¾î ------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ»çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. -------------------------------------------------------------------- 1) ÀÛ¾÷ µð·ºÅ丮ÀÇ À̵¿ : cd ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢cd [arguments] ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ cd ¸í·É¾î´Â ÀÛ¾÷ µð·ºÅ丮¸¦ º¯°æÇϴµ¥ »ç¿ëµÈ´Ù. ÀÌ ¸í·É¾î¿¡´Â ¿É¼ÇÀÌ ¾ø°í, »õ·Î À̵¿ÇÒ µð·ºÅ丮 ¸íÀÌ cd ¸í·É¾îÀÇ ÀÎÀڷμ­(arguments) ÁöÁ¤µÈ´Ù. À̶§ ÁöÁ¤ÇÏ´Â À̵¿ÇÒ µð·ºÅ丮 ¸íÀº »ó´ë °æ·Î¸í¹× Àý´ë °æ·Î¸íÀ» ¸ðµÎ ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù. (ÀÌ ºÎºÐ¿¡ ´ëÇؼ­´Â °èÃþÇü ±¸Á¶»óÀÇ È­ÀÏ ÂüÁ¶ ¹æ½ÄÆíÀ» ÂüÁ¶Çϱ⠹ٶø´Ï´Ù.) ¶ÇÇÑ cd ¸í·É¾îÀÇ Æ¯º°ÇÑ ±â´ÉÀº ÀÎÀÚ¾øÀÌ »ç¿ëÇÑ °æ¿ì¿¡ ³ªÅ¸³­´Ù. Áï, ´Ü¼øÈ÷ $ cd À̶ó ÁöÁ¤Çϸé, Çö »ç¿ëÀÚÀÇ home directory·Î °ðÀå À̵¿ÇÑ´Ù´Â °ÍÀÌ´Ù. À̸¦ Àß ±â¾ïÇØ µÎ¸éÀÛ¾÷¿¡ Å©°Ô µµ¿òÀÌ µÉ °ÍÀÌ´Ù. ¶ÇÇÑ cd ¸í·É¾î¸¦ ¼öÇà ÇÔÀ¸·Î½á »ç¿ëÀÚ´Â »õ·Î¿î ÀÛ¾÷ µð·ºÅ丮¿¡ À§Ä¡ÇÏ°Ô µÇ´Âµ¥, À̶§ pwd ¸í·ÉÀ» ÅëÇØ »õ·Î¿î ÀÛ¾÷ µð·ºÅ丮ÀÇ °æ·Î¸¦ È®ÀÎÇÒ ¼ö ÀÖ´Ù. ( ¿¹Á¦ ) ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ÀÌ ¿¹¿¡¼­ óÀ½ pwd ¸í·É¾î´Â ÇöÀçÀÇ ¦¢$pwd ¦¢ ÀÛ¾÷ µð·ºÅ丮¸¦ Ç¥½ÃÇØ ÁØ´Ù. ¦¢/home/user1 ¦¢ ±× ½ËÁ¡¿¡¼­ cd ¸í·É¾î¸¦ ÅëÇØ report¶ó´Â ¦¢$cd report ¦¢ ¼­ºê µð·ºÅ丮·ÎÀÇ À̵¿À» ¼öÇàÇß´Ù. ¦¢$pwd ¦¢ ±×¸®°í ±× °á°ú¸¦ µÎ¹ø° pwd ¸í·ÉÀ¸·Î ¦¢/home/user1/report ¦¢ È®ÀÎÇÏ´Â ¿¹ÀÌ´Ù. ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ÀÌ ¿¹´Â cd ¸í·É¾îÀÇ ÀÎÀڷμ­ »ó´ë °æ·Î¸íÀ» ¦¢$cd ../letter ¦¢ »ç¿ëÇÏ´Â °ÍÀ» º¸¿©ÁØ´Ù. ¦¢$pwd ¦¢ À̶§ »ç¿ëµÇ¾îÁø ..À̶ó´Â ±âÈ£´Â ºÎ¸ð µð·ºÅ丮¸¦ ¦¢/home/user1/letter ¦¢ ´ë½ÅÇϴ Ư¼ö¹®ÀÚÀÌ´Ù. ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ °èÃþ ±¸Á¶»óÀÇ µð·ºÅ丮³», ¾î´À °÷¿¡¼­³ª ¦¢$cd ¦¢ ¼Õ½±°Ô »ç¿ëÀÚÀÇ home directory·Î °ðÀå À̵¿ÇÒ ¦¢$pwd ¦¢ ¼ö ÀÖ´Â ¹æ¹ýÀ» º¸¿©ÁÖ´Â, ¸Å¿ì ÁÁÀº ¿¹ÀÌ´Ù. ¦¢/home/user1 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ 2. µð·ºÅ丮ÀÇ »èÁ¦ ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ rmdir [-option] [directory_pathname] ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ rmdir ¸í·ÉÀº Çϳª ¶Ç´Â ±× ÀÌ»óÀÇ µð·ºÅ丮¸¦ »èÁ¦Çϱâ À§ÇØ »ç¿ëÇÑ´Ù. ÇöÀçÀÇ ÀÛ¾÷ µð·ºÅ丮´Â »èÁ¦ÇÒ ¼ö ¾ø°í, ´ë»ó µð·ºÅ丮´Â ¹Ýµå½Ã ºó µð·ºÅ丮À̾î¾ß ÇÑ´Ù. ´Ù¸¥ »ç¿ëÀÚ¿¡ ÀÇÇØ ¾²±â(write) ¾ï¼¼½º°¡ ¼öÇàµÇ°í ÀÖÁö ¾ÊÀº °æ¿ì¶ó¸é, ¼ÒÀ¯ÀÚ(owner) ¶Ç´Â °ü¸®ÀÚ(superuser)¸¸ÀÌ µð·ºÅ丮¸¦ »èÁ¦ÇÒ ¼ö ÀÖ´Ù. ¸í·É¾î »ó¿¡ µð·ºÅ丮 ¸íÀ» ÁöÁ¤Çϱâ À§ÇØ, »ó´ë ¶Ç´Â Àý´ë °æ·Î¸íµéÀ» »ç¿ëÇÒ ¼ö ÀÖ´Ù. ( ¿É¼Ç ) -p ÁöÁ¤ÇÑ µð·ºÅ丮¿Í ºÎ¸ð µð·ºÅ丮¸¦ »èÁ¦ÇÑ´Ù. ÀÌ °æ¿ì »èÁ¦µÇ´Â °æ·Î¸í¿¡ ´ëÇÑ ¸Þ¼¼Áö¸¦ Ç¥½ÃÇÑ´Ù. -s -p ¿É¼Ç°ú °°Àº ÀÛ¾÷À» ¼öÇàÇϳª, ¸Þ¼¼Áö Ç¥½Ã´Â µÇÁö ¾Ê´Â´Ù. ( ¿¹Á¦ ) ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ÀÌ ¿¹¿¡¼­´Â ºñ¾î ÀÖ´Â µð·ºÅ丮ÀÎ ¦¢ $rmdir memo ¦¢ memo µð·ºÅ丮¸¦ »èÁ¦ÇÏ´Â ¿¹¸¦ º¸¿©ÁÖ°í ¦¢ $ls ¦¢ ÀÖ´Ù. ¶ÇÇÑ ¸í·É ½ÌÇàÈÄ ls ¸í·ÉÀ¸·Î ¦¢ file1 ¦¢ °á°ú¸¦ È®ÀÎÇÏ°í ÀÖ´Ù. ¦¢ letter ¦¢ ¦¢ report ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ´ë»ó µð·ºÅ丮°¡ ºñ¾î ÀÖÁö ¾ÊÀ½À¸·Î½á, ¦¢ $rmdir report ¦¢ ¸í·É¾î°¡ ¼öÇàµÇÁö ¾Ê´Â °á°ú¸¦ º¸¿©ÁØ´Ù. ¦¢ rmdir: report not empty ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ report µð·ºÅ丮³»ÀÇ ¦¢ $rmdir report/annual report/monthly ¦¢ annual°ú monthly¶ó´Â ¦¢ $ls report ¦¢ ¼­ºê µð·ºÅ丮µéÀ» »èÁ¦ÇÏ´Â ¦¢ statsfile ¦¢ ¿¹ÀÌ´Ù. report µð·ºÅ丮´Â ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ±×´ë·Î À¯ÁöµÈ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $rmdir -p oct91/sanders ¦¢ ¦¢ rmdir: oct91/sanders: Whole path removed.¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÀÌ ¿¹¿¡¼­´Â -p ¿É¼ÇÀ» »ç¿ëÇÏ¿© ºÎ¸ð µð·ºÅ丮¿Í ÀÚ½Ä µð·ºÅ丮¸¦ µ¿½Ã¿¡ »èÁ¦ÇÏ´Â ¿¹¸¦ º¸¿©ÁØ´Ù. À̶§ »èÁ¦ ³»¿ë¿¡ ´ëÇÑ »óÅ Á¤º¸°¡ Ç¥½ÃµÊÀ» ÁÖ¸ñÇϱ⠹ٶõ´Ù. ======================================================================== ´ÙÀ½ °­ÀÇ¿¡¼­´Â È­ÀÏ °ü¸® ¸í·ÉÀÎ file°ú cat ¸í·É¾î¿¡ ´ëÇؼ­ ¼³¸í µå¸®°Ú½À´Ï´Ù. ------------------------------------------------------------------------ #25 À¯´Ï½Ã½º (adunis2 ) È­ÀÏ °ü¸® ¸í·É: file°ú cat 02/11 19:39 143 line È­ÀÏ °ü¸® ¸í·É : file °ú cat ------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ»çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. -------------------------------------------------------------------- 1. È­ÀÏ Çü½ÄÀÇ È®ÀÎ : file ¸í·É¾î ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ file [-option] file(s) ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ »ç¿ëÀÚ¿¡ ÀÇÇØ »ý¼ºµÇ´Â È­ÀϵéÁß, ¸î¸î È­ÀϵéÀº ½ÇÇà ÄÚµåµéÀÌ ÀúÀåµÇ°Å³ª, ÅÍ¹Ì³Î»ó¿¡ Ç¥½Ã°¡ ÀûÇÕÇÏÁö ¾ÊÀº µ¥ÀÌŸµéÀÌ ÀúÀåµÇ¾î ÀÖ´Ù. ÀÌ·± È­ÀϵéÀÇ ³»¿ëÀ» È­¸é»ó¿¡ Ç¥½ÃµÇµµ·ÏÇÏ¸é ½Ã½ºÅÛ Àå¾Ö¸¦(hang: ¿ì¸®°¡ ÈçÈ÷ ½Ã½ºÅÛÀÌ ¸ÔÅëÀÌ µÇ¾ú´Ù°í ºÎ¸£´Â Çö»ó) ÃÊ·¡ÇÒ ¼ö ÀÖ´Ù. ÀÌ·± Çö»óÀ» ¹æÁöÇϱâ À§ÇØ, file ¸í·É¾î´Â È­ÀÏÀÇ ³»¿ëÀ» È­¸é»ó¿¡ Ç¥½ÃÇϱâ Àü¿¡, È­ÀÏ Çü½ÄÀÌ ºÒºÐ¸íÇÑ È­ÀϵéÀÇ È­ÀÏ Çü½ÄÀ» È®ÀÎÇϴµ¥ À¯¿ëÇÏ°Ô »ç¿ëµÈ´Ù. file ¸í·É¾î´Â ¸í·É¾î ÀÎÀÚ·Î(arguments) Á¦°øµÈ È­ÀϵéÀÇ È­ÀÏ Çü½ÄÀ» ¾Ë·ÁÁØ´Ù. À̶§ ±¹Á¦ ÄÚµå ¹®ÀÚµéÀÌ µé¾îÀÖ´Â È­ÀÏ¹× ¾î¶² È­ÀÏÀÌ¶óµµ ¸í·É¾î ÀÎÀڷμ­ ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù. file ¸í·É¾î´Â ¸í·É¾î ÀÎÀڷμ­ ÁöÁ¤ÇÑ È­ÀϵéÀ» È­ÀÏ Çü½Äº°·Î ºÐ·ùÇϱâ À§ÇØ ¸î°¡Áö Å×½ºÆ®¸¦ ¼öÇàÇÑ´Ù. °¢ È­ÀÏÀÇ Ã¹ ºÎºÐÀÌ È­ÀÏ Çü½ÄÀ» Á¶¸íÇϱâ À§Çؼ­ magic number¶ó ºÒ¸®¿ì´Â Ư¼ö ¹øÈ£¿Í Å°¿öµå¸¦ °Ë»öÇϱâ À§ÇØ °Ë»çµÈ´Ù. ´Ù¸¥ È­ÀÏ·ÎÀÇ °æ·Î¸íÀ» Æ÷ÇÔÇÏ°í ÀÖ´Â ½Éº¼¸¯ ¸µÅ©µÈ (symbolic link) È­Àϵ鵵 ¸í·É¾î¿¡ -h ¿É¼ÇÀÌ ÁöÁ¤µÇÁö ¾ÊÀº °æ¿ì¿¡´Â ¸µÅ©µÇ¾î ÀÖ´Â È­ÀÏÀÇ Çü½Äµµ °Ë»çÇÑ´Ù. -h ¿É¼ÇÀº ½Éº¼¸¯ ¸µÅ©µÈ È­ÀϵéÀº °Ë»çÇÏÁö ¾Ê°í, ´Ù¸¸ "Symbolic link to pathname"À̶ó´Â ¸Þ¼¼Áö¸¦ Ç¥½ÃÇÑ´Ù. ±âº»ÀûÀÎ È­ÀÏ Çü½ÄÀº ´ÙÀ½°ú °°´Ù. data µ¥ÀÌŸ È­ÀÏ ( Àб⠺Ұ¡ ) commands text ½© ÇÁ·Î±×·¥ ( Àб⠺Ұ¡ ) xxxx text ÀÏ¹Ý ÇÁ·Î±×·¡¹Ö ¾ð¾î·Î ÀÛ¼ºµÇ¾î ÀÖ´Â ÅؽºÆ® È­ÀÏ executable ½ÇÇà È­ÀÏ ( Àб⠺Ұ¡ ) º¸Á¶ÀûÀÎ È­ÀÏ Çü½Ä pure not stripped ÄÄÆÄÀÏµÈ ÄÚµå ( Àб⠺Ұ¡ ) directory µð·ºÅ丮 È­ÀÏ empty file ³»¿ëÀ» °®°í ÀÖÁö ¾ÊÀº È­ÀÏ cannot open ´ë»ó È­ÀÏÀ̳ª µð·ºÅ丮°¡ Á¸ÀçÇÏÁö ¾Ê´Â´Ù. ( ¿É¼Ç ) -fÈ­ÀÏ¸í °Ë»çÇÒ È­ÀϵéÀÇ ¸ñ·ÏÀ» ÀúÀåÇØ ³õÀº È­ÀÏÀ» ÁöÁ¤. -h ½Éº¼¸¯ ¸µÅ©µÈ È­ÀÏÀº °Ë»çÇÏÁö ¾Ê´Â´Ù. ´ÙÀ½Àº file ¸í·É¾îÀÇ ¿¹Á¦µéÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$file file1 ¦¢ ¦¢file1 ascii text ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ À§ÀÇ ¿¹¿¡¼­´Â ÇϳªÀÇ È­ÀÏÀÇ È­ÀÏ Çü½ÄÀ» È®ÀÎÇÏ´Â ¿¹¸¦ º¸¿©ÁÖ°í ÀÖ´Ù. À̶§ ´ë»ó È­ÀÏ ÁöÁ¤½Ã ÀÌ¹Ì ¼³¸íÇß´ø ½© Ư¼ö¹®ÀÚµéÀ» »ç¿ëÇÒ ¼ö Àִµ¥ ±× ¿¹´Â ´ÙÀ½°ú °°´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$file -h * nofile ¦¢ ¦¢file1: ascii text ¦¢ ¦¢letter: directory ¦¢ ¦¢nofile: cannot open: No such file or directory ¦¢ ¦¢prog1: commands text ¦¢ ¦¢stats: symbolic link to report/statsfile ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ À§ÀÇ ¿¹¿¡¼­´Â ¸î°¡Áö È­ÀÏ Çü½ÄÀÇ °Ë»ç °á°ú¸¦ º¸¿©ÁÖ°í ÀÖ´Ù. À̶§ stats¶ó´Â È­ÀÏÀº ½Éº¼¸¯ ¸µÅ©µÈ È­ÀÏÀε¥ -h ¿É¼ÇÀ¸·Î ÀÎÇØ ½ÇÁ¦ ¸µÅ©µÇ¾î ÀÖ´Â È­ÀÏÀÇ Çü½ÄÀº ºÐ·ùµÇÁö ¾ÊÀº °ÍÀ» º¼¼ö ÀÖ´Ù. ¶ÇÇÑ nofileÀÇ °æ¿ì Á¸ÀçÇÏÁö ¾Ê´Â È­ÀÏÀÌ¶ó¼­ ¿¡·¯ Á¤º¸°¡ Ç¥½ÃµÈ °ÍÀ» º¼¼ö ÀÖ´Ù. 2. È­ÀÏ ³»¿ëÀÇ È®ÀÎ : cat ¸í·É¾î cat : ÁöÁ¤ÇÑ È­ÀÏÀÇ ³»¿ëÀ» Ç¥½ÃÇÑ´Ù. ¶Ç´Â ´Ù¼ö È­ÀÏÀ» º´ÇÕÇÑ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ cat [-option] [file(s)] ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ cat ¸í·É¾î´Â ÁöÁ¤ÇÑ È­ÀÏÀÇ ³»¿ëÀ» Ç¥½ÃÇÑ´Ù. È­ÀÏ ÁöÁ¤½Ã È­ÀϸíÀ¸·Î Àý´ë ¶Ç´Â »ó´ë °æ·Î¸íÀ» ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù. cat ¸í·É¾î´Â È­ÀÏÀÇ Å©±â¿Í´Â »ó°ü¾øÀÌ ´Ü¹ø¿¡ È­¸é»ó¿¡ Ãâ·ÂÇØÁֱ⠶§¹®¿¡, ±ä È­ÀÏÀÇ °æ¿ì ³»¿äÀ» È®ÀÎÇϱâ Èûµé´Ù. ÀÌ °æ¿ì ,<^s>,<^q>µîÀÇ Å°¸¦ »ç¿ëÇÏ¿© Ãâ·ÂÀ» Á¦¾î ÇÑ´Ù. ±×¸®°í cat ¸í·É¾î ÁöÁ¤½Ã È­ÀϸíÀ» ÁöÁ¤Ä¡ ¾ÊÀ» °æ¿ì cat ¸í·É¾î´Â Å͹̳ÎÀÇ Å°º¸µå·ÎºÎÅÍ ÀÔ·ÂÀ» ¹Þ¾ÆµéÀδÙ. ÀÌ¿¡ ´ëÇؼ­´Â Â÷ÈÄ¿¡ ¼³¸íµÉ ÀÔÃâ·Â ¹æÇâ Á¦¾î ºÎºÐ¿¡¼­ ÀÚ¼¼È÷ ¼³¸íÇÑ´Ù. cat ¸í·É¾î ÁöÁ¤½Ã º¹¼ö°³ÀÇ È­ÀÏÀ» ÁöÁ¤ÇÔÀ¸·Î½á, º»·¡ÀÇ È­ÀÏ¿¡´Â ¿µÇâÀ»ÁÖÁö¾Ê°í, Ãâ·Â»ó¿¡¼­ È­ÀϵéÀ» º´ÇÕÇÒ ¼ö ÀÖ´Ù. ÀÌ·± ¹æ½ÄÀ¸·Î º´ÇÕÇÑ Ãâ·ÂÀº È­ÀÏ¸í ´ÙÀ½¿¡ Ãâ·Â ¹æÇâ º¯°æ ¸í·ÉÀÎ >¸¦ »ç¿ëÇÏ¿© ƯÁ¤ È­ÀÏ¿¡ ÀúÀåÇÒ ¼ö ÀÖ´Ù. ¿¹¸¦ µé¸é cat file1 file2 > allfileÀ̶ó ÁöÁ¤Çϸé file1°ú file2ÀÇ ³»¿ëÀÌ allfileÀ̶ó´Â È­ÀÏ¿¡ ÀúÀåµÈ´Ù. È­¸é»ó¿¡ Ç¥½Ã ºÒ°¡´ÉÇÑ ¹®ÀÚµéÀº -vet ¿É¼ÇÀ» »ç¿ëÇÏ¿© Ç¥½ÃÇÒ ¼ö ÀÖ´Ù. ÀÌ ±â´ÉÀº ÇÁ·Î±×·¥ È­Àϻ󿡼­ Á¦¾î ÄÚµå·Î ÀÎÇÑ ¿¡·¯¸¦ °Ë»öÇϴµ¥ ¸Å¿ì À¯¿ëÇÏ´Ù. ( ¿É¼Ç ) -v ascii Á¦¾î ¹®ÀÚµéÀ» Ç¥½ÃÇÑ´Ù. -e °¢ ¶óÀÎÀÇ ³¡¿¡ $¸¦ Ç¥½ÃÇÑ´Ù. À̸¦ ÁöÁ¤½Ã¿¡´Â ¹Ýµå½Ã -v ¿É¼ÇÀ» »ç¿ëÇÑ´Ù. -t ÅÇ(tab) ¹®ÀÚ¸¦ ^I·Î Ç¥½ÃÇÑ´Ù. À̸¦ ÁöÁ¤½Ã¿¡´Â ¹Ýµå½Ã -v ¿É¼ÇÀ» »ç¿ëÇÑ´Ù. ( ¿¹Á¦ ) ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $cat file1 ¦¢ ÀÌ ¿¹´Â °³°³ÀÇ È­ÀÏ ³»¿ëÀ» È­¸é»ó¿¡ ¦¢ this is file 1 ¦¢ Ç¥½ÃÇÏ´Â ¿¹¸¦ º¸¿©ÁÖ°í ÀÖ´Ù. ¦¢ $cat file2 ¦¢ ¦¢ this is file 2 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $cat file1 file2 ¦¢ ÀÌ ¿¹´Â cat ¸í·É¾î»ó¿¡ µÎ°³ÀÇ È­ÀÏÀ» ¦¢ this is file1. ¦¢ µ¿½Ã¿¡ ÁöÁ¤ÇÔÀ¸·Î½á Ãâ·Â»ó¿¡¼­ µÎ È­ÀÏÀÌ ¦¢ this is file2. ¦¢ º´ÇյǴ °ÍÀ» º¸¿©ÁÖ°í ÀÖ´Ù. ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $cat testfile ¦¢ ¦¢ This sample file contains ¦¢ ¦¢ several tabs and control characters ¦¢ ¦¢ like or . ¦¢ ¦¢ $cat -vet testfile ¦¢ ¦¢ This^Isample^Ifile^Icontains $ ¦¢ ¦¢ several^Itabs^Iand^Icontrol^Icharacters $ ¦¢ ¦¢ like ^b or ^c.$ ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÀÌ ¿¹¿¡¼­´Â Á¦¾î ¹®ÀÚµéÀÌ µé¾î ÀÖ´Â È­ÀÏÀÇ ³»¿ëÀ» Ç¥½ÃÇÏ´Â ¿¹ÀÌ´Ù. À§¿Í°°ÀÌ -vet ¿É¼ÇÀ» »ç¿ëÇÏ¿© Á¦¾î¹®ÀÚ¸¦ È®ÀÎÇÒ ¼ö ÀÖ´Ù. ======================================================================== ´ÙÀ½ °­ÀÇ¿¡¼­´Â È­ÀÏ °ü¸® ¸í·ÉÀÎ pg¿Í cp ¸í·É¾î¿¡ ´ëÇؼ­ ¼³¸í µå¸®°Ú½À´Ï´Ù. ------------------------------------------------------------------------ #26 À¯´Ï½Ã½º (adunis2 ) È­ÀÏ °ü¸® ¸í·É: pg ¿Í cp 02/12 12:56 148 line È­ÀÏ °ü¸® ¸í·É : pg ¿Í cp ------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ»çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. -------------------------------------------------------------------- 1. È­ÀÏ Çü½ÄÀÇ È®ÀÎ : pg ¸í·É¾î pg : ÁöÁ¤ÇÑ È­ÀÏÀÇ ³»¿ëÀ» Ãâ·ÂÇÑ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ pg [+/-options] [file(s)] ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ cat ¸í·É¾î´Â È­ÀÏÀÇ ¸ðµç ³»¿ëÀ» Çѹø¿¡ Ãß·ÂÇÏ´Â °Í°ú ´Þ¸®, pg ¸í·É¾î´Â È­ÀÏÀÇ ³»¿ëÀ» ÇÑ È­¸éºÐ¾¿ Ãâ·ÂÇÑ´Ù. ¶ÇÇÑ pg ¸í·É¾î´Â È­Àϳ»ÀÇ Á¤¹æÇ⠶Ǵ ¿ª¹æÇâ °Ë»ö ±â´É°ú ºÎ°¡ÀûÀÎ ¸í·É¾îµéÀ» Á¦°øÇÑ´Ù. pg ¸í·É¾î´Â ÇÑ È­¸éºÐÀÇ ³»¿ëÀ» Ãâ·ÂÇÏ°í, È­¸éÀÇ ³¡¿¡ :À» Ç¥½ÃÇÑ´Ù. À̶§ ´ÙÀ½ È­¸éÀ» Ãâ·ÂÇϱâ À§Çؼ­´Â À» ´©¸¥´Ù. ¶ÇÇÑ :À» ´ë½ÅÇÏ¿© ´Ù¸¥ ÇÁ·ÒÇÁÆ®¸¦ »ç¿ëÇϱâ À§Çؼ­´Â -p string Çü½ÄÀ¸·Î º¯°æÇÒ ¼ö ÀÖ´Ù. ±×¸®°í È­Àϳ»ÀÇ ¸¶Áö¸· È­¸éÀÌ Ãâ·ÂµÇ¸é, ¸¶Áö¸·¿¡ (EOF):À» Ç¥½ÃÇÑ´Ù. pg ¸í·É¾î¿¡ º¹¼ö°³ÀÇ È­ÀÏÀ» ÁöÁ¤ÇÔÀ¸·Î½á º¹¼ö È­ÀÏÀÇ ³»¿ëÀ» Ãâ·ÂÇÒ ¼ö Àִµ¥, ÀÌ °æ¿ì (EOF):°¡ Ç¥½ÃµÇ¾úÀ»¶§ nÀ» ´©¸§À¸·Î½á ´ÙÀ½ È­ÀÏÀ» Ç¥½ÃÇÒ ¼ö ÀÖÀ¸¸ç, p¸¦ ´©¸§À¸·Î½á ÀÌÀü È­ÀÏÀÇ ³»¿ëÀ» Ç¥½ÃÇÒ ¼ö ÀÖ´Ù. ±âº»ÀûÀ¸·Î pg ¸í·É¾î´Â ÇÑ È­¸é¿¡ 23 ¶óÀξ¿À» Ãâ·ÂÇÑ´Ù. Ãâ·ÂµÇ´Â ¶óÀμö´Â -n ¿É¼ÇÀ¸·Î( nÀº È­¸é»ó¿¡ Ç¥½ÃµÇ´Â ¶óÀμö¸¦ ³ªÅ¸³»´Â ¼ýÀÚ ) º¯°æÇÒ ¼ö ÀÖ´Ù. ±×¸®°í pg ¸í·É¾î´Â È­ÀÏ ³»¿ëÀÇ Ã¹¹ø° ¶óÀκÎÅÍ È­¸é»ó¿¡ Ãâ·ÂÇÑ´Ù. Ãâ·ÂÀ» ½ÃÀÛÇÒ È­ÀÏ»óÀÇ ¶óÀÎ ¹øÈ£µµ +n ¿É¼ÇÀ» ( nÀº ¶óÀιøÈ£¸¦ ÀǹÌÇÑ´Ù. ) »ç¿ëÇÏ¿© º¯°æÇÒ ¼ö ÀÖ´Ù. ÀÌ¿Í°°ÀÌ ¶óÀÎ ¹øÈ£¸¦ ÅëÇØ Á¤ÀÇÇÏ´Â ¹æ½Ä°ú ´Þ¸®, +/pattern ¿É¼ÇÀ» »ç¿ëÇÔÀ¸·Î½á ÁöÁ¤µÈ patternÀ̶ó´Â ¹®ÀÚ¿­ÀÌ µé¾î ÀÖ´Â ¶óÀÎÀÇ 2ÁÙ À§ºÎÅÍ Ãâ·ÂÀ» °³½ÃÇÒ ¼ö ÀÖ´Ù. pg ¸í·É¾î´Â È­ÀÏÀÇ ³»¿ëÀ» ÂüÁ¶Çϸ鼭 »ç¿ëÇÒ¼ö ÀÖ´Â ¸¹Àº ¸í·É¾î¸¦ Á¦°øÇÑ´Ù. ¿¹¸¦µé¸é »ç¿ë °¡´ÉÇÑ ¸í·É¾îµéÀ» È®ÀÎÇÒ¼ö ÀÖ´Â h ¸í·É, È­ÀÏÀ» ÆíÁýÇϱâ À§ÇÑ v ¸í·É¾î, ƯÁ¤ ¹®ÀÚ¿­À» Á¤¹æÇâ °Ë»öÇϱâ À§ÇÑ ¸í·ÉÀÎ /pattern, ¿ª¹æÇâ °Ë»öÀ» À§ÇÑ ?pattern, Çϳª ¶Ç´Â ±×ÀÌ»óÀÇ ½© ¸í·É¾î¸¦ ¼öÇàÇϱâ À§ÇÑ !command, ¸í·É¾î ¶óÀλ󿡼­ ÁöÁ¤ÇÑ Á÷ÀüÀÇ È­ÀÏÀÇ ³»¿ëÀ» È®ÀÎÇϱâ À§ÇÑ p ¸í·É¾î, ƯÁ¤ È­ÀÏ¿¡ Àüü ÀÔ·ÂÀ» ÀúÀåÇϱâ À§ÇÑ s file ¸í·É¾îµîÀÌ ÀÖ´Ù. ( ¿É¼Ç ) -p string pg ¸í·É¾î ¼öÇà½Ã »ç¿ëÇÒ ÇÁ·ÒÇÁÆ®¸¦ º¯°æÇϱâ À§ÇÑ ¿É¼Ç -c °¢ È­ÀÏÀÇ ³»¿ëÀ» Ç¥½ÃÇϱâÀü¿¡ ½ºÅ©¸°À» ±ú³¡ÇÏ°Ô Áö¿î´Ù. -n ½ºÅ©¸° Å©±â¸¦ n ¶óÀÎÀ¸·Î º¯°æÇÑ´Ù. +n È­Àϳ»ÀÇ n ¶óÀκÎÅÍ È­¸é»ó¿¡ Ãâ·ÂÇÑ´Ù. +/pattern patternÀÌ µé¾î ÀÖ´Â ¶óÀκÎÅÍ Ãâ·ÂÀ» ½ÃÀÛÇÑ´Ù. ( ¿¹Á¦ ) ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$pg -p "myprompt>" file1 file2 file3 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ °¢ È­¸é»óÀÇ ¸¶Áö¸·¿¡ Ãâ·ÂµÉ ÇÁ·ÒÇÁÆ®¸¦ ¹Ù²Ù°í, º¹¼ö°³ÀÇ È­ÀÏÀ» ´ë»óÀ¸·Î ÀÛ¾÷ÇÏ´Â ¿¹. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$pg -c10 +10 file2 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ È­ÀÏÀÇ ³»¿ëÀ» Ãâ·ÂÇÒ È­¸éÀÇ ¶óÀμö¸¦ 10À¸·Î, Ãâ·ÂÇϱâÀü¿¡ È­¸éÀ» ±ú²ýÀÌ Áö¿ì°í, È­ÀÏ»óÀÇ 10 ¹ø° ¶óÀκÎÅÍ Ãâ·ÂÇϵµ·Ï ÁöÁ¤ÇÑ ¿¹. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$pg +/pattern file3 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ patternÀ̶ó´Â ¹®ÀÚ¿­ÀÌ µé¾îÀÖ´Â ¶óÀκÎÅÍ Ãâ·ÂÇ϶ó´Â ¿¹. 2. È­ÀÏÀÇ º¹»ç cp : ƯÁ¤ È­ÀÏÀ» ÁöÁ¤ÇÑ È­ÀÏ·Î º¹»çÇ϶ó´Â ¸í·É ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ cp [-option] source target ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ cp ¸í·É¾î´Â È­À϶Ǵ µð·ºÅ丮¸¦ º¹»çÇÑ´Ù. source È­ÀÏ°ú target È­ÀÏÀº µ¿ÀÏ µð·ºÅ丮¿¡¼­ÀÇ ÀÛ¾÷½Ã¿¡´Â °°Àº À̸§À» ºÎ¿©ÇÒ ¼ö ¾ø´Ù. ¶ÇÇÑ targetÀÌ source¿Í µ¿ÀÏ È­ÀÏ ½Ã½ºÅÛ»ó¿¡ Á¸ÀçÇÏ´Â µð·ºÅ丮¶ó¸é, ´Ù¼öÀÇ source È­ÀϵéÀ» º¹»çÇÒ ¼ö ÀÖ´Ù. ±×·¸Áö¸¸ target µð·ºÅ丮°¡ Á¸ÀçÇÏÁö ¾ÊÀ» °æ¿ì¿¡´Â cp ¸í·ÉÀº ÁöÁ¤ÇÑ À̸§À¸·Î È­ÀÏÀ» »ý¼ºÇÑ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $cp memo1 memo2 memo3 ../backup ¦¢ backup µð·ºÅ丮 ¹Ø¿¡ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ memo1, memo2, memo3 È­ÀÏÀ» º¹»çÇÑ´Ù. ´Ü, backup µð·ºÅ丮°¡ ¾øÀ¸¸é backupÀ̶ó´Â À̸§ÀÇ È­ÀÏÀ» »ý¼ºÇÑ´Ù. ¶ÇÇÑ targetÀÌ ±âÁ¸¿¡ Á¸ÀçÇÏ´Â È­ÀÏÀÏ °æ¿ì¿¡´Â cp ¸í·É¾î´Â ±× È­ÀÏÀ» overwriteÇÑ´Ù. -i ¿É¼ÇÀº ±âÁ¸ÀÇ È­ÀÏÀ» overwriteÇÔÀ¸·Î½á ¹ß»ýÇÒ ¼ö ÀÖ´Â È­ÀÏ ¼Ò½ÇÀ» ¿¹¹æÇϴµ¥ ¾ÆÁÖ À¯¿ëÇÏ°Ô »ç¿ëÇÒ ¼ö ÀÖ´Ù. i ¿É¼ÇÀ» »ç¿ëÇÒ °æ¿ì¿¡ targetÀÌ ±âÁ¸¿¡ Á¸ÀçÇϸé, overwriteÇÒ °ÍÀΰ¡¸¦ ¹¯´Â ÇÁ·ÒÇÁÆ®¸¦ Ç¥½ÃÇÑ´Ù. ±× ¿¹´Â ´ÙÀ½°ú °°´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $cp -i forma formb ¦¢ ¦¢ cp: overwrite formb? ¦¢ ÀÌ °æ¿ì YesÀ̸é y¸¦ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ NoÀ̸é nÀ» ÀÔ·ÂÇÑ´Ù. ±âº»ÀûÀ¸·Î target È­ÀÏÀº source È­ÀÏÀÇ Á¢±Ù ±ÇÇÑÀ» ±×´ë·Î À¯ÁöÇÑ´Ù. -p ¿É¼ÇÀº source È­ÀÏÀÇ ¼öÁ¤ ½Ã°£À» target È­ÀÏ¿¡ º¸Á¸ÇÑ´Ù. ÀÌ ¿É¼ÇÀ» ÁöÁ¤ÇÏÁö ¾ÊÀ» °æ¿ì¿¡´Â target È­ÀÏÀÇ ¼öÁ¤ ³¯Â¥¹× ½Ã°£ÀÌ º¹»ç°¡ ¿Ï·áµÈ ³¯Â¥¿Í ½Ã°£À¸·Î º¯°æµÈ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $cp file1 file2 ¦¢ ¦¢ $ls -il file1 file2 ¦¢ ¦¢ 894 -rw-r--r-- 1 user1 admin 3457 May 13 16:45 file1 ¦¢ ¦¢ 947 -rw-r--r-- 1 user1 admin 3457 Aug 23 14:17 file2 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÀÌ ¿¹¿¡¼­´Â inode ¹øÈ£¿Í º¯°æ ³¯Â¥°¡ ¹Ù²ï °ÍÀ» ÁÖ¸ñÇϱ⠹ٶõ´Ù. ÀÌ ¿¹ÀÇ file2´Â ±âÁ¸¿¡ Á¸ÀçÇÏÁö ¾Ê´Â È­ÀÏÀ̾ú±â ¶§¹®¿¡ µ¿ÀÏ Á¢±Ù±ÇÇÑÀÌ ºÎ¿©µÈ°ÍÀ» º¼¼ö ÀÖ´Ù. ¸¸ÀÏ ±âÁ¸¿¡ ÀÖ´Â È­ÀÏÀÏ °æ¿ì¿¡´Â º»·¡ È­ÀÏÀÇ Á¢±Ù È­ÀÏÀ» ±×´ë·Î À¯ÁöÇÑ´Ù. ¸¸¾à ´Ù¸¥ µð·ºÅ丮¿¡ º¹»çµÇµµ·Ï ÁöÁ¤Çß´Ù¸é, µðÆúÆ® Á¢±Ù ±ÇÇÑÀÎ rw-rw-rw-¶ó´Â Á¢±Ù ±ÇÇÑÀÌ ºÎ¿©µÈ´Ù. -r ¿É¼ÇÀº source µð·ºÅ丮³»ÀÇ È­ÀÏ¹× ¼­ºê µð·ºÅ丮ÀÇ ³»¿ëÀ» µ¿ÀÏ È­ÀÏ ½Ã½ºÅÛ»óÀÇ target µð·ºÅ丮¿¡ º¹»çÇϴµ¥ »ç¿ëµÇ´Â ¿É¼ÇÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $cp -r dir1/subdir dir2 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ º¹»çµÈ È­ÀÏ¿¡´Â source È­ÀÏ°ú ´Ù¸¥ inode ¹øÈ£°¡ ºÎ¿©µÈ´Ù. ¿Ö³ÄÇϸé source È­ÀÏ°ú´Â ´Ù¸¥ µð½ºÅ©»óÀÇ ±â¾ï ¿µ¿ª¿¡ ÀúÀåµÇ±â ¶§¹®ÀÌ´Ù. ( ¿É¼Ç ) -i ±âÁ¸ÀÇ È­ÀÏÀ» overwriteÇÒ °æ¿ì¿¡ ÇÁ·ÒÇÁÆ®¸¦ Ç¥½ÃÇ϶ó´Â ÀǹÌ. -p source È­ÀÏÀÇ ¼öÁ¤ ³¯Â¥¿Í ½Ã°£À» target È­ÀÏ¿¡ º¸Á¸ÇÑ´Ù. -r source µð·ºÅ丮ÀÇ È­ÀÏ°ú ¼­ºê µð·ºÅ丮¸¦ ¸ðµÎ º¹»çÇÑ´Ù. ======================================================================== ´ÙÀ½ °­ÀÇ¿¡¼­´Â È­ÀÏ °ü¸® ¸í·ÉÀÎ mv ¸í·É¾î¿¡ ´ëÇؼ­ ¼³¸í µå¸®°Ú½À´Ï´Ù. ------------------------------------------------------------------------ #27 À¯´Ï½Ã½º (adunis2 ) È­ÀÏ °ü¸® ¸í·É: mv 02/13 09:05 72 line È­ÀÏ °ü¸® ¸í·É : mv ------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ»çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. -------------------------------------------------------------------- 1. È­ÀÏÀÇ À̵¿ : mv ¸í·É¾î mv : È­ÀÏÀ» À̵¿Çϰųª È­ÀÏ À̸§À» ¹Ù²Ù´Â ¸í·É ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ mv [-option] source target ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ mv ¸í·É¾î´Â µ¿ÀÏ È­ÀÏ ½Ã½ºÅÛ³»ÀÇ È­ÀϵéÀ» À̵¿Çϰųª À̸§À» ¹Ù²Û´Ù. ´ë»ó È­ÀÏÀÇ Á¢±Ù ±ÇÇÑÀ̳ª ¼öÁ¤ ½Ã°£Àº ±×´ë·Î À¯ÁöµÈ´Ù. ¸í·É¾î¿¡ ÁöÁ¤ÇÑ source¿Í target È­ÀϸíÀº µ¿ÀÏ µð·ºÅ丮³»¿¡¼­´Â µ¿ÀÏÇÏ°Ô ÁöÁ¤ÇÒ ¼ö ¾ø´Ù. ¸¸¾à targetÀ¸·Î ÁöÁ¤ÇÑ À̸§ÀÌ µ¿ÀÏ È­ÀÏ ½Ã½ºÅÛ»ó¿¡¼­ Á¸ÀçÇÏ´Â µð·ºÅ丮ÀÏ °æ¿ì¿¡´Â, º¹¼ö°³ÀÇ source È­ÀϵéÀ» À̵¿ÇÒ ¼ö ÀÖ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ backupÀ̶ó´Â µð·ºÅ丮¿¡ ¦¢ $mv memo1 ../backup ¦¢ memo1 È­ÀÏÀ» À̵¿ÇÑ´Ù. ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ( À̶§ backupÀ̶ó´Â µð·ºÅ丮°¡ ¾øÀ» °æ¿ì¿¡´Â ¾Æ·¡¿Í °°ÀÌ Ã³¸®µÈ´Ù. ) ±×·¸Áö¸¸ target µð·ºÅ丮°¡ Á¸ÀçÇÏÁö ¾ÊÀ» °æ¿ì¿¡´Â mv ¸í·É¾î´Â ÁöÁ¤ÇÑ target¸íÀ¸·Î È­ÀÏÀ» »ý¼ºÇÑ´Ù. ¶ÇÇÑ targetÀ¸·Î ÁöÁ¤ÇÑ È­ÀÏÀÌ ±âÁ¸¿¡ Á¸ÀçÇÒ °æ¿ì¿¡´Â mv ¸í·É¾î´Â ±× ³»¿ëÀ» overwrite ÇÑ´Ù. ÀÌ °æ¿ì -i ¿É¼ÇÀ» »ç¿ëÇϸé overwrite·Î ÀÎÇÑ È­ÀÏ ¼Ò½ÇÀ» ¹æÁöÇÒ ¼ö ÀÖ´Ù. -i ¿É¼ÇÀ» »ç¿ëÇßÀ» °æ¿ì target È­ÀÏÀÌ Á¸ÀçÇÒ °æ¿ì¿¡´Â ÀÛ¾÷ °è¼Ó ¼öÇà¿©ºÎ¸¦ ¹¯´Â ÇÁ·ÒÇÁÆ®¸¦ »Ñ·ÁÁØ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ °è¼Ó ¼öÇà ¿©ºÎ¸¦ yes(y) ¶Ç´Â ¦¢ $mv -i forma formb ¦¢ no(n)¸¦ ÁöÁ¤ÇÑ´Ù. ¦¢ mv: overwrite formb? ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ -f ¿É¼ÇÀº target È­ÀÏÀÌ overwriteµÈ´Ù ÇÏ´õ¶óµµ, ÇÁ·ÒÇÁÆ®¸¦ Ç¥½ÃÇÏÁö ¾Ê°í, ÀÛ¾÷À» °­ÇàÇÑ´Ù. ¿É¼ÇÀ» ÁöÁ¤ÇÏÁö ¾Ê¾ÒÀ» °æ¿ì¿¡´Â ÀÌ ¿É¼ÇÀÌ »ç¿ëµÈ´Ù. »õ·Î »ý¼ºµÈ target È­ÀÏÀº º»·¡ÀÇ È­ÀÏ°ú µð½ºÅ©»óÀÇ µ¿ÀÏ ±â¾ï ¿µ¿ªÀ» Á¡À¯Çϱ⠶§¹®¿¡ º»·¡ÀÇ inode ¹øÈ£¸¦ À¯ÁöÇÑ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $ls -il file1 ¦¢ ¦¢ 894 -rw-r--r-- 1 user1 admin 3457 May 13 16:45 file1 ¦¢ ¦¢ $mv file1 file2 ¦¢ ¦¢ $ls -il file1 file2 ¦¢ ¦¢ 894 -rw-r--r-- 1 user1 admin 3457 Aug 23 14:17 file2 ¦¢ ¦¢ file1: No such file or directory ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ À§ÀÇ ¿¹¿¡¼­´Â À̵¿ Àü°ú À̵¿ ÈÄÀÇ È­ÀÏÀÇ inode ¹øÈ£¿Í Á¢±Ù±ÇÇÑÀÌ º¯È­µÇÁö ¾ÊÀ½À» º¸¿©ÁÖ´Â ¿¹ÀÌ´Ù. ( ¿É¼Ç ) -i ±âÁ¸ÀÇ È­ÀÏÀ» overwrite ÇϱâÀü¿¡ ÀÛ¾÷ ¼öÇà ¿©ºÎ¸¦ ¹¯´Â ÇÁ·ÒÇÁÆ®¸¦ Ç¥½ÃÇÑ´Ù. -f overwrite ¼öÇà ¿©ºÎ¸¦ ¹¯´Â ÇÁ·ÒÇÁÆ®¸¦ Ç¥½ÃÇÏÁö ¾Ê´Â´Ù. ( µðÆúÆ® ¿É¼ÇÀÌ´Ù. ) ======================================================================== ´ÙÀ½ °­ÀÇ¿¡¼­´Â È­ÀÏ °ü¸® ¸í·ÉÀÎ ln ¸í·É¾î¿¡ ´ëÇؼ­ ¼³¸í µå¸®°Ú½À´Ï´Ù. ------------------------------------------------------------------------ #28 À¯´Ï½Ã½º (adunis2 ) È­ÀÏ °ü¸® ¸í·É: ln 02/13 13:30 105 line È­ÀÏ °ü¸® ¸í·É : ln ------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ»çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. -------------------------------------------------------------------- 1. È­ÀÏÀÇ ¸µÅ© : ln ¸í·É¾î ln : source¿Í target È­ÀÏÀ» ¸µÅ©(link)ÇÑ´Ù. ( ´Ü¼øÇÏ°Ô ¼³¸íÇÏÀÚ¸é ÇϳªÀÇ È­ÀÏÀ» ¿©·¯ À̸§À¸·Î ÂüÁ¶ ÇÒ ¼ö ÀÖ°Ô Á¦°øµÇ´Â ±â´ÉÀÌ´Ù. ) ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ ln [-option] source target ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¸µÅ©¶õ È­ÀÏÀ» °¡¸£Å°°í ÀÖ´Â µð·ºÅ丮³»¿¡ º¸Á¸µÇ´Â Á¤º¸ÀÌ´Ù. ¿î¿µÃ¼Á¦´Â È­ÀÏÀÌ »ý¼ºµÇ¾úÀ»¶§ ù¹ø° ¸µÅ©¸¦ »ý¼ºÇÑ´Ù. È­ÀÏÀÇ ºÎ°¡ÀûÀÎ ¸µÅ©´Â ln ¸í·É¾î¸¦ »ç¿ëÇÏ¿© »ý¼ºÇÒ ¼ö ÀÖ´Ù. ls -l ¸í·É¾î´Â È­ÀÏÀÇ ¸µÅ© ¼ö¸¦ º¸¿©ÁØ´Ù. À̶§ °°ÀÌ µð·ºÅ丮ÀÇ ¸µÅ© ¼ö°¡ Ç¥½ÃµÇ´Âµ¥, µð·ºÅ丮ÀÇ ¸µÅ©¼ö´Â ¼­ºê µð·ºÅ丮ÀÇ ¼ö¸¦ ³ªÅ¸³½´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $ls -il file1 ¦¢ ¦¢ 894 -rw-r--r-- 1 user1 admin 3457 May 13 16:45 file1 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¦¦¦¡¦¡¸µÅ©¼ö °èÃþ ±¸Á¶ÀÇ È­ÀÏ ½Ã½ºÅÛ¿¡¼­´Â ƯÁ¤ÇÑ È­ÀÏÀ» ÂüÁ¶Çϱâ À§Çؼ­´Â ±× È­ÀÏÀÌ À§Ä¡ÇÏ°í ÀÖ´Â µð·ºÅ丮ÀÇ »ó´ë °æ·Î ¶Ç´Â Àý´ë °æ·Î¸¦ ¼±¾ðÇØ ÁÖ¾î¾ß ÇÑ´Ù. ln ¸í·É¾î´Â Åë»ó ´Ù¸¥ µð·ºÅ丮µé¿¡ ÀÖ´Â È­ÀÏ·ÎÀÇ ´Ù¾çÇÑ ÂüÁ¶ ¹æ½ÄÀ» »ý¼ºÇϱâ À§ÇØ »ç¿ëµÈ´Ù. Áï, ln ¸í·É¾î¿¡ ÁöÁ¤ÇÑ ´Ù¸¥ µð·ºÅ丮»ó¿¡ À§Ä¡ÇÏ°í ÀÖ´Â source È­ÀÏÀ» ÂüÁ¶Çϱâ À§ÇØ °æ·Î¸íÀ» ÁöÁ¤ÇÏ´Â ´ë½Å, »ç¿ëÀÚ´Â target È­ÀÏ¸í ¸¸À» ÁöÁ¤ÇÔÀ¸·Î½á ÂüÁ¶ÇÒ ¼ö ÀÖ°Ô ÇØÁØ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¸í·É ¼öÇàÈÄ qtr1 È­ÀÏÀ» ¦¢ $ln qtr1 report/annual ¦¢ report/annual µð·ºÅ丮³»¿¡¼­µµ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ annual µð·ºÅ丮³»¿¡ ÀÖ´Â È­ÀÏó·³ »ç¿ëÇÒ ¼ö ÀÖ´Ù. ¸¸ÀÏ annualÀ̶ó´Â µð·ºÅ丮°¡ ¾øÀ» °æ¿ì¿¡´Â annualÀ̶ó´Â À̸§ÀÇ ¸µÅ© È­ÀÏÀ» »ý¼ºÇÑ´Ù. ¸µÅ© ¸í·ÉÀº È­ÀÏÀÇ ¶Ç´Ù¸¥ º¹Á¦º»À» ÀÛ¼ºÇÏ´Â °ÍÀÌ ¾Æ´Ï¶ó, ¶Ç´Ù¸¥ Æ÷ÀÎÅÍ ¸¸À» »ý¼ºÇÑ´Ù. ¸µÅ©µÈ È­ÀÏ·ÎÀÇ º¯°æÀº È­ÀÏÀ» ÂüÁ¶Çϱâ À§ÇØ »ç¿ëµÈ È­ÀÏ À̸§¿¡ ¿µÇâÀ» ¹ÞÁö ¾Ê´Â´Ù. Áï ¾î¶² À̸§À¸·Îµµ È­ÀÏÀ» °»½ÅÇÒ ¼ö ÀÖ°í, °»½Å ÈÄ¿¡µµ ¾î¶² È­ÀÏ À̸§À¸·Î ÂüÁ¶ÇÑ´Ù ÇÏ´õ¶óµµ µ¿ÀÏÇÏ°Ô °»½ÅµÈ ³»¿ëÀ» ÂüÁ¶ÇÒ ¼ö ÀÖ´Ù´Â ÀǹÌÀÌ´Ù. ln ¸í·É¾î»ó¿¡ ÁöÁ¤ÇÏ´Â source È­ÀÏÀº Çϳª ÀÌ»ó ¿©·¯°³¸¦ ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù. ln ¸í·É¾î´Â ¸í·É¾î ¶óÀλóÀÇ ¸¶Áö¸· ÀÎÀÚ¸¦(arguments) targetÀ̶ó°í °¡Á¤ÇÑ´Ù. À̶§ ¸¶Áö¸· ÀÎÀÚ´Â È­ÀÏ ¶Ç´Â µð·ºÅ丮¸¦ ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $ln qtr2 qtr3 qtr4 report/annual ¦¢ qtr2, qtr3, qtr4 È­ÀÏÀ» ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ report/annual µð·ºÅ丮¿¡ ¸µÅ©ÇÑ´Ù. ¸¸ÀÏ annualÀ̶ó´Â µð·ºÅ丮°¡ ¾øÀ» °æ¿ì¿¡´Â "annual not found"¶ó´Â ¿¡·¯ ¸Þ¼¼Áö°¡ Ç¥½ÃµÈ´Ù. ¸¸¾à targetÀÌ ±âÁ¸ÀÇ È­ÀÏÀ̸é, ln ¸í·É¾î´Â target È­ÀÏÀ» overwrite ÇÑ´Ù. ÀÌ °æ¿ì -n ¿É¼ÇÀ» ÁöÁ¤ÇϸéÀº target È­ÀÏÀÌ overwriteµÇ´Â °ÍÀ» ¹æÁöÇÒ ¼ö ÀÖ´Ù. ±×¸®°í È­ÀÏÀº µð·ºÅ丮¿¡ ¸µÅ©µÉ ¼ö ÀÖ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ -n ¿É¼ÇÀ» »ç¿ëÇÔÀ¸·Î½á ¦¢ $ln -n filex oldfile ¦¢ oldfileÀÌ ±âÁ¶¿¡ Á¸ÀçÇÏ°í Àֱ⠦¢ ln: oldfile: file exists ¦¢ ¶§¹®¿¡ ÀÛ¾÷ÀÌ ¼öÇàµÇÁö ¾Ê´Â °ÍÀ» ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ º¼¼ö ÀÖ´Ù. -s ¿É¼ÇÀÌ »ç¿ëµÈ °æ¿ì¸¦ Á¦¿ÜÇÏ°ï, ¸µÅ©´Â ´Ù¸¥ È­ÀÏ ½Ã½ºÅ۵鰣¿¡ »ý¼ºµÉ ¼ö ¾ø´Ù. -s ¿É¼ÇÀº ¸µÅ©µÉ È­ÀÏÀÇ °æ·Î¸íÀ» Æ÷ÇÔÇÏ°í ÀÖ´Â È­ÀÏÀÎ ½Éº¼¸¯ ¸µÅ©(symbolic link) È­ÀÏÀ» »ý¼ºÇÑ´Ù. ½Éº¼¸¯ ¸µÅ©´Â ´Ù¸¥ È­ÀÏ ½Ã½ºÅÛ°¡¿¡µµ ¸µÅ©¸¦ ¼öÇàÇÒ ¼ö ÀÖ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$ls -il /fs1/fileA ¦¢ ¦¢24130 -rw-r--r-- 1 user1 admin 952 May 13 16:45 fileA ¦¢ ¦¢$ln -s /fs1/fileA /fs2 ¦¢ ¦¢$ls -il /fs2/fileA ¦¢ ¦¢24133 lrwxrwxrwx 1 user1 admin 37 Aug 23 14:37 /fs2/fileA->/fs1/fileA ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ À§ÀÇ ¿¹¿¡¼­´Â ½Éº¼¸¯ ¸µÅ©°¡ ¼öÇàµÈÈÄ target µð·ºÅ丮³»¿¡ µ¿ÀÏÇÑ À̸§ÀÇ ¶Ç´Ù¸¥ È­ÀÏÀÌ Çϳª »ý¼ºµÈ °ÍÀ» º¼¼ö ÀÖ´Ù. À̶§ source¿Í target È­ÀÏÀÇ inode ¹øÈ£°¡ Ʋ¸²À» È®ÀÎ ÇÒ ¼ö ÀÖ´Ù. target È­ÀÏ¿¡´Â È­ÀÏÀÇ ³»¿ëÀº µé¾î ÀÖÁö ¾Ê°í, source È­ÀÏ·ÎÀÇ Àý´ë °æ·Î¸íÀÌ µé¾î Àֱ⠶§¹®¿¡, target È­ÀϸíÀ¸·Î È­ÀÏÀ» ÂüÁ¶Çصµ source È­ÀÏ·Î ÂüÁ¶ ÇßÀ»¶§¿Í °°Àº ³»¿ëÀÌ ÂüÁ¶µÈ´Ù. ¸µÅ©´Â ÀÌÈÄ¿¡ ¼³¸íµÉ rm ¸í·É¾î¸¦ »ç¿ëÇÏ¿© »èÁ¦µÈ´Ù. ( ¿É¼Ç ) -n ±âÁ¸¿¡ Á¸ÀçÇÏ´Â target È­ÀÏÀ» overwriteÇÏÁö ¾Ê´Â´Ù. -s ½Éº¼¸¯ ¸µÅ©¸¦ »ý¼ºÇÑ´Ù. ======================================================================== ´ÙÀ½ °­ÀÇ¿¡¼­´Â È­ÀÏ °ü¸® ¸í·ÉÁß ÇÁ¸°ÅÍ °ü·Ã ¸í·É¾î¿¡ ´ëÇؼ­ ¼³¸í µå¸®°Ú½À´Ï´Ù. ------------------------------------------------------------------------ #29 À¯´Ï½Ã½º (adunis2 ) È­ÀÏ ÇÁ¸°Æ® Á¦¾î ¸í·É I: pr, fmt, lp 02/15 09:43 171 line È­ÀÏ ÇÁ¸°Æ® Á¦¾î ¸í·É : pr, fmt, lp, lpstat, cancel, disable, enable ------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ»çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. -------------------------------------------------------------------- °­ÀǸ¦ ½ÃÀÛÇϱ⿡ ¾Õ¼­ À¯´Ð½º¿¡¼­ÀÇ È­ÀÏ ÇÁ¸°Æ® °³¿ä¿¡ ´ëÇؼ­ ¸ÕÀú ¼³¸íÇÑ´Ù. ±âº»ÀûÀ¸·Î DOS ¿î¿µÃ¼Á¦ÀÇ °æ¿ì ´ÜÀÏ »ç¿ëÀÚ È¯°æÀ» Áö¿øÇϱ⠶§¹®¿¡ ¾î´À ÇÑ ½ËÁ¡¿¡¼­ÀÇ ÀÛ¾÷Àº ¿ÀÁ÷ Çϳª¸¸ÀÌ ¼öÇàµÈ´Ù. µû¶ó¼­ ÇÑ ½ËÁ¡ÀÇ ÇÁ¸°Æ® ¿ä±¸´Â ÇϳªÀ̱⠶§¹®¿¡ º°´Ù¸¥ Á¦¾î ¾øÀÌ ¿ä±¸°¡ ¹ß»ýÇϴµ¥·Î ÇÁ¸°ÅÍ·Î ÇÁ¸°Æ®ÇÒ È­ÀÏÀÇ ³»¿ëÀ» º¸³»Áֱ⸸ ÇϸéµÈ´Ù. ±×·¯³ª À¯´Ð½ºÀÇ °æ¿ì´Â ±×¿Í ´Ù¸£´Ù. À¯´Ð½º´Â ´ÙÁß »ç¿ëÀÚ¹× ´ÙÁß ÀÛ¾÷ ¼öÇàÀ» Áö¿øÇϱ⠶§¹®¿¡ ¾î´À ÇÑ ½ËÁ¡¿¡¼­ÀÇ ÇÁ¸°Æ® ¿ä±¸´Â Çϳª ±× ÀÌ»óÀÏ °ÍÀÌ´Ù. µû¶ó¼­ ÇÁ¸°Æ® ¿ä±¸¸¦ Á¦¾îÇÒ ¼ö Àִ Ưº°ÇÑ µµ±¸°¡ ÇÊ¿äÇÏ°Ô µÈ´Ù. À¯´Ð½º°¡ äÅÃÇѵµ±¸°¡ ¹Ù·Î SPOOL ÀÌ´Ù. ±×·¯¸é À¯´Ð½º¿¡¼­ SPOOLÀ» ÅëÇÑ ÇÁ¸°Æ® ÀÛ¾÷ ¼öÇà °úÁ¤À» ±×¸²À¸·Î ±×·Áº»´Ù. <<< À¯´Ð½º ½Ã½ºÅÛ¿¡¼­ÀÇ ÇÁ¸°Æ® ¿ä±¸ ó¸® °úÁ¤ >>> UNIX System ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦£¦¡¦¤ ¦¢ ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ ¦¦¦¨¦¥ ¦¡¦¡¦¡¦¤ ¦¢ ¦¢LP Print service Driver ¢Æ¢Æ¢Æ¢Æ> ¦­¦£¦¡¦¡¦¡¦¤ ¦¬¦º¦¬ ¦¢ ¦¢ ¦¦¦¡¦¡¦¡¢Æ¦¡¦¡¦¡¦¡¦¡ ¦­ ¦¥ ¦¢ ¦­¦¢ ¦¢ . ¦¦¦¡¦¡> ¦£¦¡¦¡¦¡¢Æ¦¡¦¡¦¤ ¦­ ¦¢ ¦­¦¦¦¡¦¡¦¡¦¥ . ¦£¦¡¦¡> ¦¢¦£¦¡¦¡¦¡¦¡¦¤¦¢¢Æ¢Æ ¦­ ¢Æ¢Æ¢Æ¢Æ¢Æ> ¦­ . ¦¢ ¦¢ ¦¢¦¦¦¡¿ä±¸1 ¦¥¦¢ ¦­ ¦¢ ¦­¦£¦¡¦¡¦¡¦¤ . ¦¢ ¦¢ ¦¢¦£¦¡¦¡¦¡¦¡¦¤¦¢ ¦­ ¦¢ ¦­¦¢ ¦¢ ¦£¦¡¦¤ ¦¢ ¦¢ ¦¢¦¦¦¡¿ä±¸2 ¦¥¦¢ ¦­ ¦¢ ¦­¦¦¦¡¦¡¦¡¦¥ ¦¦¦¨¦¥ ¦¡¦¡¦¡¦¥ ¦¢ ¦¢ SPOOL ¦¢ ¦­ ¦¢ Printer ¦¬¦º¦¬ ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¦­ ¦¢ Terminal ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡ ¦­ ¦¡¦¡¦¡¦¥ ¦£¦¡¦¡¦¿¦¡¦¤ ¢Æ¢Æ ó¸® Á¦¾î ¦¢ÇÁ¸°Æ® ¦¢ ¦¬¦¬ ¦¢Á¦¾î ¦¢ ¦¢À¯Æ¿¸®Æ¼¦¢ ¦¦¦¡¦¡¦¡¦¡¦¥ À§ÀÇ ±×¸²À» ¼³¸íÇÏ¸é ´ÙÀ½°ú °°´Ù. °¢ ´Ü¸»¿¡¼­ ¿ä±¸µÇ¾îÁø ÇÁ¸°Æ® ¿ä±¸¿Í °ü·ÃµÈ Á¤º¸µéÀº ( ÇÁ¸°Æ® ¿ä±¸»çÇ×°ú ÇÁ¸°Æ®µÉ È­ÀÏ ³»¿ëµî ) ±âº»ÀûÀ¸·Î SPOOLÀ̶ó´Â ¿µ¿ª¿¡ ÀúÀåµÈ´Ù. ÀÌ SPOOL ¿µ¿ªÀº LP Print service Devicer¿¡ÀÇÇØ °ü¸®µÇ¸ç, °¢°¢ÀÇ ÇÁ¸°Æ® ¿ä±¸µéÀº 󸮻óÀÇ ¿ì¼± ¼øÀ§¿¡ µû¶ó ƯÁ¤ ¿ä±¸°¡ ¼±ÅõǾî ÇÁ¸°ÅÍ·Î º¸³»Á® Ãâ·ÂÀ» ÇϰԵȴÙ. ÀÌ·¯ÇÑ ÀÛ¾÷ ȯ°æÇÏ¿¡¼­ »ç¿ëÀÚ´Â ÇÁ¸°ÅÍ ÀÛ¾÷¿¡ ´ëÇÑ Á¦¾î¸¦ ´Ù¾çÇÑ À¯Æ¿¸®Æ¼µéÀ» ÅëÇØ ¼öÇàÇÒ ¼ö ÀÖ°Ô µÇ´Âµ¥, ÀÌ·± À¯Æ¿¸®Æ¼µé¿¡ ´ëÇØ Áö±ÝºÎÅÍ ¼³¸íÇÑ´Ù. 1. Ãâ·ÂÀ» À§ÇÑ È­ÀÏ ³»¿ëÀÇ Çü½Ä ¼³Á¤ : pr°ú fmt 1) pr : ÁöÁ¤ÇÑ È­ÀÏÀÇ ³»¿ëÀ» ÇÁ¸°Æ®ÇÒ Çü½ÄÀ¸·Î º¯È­ÇÏ¿©È­¸é¿¡ Ç¥½ÃÇÑ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ pr [-option] file(s) ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ pr ¸í·É¾î´Â ÀϹÝÀûÀ¸·Î ÇÁ¸°ÅÍ·Î Ãâ·ÂÀ» ÁغñÇϱâ À§ÇØ »ç¿ëµÈ´Ù. È­ÀϸíÀ» ÁöÁ¤ÇÏÁö ¾ÊÀ» °æ¿ì¿¡´Â pr ¸í·É¾î´Â Å͹̳ÎÀÇ Å°º¸µå·Î ºÎÅÍ ÀÔ·ÂÀ» ¹Þ¾ÆµéÀδÙ. ÇÁ¸°Æ® Çü½ÄÀ¸·Î º¯È¯µÈ Ãâ·ÂÀº È­¸é»ó¿¡ Ç¥½ÃµÈ´Ù. ÀÌ °æ¿ì¿¡ Ãâ·ÂÀ» Ãâ·Â ¹æÇâ º¯È¯ Ư¼ö¹®ÀÚ¸¦ ( | ) »ç¿ëÇÏ¿© ÇÁ¸°Æ® ¸í·É¾î (Áï, lp)·Î º¸³»°Å³ª , ¶Ç´Ù¸¥ Çü½Ä º¯È¯¹®ÀÚÀÎ >¸¦ »ç¿ëÇÏ¿©, È­ÀÏ¿¡ ÀúÀåÇÒ ¼ö ÀÖ´Ù. ±âº»ÀûÀ¸·Î È­ÀÏÀº ÆäÀÌÁöµé·Î ºÐÇҵǾî ÇÁ¸°Æ®µÈ´Ù. À̶§ ÆäÀÌÁöÀÇ ±âº» ±¸¼º Çü½ÄÀº 66 ¶óÀÎÀÇ ÆäÀÌÁö ±æÀÌ, 72 Ä®·³ÀÇ ÆäÀÌÁö Æø, ¸Ó¸®¸»°ú ²¿¸®¸»ÀÇ °¢°¢ 5 ¶óÀÎÀ¸·Î ±¸¼ºµÈ´Ù. ¶ÇÇÑ ¸Ó¸®¸»°ú ²¿¸®¸»¿¡´Â È­Àϸí, ³¯Â¥, ½Ã°£°ú ÆäÀÌÁö ¹øÈ£¸¦ °®´Â´Ù. pr ¸í·É¾îÀÇ ¿É¼ÇÀ» »ç¿ëÇÔÀ¸·Î½á À§ÀÇ ±âº» Çü½ÄÀ» º¯°æÇÒ ¼ö ÀÖ´Ù. °¡Àå ³Î¸® »ç¿ëµÇ°í ÀÖ´Â ¿É¼ÇµéÀº ¾Æ·¡¿Í °°´Ù. ( pr ¸í·É¾î ¿É¼Ç ) +n n ÆäÀÌÁöºÎÅÍ È­¸é¿¡ Ç¥½ÃÇÑ´Ù. ( ¹ÌÁöÁ¤½Ã 1 ÆäÀÌÁö ) -d °¢¶óÀθ¶´Ù ÇÑ ¶óÀÎÀÇ °ø¹é ¶óÀÎÀ» ºÙ¿© Ãâ·ÂÇÑ´Ù. -h newfile ¸Ó¸®¸»¿¡ Ãâ·ÂµÇ´Â È­ÀϸíÀ» newfile·Î º¯°æÇÑ´Ù. -ln ÆäÀÌÁöÀÇ ¶óÀμö¸¦ n ¶óÀÎÀ¸·Î º¯°æÇÑ´Ù. -p È­¸é»ó¿¡ ÇÑ ÆäÀÌÁö¸¦ Ãâ·ÂÇÒ¶§¸¶´Ù Ç¥½Ã¸¦ Á¤ÁöÇÑ´Ù. -t ¸Ó¸®¸»°ú ²¿¸®¸»À» »ý·«ÇÑ´Ù. ( ¿¹Á¦ ) ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ longtext È­ÀÏÀÇ ³»¿ëÀ» ÇÁ¸°Æ® Çü½ÄÀ¸·Î ¦¢ $pr -dt longtext ¦¢ º¯È¯Çϴµ¥, °¢ ¶óÀθ¶´Ù ÇѶóÀÎÀÇ °ø¹é¶óÀÎÀ» ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ±×¸®°í ¸Ó¸®¸»°ú ²¿¸®¸»Àº »ý·«ÇÑ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $pr -ph "Fourth Quarter Summary" report/annual/qtr4 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ qtr4 È­ÀÏÀÇ ³»¿ëÀ» ÇÁ¸°Æ® Çü½ÄÀ¸·Î º¯È¯Çϴµ¥, °¢ ÆäÀÌÁö¸¶´Ù È­¸é»ó¿¡ Ç¥½Ã¸¦ ÁßÁöÇÏ°í, ¸Ó¸®¸»ÀÇ È­ÀÏ¸í ºÎºÐÀ» ÁöÁ¤ÇÑ ¹®ÀÚ¿­·Î º¯È¯ÇÑ´Ù. 2) fmt : ÅؽºÆ® Çü½Ä º¯È¯±â fmt ¸í·É¾î´Â Ãâ·ÂÀÇ ÆøÀ» º¯°æÇϱâ À§ÇØ ÁÖ·Î »ç¿ëÇÑ´Ù. fmt¿¡¼­ Á¦°øÇÏ´Â ¿É¼ÇµéÁß¿¡ -s´Â ÇÁ·Î±×·¥ È­ÀÏ¿¡ ´ëÇÑ ÀÛ¾÷ ¼öÇà½Ã Àû´çÇÏ´Ù. ¿¹¸¦µé¸é fmt -w 20 fileZ´Â 20 ¹®ÀÚÆøÀ» °®µµ·Ï ÇϱâÀ§ÇØ fileZ¸¦ º¯È¯ÇÑ´Ù. ( ¿É¼Ç ) -w n ÅؽºÆ®ÀÇ ÆøÀ» n Ä®·³À¸·Î º¯°æÇÑ´Ù. -s Ä®·³À» º¯°æÇϸ鼭 ÁöÁ¤ÇÑ ÁöÁ¤ Ä®·³ ¹Ì¸¸ÀÇ ¶óÀÎÀ» º´ÇÕÇÏÁö ¾Ê´Â´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ memo.oct¶ó´Â È­ÀÏÀÇ ÆøÀ» 45 Ä®·³À¸·Î ¦¢ $fmt -w 45 memo.oct ¦¢ ÁöÁ¤ÇÏ¿© Ãâ·ÂÀ» »ý¼ºÇÑ´Ù. ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ script2 È­ÀÏÀ» ÇÁ¸°Æ® Çü½ÄÀ¸·Î ¦¢ $fmt -s script2 ¦¢ º¯È¯Çϴµ¥, ªÀº ¶óÀÎÀ» º´ÇÕÇÏ´Â ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÀÛ¾÷Àº ¼öÇàÇÏÁö ¾Ê´Â´Ù. 2. È­ÀÏÀÇ ÇÁ¸°ÅÍ·ÎÀÇ Ãâ·Â : lp lp ¸í·É¾î´Â SPOOL¿¡(Printer Queue) Çϳª ¶Ç´Â ±× ÀÌ»óÀÇ È­ÀÏÀ» À§Ä¡ ½ÃÅ´À¸·Î½á ÇÁ¸°Æ®¸¦ LP print sevice·Î ÇÏ¿©±Ý Ãâ·ÂÇÒ ¼ö ÀÖ°Ô ÇÑ´Ù. ¸í·É¾î»ó¿¡ È­ÀϸíÀ» ÁöÁ¤ÇÏÁö ¾ÊÀ» °æ¿ì¿¡´Â Å͹̳ηΠºÎÅÍ ÀÔ·ÂÀ» ¹Þ´Â´Ù. SPOOL¿¡ µî·ÏµÇ´Â ¸ðµç ÇÁ¸°Æ® ¿ä±¸µéÀº °¢°¢ À¯ÀÏÇÑ À̸§ÀÇ ½Äº°¸íÀ» ºÎ¿© ¹Þ°ÔµÈ´Ù. À̸¦ ÇÁ¸°Æ® ¿ä±¸ ½Äº°¸íÀ̶ó ÇÑ´Ù. ÇÁ¸°Æ® ¿ä±¸ ½Äº°¸íÀº lp ¸í·É¾î°¡ ½ÇÇàµÇ¾úÀ»¶§ printer_name-n Çü½ÄÀ¸·Î ( ¿©±â¼­ nÀº SPOOL³»¿¡¼­ À¯ÀÏÇÑ ¹øÈ£·Î ÀÚµ¿ ºÎ¿©µÈ´Ù. ) ÀÚµ¿ÀûÀ¸·Î ºÎ¿©µÇ¾î Ç¥½ÃµÈ´Ù. ÀÌ ÇÁ¸°Æ® ¿ä±¸ ½Äº°¸íÀº ÇÁ¸°Æ® ¿ä±¸ÀÇ »óŸ¦ È®ÀÎÇϰųª, ÇÁ¸°Æ® ÀÛ¾÷ ¿ä±¸¸¦ Ãë¼ÒÇÏ´Â ¸í·É¾î¿¡¼­ »ç¿ëµÉ ¼ö ÀÖ´Ù. ÀÌ·¯ÇÑ ¸í·É¾îµé¿¡ ´ëÇؼ­´Â Â÷ÈÄ¿¡ °è¼Ó ¼³¸íÇÑ´Ù. LP print service¿¡ °üÇÑ ³»¿ëÀº ½Ã½ºÅÛ °ü¸®ÀÚ °úÁ¤¿¡¼­ ÀÚ¼¼È÷ ¼³¸íÇÑ´Ù. Âü°í·Î LP print service´Â ½Ã½ºÅÛ °ü¸®ÀÚ¿¡ ÀÇÇؼ­ ±¸¼ºµÇ°í, °ü¸®µÈ´Ù. lp ¸í·É¾î´Â ÇÁ¸°Æ® 󸮿¡ ¿µÇâÀ» ³¢Ä¡´Â ¸î°¡Áö ¿É¼ÇµéÀ» Á¦°øÇÑ´Ù. ¿¹¸¦µé¸é -q ¿É¼ÇÀº ÇÁ¸°Æ® ¿ä±¸¿¡´ëÇÑ Ã³¸® ¿ì¼± ¼øÀ§¸¦ ¹Ù²Û´Ù. ¿ì¼± ¼øÀ§ °ªÀº ÃÖ°í 0ºÎÅÍ ÃÖÀú 39±îÁö¸¦ ºÎ¿©ÇÒ ¼ö ÀÖ´Ù. ¿ì¼± ¼øÀ§ Á¦ÇÑÀº ½Ã½ºÅÛ °ü¸®ÀÚ¿¡ ÀÇÇؼ­ »ç¿ëÀÚ¿¡°Ô ÇÒ´çµÈ´Ù. ¸¹ÀÌ »ç¿ëµÇ¾îÁö´Â lp ¸í·É¾îÀÇ ¿É¼ÇÀº ´ÙÀ½°ú °°´Ù. ( ¿É¼Ç ) -d printer ÁöÁ¤ÇÑ printer ¶Ç´Â ÁöÁ¤ÇÑ printer class·Î (´Ù¼öÀÇ ÇÁ¸°ÅÍÁß ¸î°³ÀÇ ÇÁ¸°Å͸¦ ÇϳªÀÇ ±×·ìÀ¸·Î ¹­¾î ÂüÁ¶ÇÒ ¼ö ÀÖµµ·Ï °ü¸®ÀÚ°¡ ºÎ¿©ÇÑ ±×·ìÀ̸§À» class¶ó ÇÑ´Ù. ) ÇÁ¸°Æ®¸¦ ÇÒ °ÍÀ» Áö½ÃÇÑ´Ù. -f form ½Ã½ºÅÛ¿¡ »çÀü Á¤ÀǵǾî ÀÖ´Â ÇÁ¸°Æ® ¾ç½ÄÁß ÁöÁ¤ÇÑ formÀ¸·Î ÇÁ¸°Æ®¸¦ ¼öÇàÇÑ´Ù. -m ÇÁ¸°Æ®°¡ ¿Ï·áµÈ ÈÄ¿¡ »ç¿ëÀÚ¿¡°Ô ¸ÞÀÏÀ» ÅëÇØ Å뺸ÇÑ´Ù. -n number ÇÁ¸°Æ®ÇÒ ºÎ¼ö¸¦ ÁöÁ¤ÇÑ´Ù. -q number ÇÁ¸°Æ® ¿ä±¸¿¡´ëÇÑ Ã³¸® ¿ì¼± ¼øÀ§¸¦ ÇÒ´çÇÑ´Ù. -t title banner ÆäÀÌÁö¸¦ ÇÁ¸°Æ® ÇÑ´Ù. -w ÇÁ¸°Æ®ÈÄ¿¡ Å͹̳ηΠ¿Ï·á ¸Þ¼¼Áö¸¦ Ç¥½ÃÇÑ´Ù. ( ¿¹Á¦ ) ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ statsfileÀÇ ³»¿ëÀ» 5ºÎ ÇÁ¸°Æ®ÇÏ°í, ¦¢$lp -wn5 report/statsfile ¦¢ ¿Ï·áÈÄ ´Ü¸»¿¡ ¿Ï·á ¸Þ¼¼Áö¸¦ ¦¢request id is lp00-54 ( 1 file ) ¦¢ ÇÁ¸°Æ® ÇÑ´Ù. ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ laser¶ó´Â ÇÁ¸°ÅÍ·Î memo, file1 ¦¢ $lp -md laser memo file1 ¦¢ À̶ó´Â È­ÀÏÀ» ÇÁ¸°Æ® ÇÏ°í, ¸ÞÀÏ·Î ¦¢ request id is laser-55 ( 2 files ) ¦¢ ¿Ï·á¸¦ Å뺸ÇÑ´Ù. ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ======================================================================== ´ÙÀ½ °­ÀÇ¿¡¼­´Â È­ÀÏ °ü¸® ¸í·ÉÁß ÇÁ¸°ÅÍ °ü·Ã ¸í·É¾î¿¡ ´ëÇØ °è¼ÓÇÏ¿© ¼³¸í µå¸®°Ú½À´Ï´Ù. ------------------------------------------------------------------------ #30 À¯´Ï½Ã½º (adunis2 ) È­ÀÏ ÇÁ¸°Æ® Á¦¾î ¸í·É II: lpstat, ... 02/17 22:25 221 line È­ÀÏ ÇÁ¸°Æ® Á¦¾î ¸í·É : lpstat, cancel, disable, enable --------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. --------------------------------------------------------------------- °­ÀǸ¦ ½ÃÀÛÇϱ⿡ ¾Õ¼­ À̹ø¿¡ ¼³¸íµÇ´Â ¸í·Á¾îµéÀ» ¼³¸íÇϱâ À§ÇØ »ç¿ëµÇ´Â ¸î°¡Áö ¿ä¾î¿¡ ´ëÇؼ­ ¸ÕÀú ¼³¸íÇÏ°íÀÚ ÇÑ´Ù. 1)µðÆúÆ® ÇÁ¸°ÅÍ( Default printer ) Åë»ó ÇϳªÀÇ À¯´Ð½º ½Ã½ºÅÛ¿¡´Â Çϳª ÀÌ»óÀÇ ÇÁ¸°ÅÍ°¡ ¿î¿µµÇ´Âµ¥, ÀÌ·± »óȲ¿¡¼­ »ç¿ëÀÚ°¡ ÇÁ¸°ÅÍ·Î Ãâ·ÂÀ» Çϱâ À§Çؼ±, ½Ã½ºÅÛ¿¡ ±¸¼ºµÇ¾î ÀÖ´Â ÇÁ¸°ÅÍÁß ¾î´À ÇÁ¸°Å͸¦ »ç¿ëÇÒ °ÍÀÎÁö¸¦ ÁöÁ¤ÇØ¾ß ÇÑ´Ù. ±×·¯³ª ¸Å¹ø ÇÁ¸°Æ®¸¦ ÇÒ ¶§¸¶´Ù ÇÁ¸°Å͸¦ ÁöÁ¤ÇÑ´Ù´Â °ÍÀº ²Ï ¹ø°Å·Î¿î ÀÏÀÏ °ÍÀ̸ç, »ç¿ëÀÚ°¡ ÇÁ¸°Æ® ¿ä±¸¸¦ ³¾¶§ ÇÁ¸°Å͸¦ ÁöÁ¤ÇÏÁö ¾Ê´Â ½Ç¼öµµ ¸¹À» °ÍÀÌ´Ù. µû¶ó¼­ À¯´Ð½º¿¡¼­´Â »ç¿ëÀÚ°¡ ÇÁ¸°Å͸¦ ÁöÁ¤ÇÏÁö ¾Ê¾ÒÀ»¶§ »ç¿ëµÉ ÇÁ¸°Å͸¦ ¼±¾ðÇÒ ¼ö ÀÖ´Â ±â´ÉÀ» °ü¸®ÀÚ¿¡°Ô ºÎ¿©ÇÑ´Ù. À̶§ °ü¸®ÀÚ°¡ ÁöÁ¤ÇÑ ÇÁ¸°Å͸¦ µðÆúÆ® ÇÁ¸°ÅͶó ÇÑ´Ù. 2)Æû(form)°ú ÈÙ(wheel) ÆûÀ̶õ ½Ã½ºÅÛ»ó¿¡ ±¸¼ºµÈ ÇÁ¸°ÅÍ¿¡ »ç¿ë °¡´ÉÇÑ, ÅؽºÆ® ¶Ç´Â µµÇüÀÌ ÀÌ¹Ì ÇÁ¸°Æ®µÇ¾î ÀÖ´Â Á¾À̸¦ ÀÏÄ´´Ù. ¿¹¸¦µé¸é ÀüÈ­ ¿ä±Ý °íÁö¼­, ¼¼±Ý °íÁö¼­¿Í °°Àº °ÍÀÌ´Ù. ½Ã½ºÅÛ °ü¸®ÀÚ´Â »õ·Î¿î ÆûÀÇ(Áï; ¾ç½Ä) ÇÁ¸°Æ® ¿ëÁö¸¦ »ç¿ëÇÏ´Â ÇÁ¸°Æ® ÀÛ¾÷À» ¼öÇàÇϱâ À§Çؼ­, »çÀü¿¡ ½Ã½ºÅÛ¿¡ »ç¿ëÇÒ ÇÁ¸°ÅÍ ¿ëÁö¿¡ ´ëÇÑ Æ¯¼ºÀ» ¼±¾ðÇØ ÁÖ¾î¾ß ÇÑ´Ù. ´ë·« 9°¡ÁöÀÇ Æ¯¼ºÀ» Á¤ÀÇÇϰԵǴµ¥, ±×°ÍÀº ÆäÀÌÁö ±æÀÌ, ÆäÀÌÁö Æø, ÆäÀÌÁö ¼ö, ÇàÇÇÄ¡, ¹®ÀÚ ÇÇÄ¡, ¹®ÀÚ set, ¸®º» »ö»ó, ÁÖ¼®(comment), Á¤·Ä Çü½Ä µîÀÌ´Ù. »ç¿ëÀÚ°¡ ÇÁ¸°Æ® ¿ä±¸¸¦ ³»¸±¶§, ÀÌ·¸°Ô »çÀü¿¡ ¼±¾ðµÈ ÆûÀ» ÁöÁ¤ÇÏ°Ô µÇ¸é LP Print Servie´Â Ãâ·Â Çü½ÄÀ» ÀÌ ÆûÀ¸·Î ¸ÂÃß¾î Ãß·ÂÀ» ÇØÁÖ°Ô µÈ´Ù. ÈÙÀ̶õ ÇÁ¸°ÅÍ¿¡ Ãâ·ÂÇÒ ÅؽºÆ®µéÀÇ ¹®ÀÚ ÇüŸ¦ ³ªÅ¸³½´Ù. À̸¦ Á¤È®È÷ ÀÌÇØÇϱâ À§Çؼ±, º¼ ŸÀڱ⿡¼­ »ç¿ëÇÏ´Â È°ÀÚ°¡ »çÀü¿¡ Á¶°¢µÇ¾î ÀÖ´Â º¼À» ¿¬»óÇÏ¸é µÈ´Ù. 1. ÇÁ¸°ÅÍ »óÅ ȮÀÎ :lpstat lpstat : LP Print ServiceÀÇ »óŸ¦ Ç¥½ÃÇÑ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ lpstat [-option] ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ lpstat ¸í·É¾î´Â ÇÁ¸°ÅÍ Å¥(SPOOL)ÀÇ »óÅÂ¿Í LP SchedulerÀÇ »óÅÂ, µðÆúÆ® ½Ã½ºÅÛ ÇÁ¸°ÅÍ, ÇöÀç »ç¿ë °¡´ÉÇÑ ÇÁ¸°Å͵éÀÇ Device È­Àϵé, °¡¿ëÇÑ ÇÁ¸°Å͵鿡 ´ëÇؼ­ Printer Scheduler°¡ ÇÁ¸°Æ® ¿ä±¸¸¦ ¹Þ¾ÆµéÀÌ°í ÀÖ´Â °æ¿ì¿¡, ÇÁ¸°ÅÍ°¡ ¿Â¶óÀÎÀÎÁö ¿ÀÇÁ¶óÀÎÀÎÁö¿Í ÇÁ¸°ÅÍ Å¥³»ÀÇ ÇÁ¸°Æ® ¿ä±¸µé°ú °°Àº LP Print service¿¡ °ü·ÃµÈ ±âŸ Á¤º¸µéÀ» Ç¥½ÃÇÑ´Ù. ¿É¼Ç¾øÀÌ lpstat ¸í·É¾î´Â ¸í·É¾î¸¦ ÀÔ·ÂÇÑ »ç¿ëÀÚÀÇ ÇÁ¸°Æ® ¿ä±¸µéÀ» Ç¥½ÃÇÑ´Ù. lpstat ¸í·É¾î´Â LP Print Service¿¡ °ü·ÃµÈ °¢°¢ÀÇ Á¤º¸¸¦ Ç¥½ÃÇϱâ À§ÇÑ ¿É¼ÇµéÀ» Á¦°øÇÑ´Ù. ¸¹ÀÌ »ç¿ëµÇ´Â ¿É¼ÇµéÀº ´ÙÀ½°ú °°´Ù. ( ¿É¼Ç ) -a ptr_list ÁöÁ¤ÇÑ ptr_list³»ÀÇ ÇÁ¸°Å͵鿡 ¿ä±¸µÈ ÇÁ¸°ÅÍ ¿ä±¸µéÀ» Ç¥½ÃÇÑ´Ù. -d µðÆúÆ® ÇÁ¸°ÅÍ À̸§À» Ç¥½ÃÇÑ´Ù. -f form_list ÁöÁ¤ÇÑ form_list³»ÀÇ À¯È¿ÇÑ Æû(form)À» °ËÁõÇÑ´Ù. -p ptr_list ÁöÁ¤ÇÑ ptr_list³»ÀÇ ÇÁ¸°ÅÍ »óŸ¦ Ç¥½ÃÇÑ´Ù. -r ÇÁ¸°Æ® ½ºÄÉÁì·¯ÀÇ »óŸ¦( running ¶Ç´Â not running ) Ç¥½ÃÇÑ´Ù. -s µðÆúÆ® ÇÁ¸°ÅÍ, ¸ðµç ÇÁ¸°ÅÍ, »ç¿ë °¡´ÉÇÑ Æû(form), ¹®ÀÚ set, ÇÁ¸°Æ® ÈÙ(wheel)µî°ú °°Àº ÇÁ¸°Æ® ½ºÄÉÁì·¯ÀÇ ¿ä¾à Á¤º¸¸¦ Ç¥½ÃÇÑ´Ù. -t ÇÁ¸°Æ®¿¡ °ü·ÃµÈ ¸ðµç Á¤º¸¸¦ Ç¥½ÃÇÑ´Ù. -u user ÁöÁ¤ÇÑ »ç¿ëÀÚ¿¡ ÀÇÇÑ ÇÁ¸°Æ® ¿ä±¸ÀÇ »óŸ¦ Ç¥½ÃÇÑ´Ù. -v ptr_list ptr_list³»¿¡ µé¾îÀÖ´Â ÇÁ¸°ÅÍÀÇ µð¹ÙÀ̽º È­ÀϸíÀ» Ç¥½ÃÇÑ´Ù. ( ¿¹Á¦ ) ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$lpstat ¦¢ ¦¢lp00-33 user1 1181 Sep 16 00:43 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¸í·É¾î¸¦ ÀÔ·ÂÇÏ°í ÀÖ´Â »ç¿ëÀÚ°¡ ¼öÇàÇÑ ÇÁ¸°Æ® ¿ä±¸µéÀ» Ç¥½ÃÇÑ´Ù. Ãâ·ÂµÈ ³»¿ëÀº ¼øÂ÷ÀûÀ¸·Î ÇÁ¸°Æ® ¿ä±¸ ½Äº°ÀÚ, ÇÁ¸°Æ® ¿ä±¸¸¦ ¿ä±¸ÇÑ »ç¿ëÀÚÀÇ ·Î±×ÀÎ id, ÇÁ¸°Æ® È­ÀÏÀÇ Å©±â, ÇÁ¸°Æ® ¿ä±¸¸¦ ³»¸° ½Ã°£ µîÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$lpstat -u user2 ¦¢ ¦¢lp00-32 user2 144 Sep 16 00:43 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ƯÁ¤ »ç¿ëÀÚ°¡ ³»¸° ÇÁ¸°Æ® ¿ä±¸ Á¤º¸¸¦ È®ÀÎÅ° À§ÇØ -u ¿É¼ÇÀ» »ç¿ëÇÑ ¿¹ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $lpstat -r ¦¢ ¦¢ scheduler is running ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ LP Print ServiceÀÇ ÇÁ¸°ÅÍ ½ºÄÉÁì·¯ÀÇ »óŸ¦ È®ÀÎÅ° À§ÇØ -r ¿É¼ÇÀ» »ç¿ëÇÑ ¿¹ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$lpstat -t ¦¢ ¦¢scheduler is running. ¦¢ ¦¢system default destination: lp00 ¦¢ ¦¢device for lp00: /dev/term/02 ¦¢ ¦¢device for lp01: /dev/term/02 ¦¢ ¦¢lp00 accepting requests since Mon Sep 16 08:08:20 EDT 1991 ¦¢ ¦¢lp01 accepting requests since Mon Sep 16 08:38:34 EDT 1991 ¦¢ ¦¢printer lp00 is idle.\ ¦¢ ¦¢ enabled since Mon Sep 16 08:46:50 EDT 1991. available. ¦¢ ¦¢printer lp01 is idle. ¦¢ ¦¢ enabled since Mon Sep 16 08:38:45 EDT 1991. available. ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ LP Print ServiceÀÇ Àü¹ÝÀûÀÎ »óȲÀ» È®ÀÎÇϱâ À§ÇØ -t ¿É¼ÇÀ» »ç¿ëÇÑ ¿¹ÀÌ´Ù. Ãâ·Â ³»¿ëÁß ¸î°¡Áö¸¦ »ìÆ캸¸é, µðÆúÆ® ÇÁ¸°ÅÍ À̸§¹× ½Ã½ºÅÛ¿¡ ±¸¼ºµÇ¾î ÀÖ´Â ÇÁ¸°Å͵é°ú ±×µéÀÌ »ç¿ëÇÏ´Â µð¹ÙÀ̽º È­Àϸí, ±×¸®°í °¢°¢ ÇÁ¸°ÅÍ¿¡ ´ëÇÑ Á¤º¸µîÀÌ Ç¥½ÃµÇ¾î ÀÖ´Ù. 2. ÇÁ¸°Æ® ¿ä±¸ Ãë¼Ò : cancel cancel ÁöÁ¤µÈ ÇÁ¸°ÅÍ ¿ä±¸¸¦ Ãë¼ÒÇÑ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ cancel [id] [printer] ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ cancel ¸í·É¾î´Â ÇÁ¸°ÅÍ Å¥¿¡ µî·ÏµÇ¾î ÀÖ´Â ÇÁ¸°Æ® ¿ä±¸¸¦ Á¦°ÅÇÑ´Ù. ±×·¯³ª cancel ¸í·É¾î´Â ÀÌ¹Ì ÇÁ¸°Æ®°¡ °³½ÃµÈ ¿ä±¸¿¡ ´ëÇؼ­´Â ¸í·É¾î¸¦ ¼öÇàÇÏÁö ¾Ê´Â´Ù. Å¥·ÎºÎÅÍ Çϳª ¶Ç´Â ±× ÀÌ»óÀÇ ÇÁ¸°Æ® ¿ä±¸¸¦ »èÁ¦Çϱâ À§Çؼ­´Â cancel ¸í·É¾î»ó¿¡ º¹¼ö°³ÀÇ ÇÁ¸°Æ® ¿ä±¸ ½Äº°ÀÚ¸¦ ÁöÁ¤ÇÑ´Ù. ¶ÇÇÑ Æ¯Á¤ ÇÁ¸°ÅÍ¿¡ µî·ÏµÈ ¸ðµç ÇÁ¸°Æ® ¿ä±¸¸¦ »èÁ¦Çϱâ À§Çؼ­´Â ÇÁ¸°ÅÍ ¸íÀ» cancel ¸í·É¾îÀÇ ÀÎÀÚ·Î ÁöÁ¤ÇÑ´Ù. ( ¿É¼Ç ) ¾øÀ½ ( ¿¹Á¦ ) ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ lp00-33À̶ó´Â ¦¢ $cancel lp00-33 ¦¢ ÇÁ¸°Æ® ¿ä±¸¸¦ ¦¢ request "lp00-33" cancelled ¦¢ Ãë¼ÒÇÑ´Ù. ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ÇѹøÀÇ cancel ¦¢ $cancel lp01-45 lp01-46 ¦¢ ¸í·É¾î·Î º¹¼ö°³ÀÇ ¦¢ request "lp01-45" cancelled ¦¢ ÇÁ¸°Æ® ¿ä±¸¸¦ ¦¢ request "lp01-46" cancelled ¦¢ Ãë¼ÒÇÑ´Ù. ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ laser¶ó´Â ÇÁ¸°ÅÍ¿¡ ¦¢ $cancel laser ¦¢ ¿ä±¸µÈ ¸ðµç ÇÁ¸°Æ® ¿ä±¸¸¦ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ Ãë¼ÒÇÑ´Ù. 3. ÇÁ¸°ÅÍÀÇ »ç¿ëÁßÁö : disable disable : ÁöÁ¤ÇÑ ÇÁ¸°Å͸¦ »ç¿ë ÁßÁöÇÑ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ disable [-option] printer(s) ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ disable ¸í·É¾î´Â ÁöÁ¤ÇÑ ÇÁ¸°Å͸¦ ¿ÀÇÁ¶óÀÎ »óÅ·Π¸¸µé°í, ÇÁ¸°ÅÍÀÇ ÀÛµ¿À» ÁßÁöÇÑ´Ù. ÇöÀç ÇÁ¸°Æ® µÇ°íÀÖ´Â ¿ä±¸ ¶ÇÇÑ ÁßÁöµÈ´Ù( -c¿É¼Ç ÀÌ Àû¿ëµÈ´Ù. ). ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$disable lp00 ¦¢ ¦¢printer "lp00" now disabled ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ -w ¿É¼ÇÀ» ÁöÁ¤ÇÒ °æ¿ì¿¡´Â ÇÁ¸°Å͸¦ ÁßÁö½ÃÅ°±â Àü¿¡ ÇöÀç ÇÁ¸°Æ®¸¦ ¼öÇàÇÏ°í ÀÖ´Â ¿ä±¸°¡ ¿Ï·áµÉ ¶§±îÁö ±â´Ù¸°´Ù. lpstat ¸í·É¾î´Â ÇÁ¸°ÅÍÀÇ ÇöÀç »óŸ¦ È®ÀÎÇϴµ¥ À¯¿ëÇÏ°Ô »ç¿ëÇÒ ¼ö ÀÖ´Ù. lpstat ¸í·É¾î´Â »ç¿ëÁßÁöµÈ ÇÁ¸°ÅÍ¿¡´ëÇØ »çÀü Á¤ÀǵǾî ÀÖ´Â Çü½ÄÀÇ ¸Þ¼¼Áö¸¦ Ç¥½ÃÇÑ´Ù. ¸¸¾à »ç¿ëÀÚ°¡ ÇÁ¸°ÅÍ°¡ »ç¿ëÁßÁö µÇ¾îÀÖ´Â ÀÌÀ¯¸¦ Ç¥½ÃÇÏ°íÀÚ ÇÑ´Ù¸é, disable -r ¸í·ÉÀ» ÀÌ¿ëÇÏ¿© ÀçÁöÁ¤ÇÒ ¼ö ÀÖ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$disable -r "Clearing paper jam." lp01 ¦¢ ¦¢printer "lp01" now disabled ¦¢ ¦¢$lpstat -t ¦¢ ¦¢scheduler is running ¦¢ ¦¢system default destination: lp01 ¦¢ ¦¢device for lp01: /dev/term/02 ¦¢ ¦¢lp01 accepting requests since Mon Sep 16 09:38:34 EDT 1991 ¦¢ ¦¢printer lp01 disabled since Wed Sep 18 16:38:45 EDT 1991. available.¦¢ ¦¢ Clearing paper jam. ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ »ç¿ëÁßÁöµÈ ÇÁ¸°Å͵éÀº enable ¸í·É¾î¸¦ ÅëÇØ »ç¿ë °³½ÃÇÒ¼ö ÀÖ´Ù. ( ¿É¼Ç ) -r reason lpstatÀÇ Ãâ·Â»ó¿¡ Ç¥½ÃµÇ´Â ÇÁ¸°ÅÍÀÇ »ç¿ëÁßÁö ÀÌÀ¯¸¦ ¼±¾ðÇÑ´Ù. -w ÇÁ¸°Å͸¦ »ç¿ëÁßÁö ÇϱâÀü¿¡ ÇöÀçÀÇ ÇÁ¸°Æ® ÀÛ¾÷À» ³¡³½´Ù. 4. »ç¿ë ÁßÁöµÈ ÇÁ¸°ÅÍÀÇ »ç¿ë Àç°³ : enable enable ÁöÁ¤ÇÑ ÇÁ¸°Å͸¦ »ç¿ë Àç°³ÇÑ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ enable printer(s) ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ enable ¸í·É¾î´Â ÁöÁ¤ÇÑ ÇÁ¸°ÅÍ·Î ÇÏ¿©±Ý ÇÁ¸°Æ® ¿ä±¸¸¦ ó¸®Çϵµ·Ï ÇÑ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $enable lp00 ¦¢ ¦¢ printer "lp00" now enabled ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ --------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­´Â ƯÁ¤ È­ÀÏÀÇ À§Ä¡¸¦ È®ÀÎÇϱâ À§ÇØ »ç¿ëÇÏ´Â find ¸í·É¾î¿¡ ´ëÇؼ­ ¼³¸íÇÕ´Ï´Ù. --------------------------------------------------------------------------- #31 À¯´Ï½Ã½º (adunis2 ) È­ÀÏ °Ë»ö ¸í·É¾î: find 02/18 09:55 96 line È­ÀÏÀÇ À§Ä¡ °Ë»ö ¸í·É : find --------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. --------------------------------------------------------------------- 1. find ¸í·É¾î ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ find ´ë»ó_µð·ºÅ丮 Ç¥Çö½Ä ¦¢ ¦¢ ( °Ë»ö_Á¶°Ç ó¸®_Çü½Ä ) ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ find ¸í·É¾î´Â ¸í·É¾î»ó¿¡ ÁöÁ¤ÇÑ °Ë»öÁ¶°Ç°ú ÀÏÄ¡ÇÏ´Â È­ÀϵéÀ» ÁöÁ¤ÇÑ µð·ºÅ丮³»¿¡¼­ °Ë»öÇÑ ÈÄ, ÁöÁ¤µÈ ó¸®_Çü½ÄÀ» ¼öÇàÇÑ´Ù. ¸¸ÀÏ °Ë»öÈÄ Ã³¸® Çü½ÄÀ» ÁöÁ¤ÇÏÁö ¾ÊÀ» °æ¿ì¿¡´Â ¸í·É¾î Ãâ·ÂÀ» Ç¥½ÃÇÏÁö ¾Ê´Â´Ù. find ¸í·É¾î¸¦ ±â¼úÇÔ¿¡ À־, Ç¥Çö½Ä¿¡ º¹¼ö°³ÀÇ °Ë»ö_Á¶°Ç°ú º¹¼ö°³ÀÇ ´ë»ó_µð·ºÅ丮¸¦ ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $find /home/user1 /home/user2 -name '*.rpt' -print ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ find ¸í·É¾î»ó¿¡¼­ Ư¼ö¹®ÀÚµéÀ» »ç¿ëÇÒ °æ¿ì¿¡´Â ½©·ÎºÎÅÍ ¹ø¿ªµÇ´Â °ÍÀ» ¸·°í, find ¸í·É¾î·Î ÇÏ¿©±Ý Ư¼ö ¹®ÀÚµéÀ» ó¸®Çϵµ·Ï ÇϱâÀ§ÇØ ¹Ýµå½Ã º¸È£¹®ÀÚ·Î(',",\) ¹­¾îÁÖ¾î¾ß¸¸ ÇÑ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ Ư¼ö¹®ÀÚ¸¦ »ç¿ëÇϱâ À§ÇØ, ¦¢ $find . -name '*.sh' -print ¦¢ º¸È£¹®ÀÚ¸¦ »ç¿ëÇÏ¿© ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¹­¾îÁÖ´Â °ÍÀ» º¸¿©ÁØ´Ù. find ¸í·É¾î´Â °Ë»ö_Á¶°ÇÀ» ±âÁØÀ¸·ÎÇÏ¿© ´ë»ó_µð·ºÅ丮³»ÀÇ È­ÀϵéÀ» °Ë»çÇÏ°í, ÁöÁ¤ÇÑ Ã³¸®_Çü½Ä¿¡ µû¶ó¼­ Ãâ·ÂÀ» »ý¼ºÇÑ´Ù. ¿¹¸¦µé¸é, find /home -user david -print¶ó°í ÁöÁ¤Çϸé, /home µð·ºÅ丮 ³»¿¡¼­ ¼ÒÀ¯ÀÚ°¡(Áï, owner) davidÀÎ È­ÀϵéÀ» °Ë»öÇÏ¿© °Ë»öµÈ È­Àϵ鿡 ´ëÇÑ Àý´ë °æ·Î¸íÀ» È­¸é»ó¿¡ Ç¥½ÃÇÑ´Ù. ó¸® Çü½ÄÀ» ÁöÁ¤ÇÏÁö ¾ÊÀ» °æ¿ì¿¡´Â ¾Æ¹« ÀÛ¾÷µµ ¼öÇàÇÏÁö ¾ÊÀ½À¸·Î ¹Ýµå½Ã, ¸íÈ®ÇÏ°Ô ÁöÁ¤Çؾ߸¸ ÇÑ´Ù. º¹¼ö°³ÀÇ °Ë»ö_Á¶°ÇÀ» ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù. °ø¹éÀ¸·Î ±¸º°µÇ¾î ³ª¿­µÈ º¹¼ö°³ÀÇ °Ë»ö_Á¶°ÇÀº ³í¸®°ö(AND) ¿¬»êÀÌ ¼öÇàµÇ¾î Áö¹Ç·Î, ³ª¿­µÈ ¸ðµç Á¶°ÇÀ» ¸¸Á·ÇÏ´Â È­ÀϵéÀÌ °Ë»öµÈ´Ù. ¿¹¸¦µé¸é, find /home -user david -type d -print ¸í·É¾î´Â ¼ÒÀ¯ÀÚ°¡ davidÀÎ µð·ºÅ丮µéÀ» ã¾Æ¼­ ÇÁ¸°Æ® ÇÑ´Ù. ¶ÇÇϳªÀÇ ¿¹¸¦µé¸é ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $find . -atime +30 -atime -60 -ok rm {} \; ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ 30ÀÏ ÀÌÀü¿¡¼­ 60ÀÏ ÀÌÀü¿¡ ¾ï¼¼½ºµÈ È­ÀÏÀ» ã¾Æ rm(È­ÀÏ »èÁ¦)½ÃÅ°¶ó´Â ¿¹ÀÌ´Ù. À̶§ +30, -60ÀÇ Çü½ÄÀ» ÁÖ¸ñÇϱ⠹ٶõ´Ù. º¹¼ö°³ÀÇ °Ë»ö_Á¶°ÇÀÌ -o¸¦ »ç¿ëÇÏ¿© ³ª¿­µÇ¸é, ÀÌ´Â ³í¸®ÇÕ(OR) ¿¬»êÀ» ¼öÇàÇÏ°Ô µÇ¾î, ÁöÁ¤µÈ °Ë»ö_Á¶°ÇÁß ¾î´À Çϳª¸¦ ¸¸Á·ÇÏ´Â È­ÀϵéÀÌ °Ë»öµÈ´Ù. ¿¹¸¦µé¸é, find . \( -user david -o -user john \) -print¶ó°í ÁöÁ¤ÇßÀ» °æ¿ì¿¡´Â, ¼ÒÀ¯ÀÚ°¡ davidÀ̰ųª johnÀÎ È­ÀϵéÀ» ã¾Æ È­¸é»ó¿¡ Ãâ·ÂÇÑ´Ù. ÀÌ ¿¹¿¡¼­ ( (±×·ìÈ­ Ư¼ö¹®ÀÚ) ¶ó´Â Ư¼ö¹®ÀÚ°¡ \¸¦ ÅëÇØ º¸È£µÇ°í ÀÖ´ÂÁ¡À» ÁÖ¸ñÇϱ⠹ٶõ´Ù. ÁöÁ¤ÇÑ °Ë»ö_Á¶°Ç°ú ¹Ý´ëÀÇ(Áï; ºÎÁ¤) È­ÀϵéÀ» °Ë»öÇϱâ À§Çؼ­´Â !¸¦ °Ë»ö_Á¶°Ç¿¡ ÁöÁ¤ÇÏ¸é µÈ´Ù. ´ÙÀ½Àº find ¸í·É¾î¿¡¼­ Á¦°øÇÏ´Â °Ë»ö_Á¶°Ç°ú ó¸®_Çü½ÄµéÀÌ´Ù. (( °Ë»ö_Á¶°Ç )) -atime n n ÀÏ ÀÌÀü¿¡ ¾ï¼¼½ºµÇ¾ú´ø È­Àϵé -follow ½Éº¼¸¯ ¸µÅ©µÈ È­Àϵé -links n ¸µÅ©(link) ¼ö°¡ n°³ÀÎ È­Àϵé -mtime n n ÀÏ ÀÌÀü¿¡ º¯°æµÈ È­Àϵé -name pattern patternÀ̶ó´Â È­ÀϸíÀ» °®°íÀÖ´Â È­Àϵé -perm nnn Á¢±Ù ±ÇÇÑÀÌ nnnÀÎ È­Àϵé -prune ÁöÁ¤ÇÑ ´ë»ó_µð·ºÅ丮³»¿¡¼­´Â °Ë»öÇÏÁö ¾Ê´Â´Ù. -size n n ºí·°¸¸Å­ÀÇ Å©±â¸¦ °®´Â È­ÀÏÀ» °Ë»öÇÑ´Ù. -type char char·Î ÁöÁ¤ÇÑ È­ÀÏ Á¾·ù¸¦ °Ë»öÇÑ´Ù. ( f´Â È­ÀÏ, d´Â µð·ºÅ丮 È­ÀÏÀ» ÀǹÌÇÑ´Ù. ) -user logname ¼ÒÀ¯ÀÚ°¡ lognameÀÎ È­Àϵé (( ó¸®_Çü½Ä )) -print È­ÀÏÀÇ Àý´ë °æ·Î¸íÀ» È­¸é»ó¿¡ Ç¥½ÃÇÑ´Ù. -exec cmd {} \; °Ë»öµÈ È­Àϵ鿡 ´ëÇØ {} ÀÌÀü¿¡ ÁöÁ¤µÈ cmd¸¦ ¼öÇàÇÑ´Ù. °Ë»öµÈ È­Àϵ鿡 ´ëÇØ ÁöÁ¤ÇÑ ¸í·É¾îµéÀ» ÀÏ°ýó¸® ÇÏ´Â Çü½ÄÀ¸·Î ÀÛ¾÷À» ¼öÇàÇÑ´Ù. -ok cmd {} \; °Ë»öµÈ È­Àϵ鿡 ´ëÇØ {} ÀÌÀü¿¡ ÁöÁ¤µÈ cmd¸¦ ¼öÇàÇÑ´Ù. °Ë»öµÈ È­ÀÏµé °¢ÀÚ¿¡ ´ëÇØ ¸í·É¾î ¼öÇà ¿©ºÎ¸¦ ¹¯´Â ÇÁ·ÒÇÁÆ®¸¦ Ç¥½ÃÇÏ´Â Çü½ÄÀÇ ´ëÈ­½ÄÀ¸·Î ÀÛ¾÷À» ÁøÇàÇÑ´Ù. --------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­´Â È­Àϳ»ÀÇ ³»¿ë¿¡¼­ ÁöÁ¤ÇÑ patternÀÇ ¹®ÀÚ¿­À» ã±âÀ§ÇØ »ç¿ëÇÏ´Â grep ¸í·É¾î¿¡ ´ëÇؼ­ ¼³¸íÇÕ´Ï´Ù. --------------------------------------------------------------------------- #32 À¯´Ï½Ã½º (adunis2 ) È­ÀÏ¿¡¼­ÀÇ ¹®ÀÚ¿­ °Ë»ö: grep 02/19 14:49 92 line È­ÀÏ¿¡¼­ ƯÁ¤ÀÇ ¹®ÀÚ¿­ °Ë»ö ¸í·É : grep --------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. --------------------------------------------------------------------- 1. grep ¸í·É¾î ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ grep [-option] 'pattern' file(s) ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ grep ¸í·É¾î´Â ÁöÁ¤ÇÑ patternÀÇ ¹®ÀÚ¿­¿¡ ´ëÇØ, Çϳª ¶Ç´Â ±× ÀÌ»óÀÇ È­ÀÏ¿¡¼­ ¶óÀÎ ´ÜÀ§·Î °Ë»öÇÑ´Ù. ¶ÇÇÑ ¿É¼Ç¿¡ ÀÇÇØ ÁöÁ¤µÈ ó¸® ÇüÅ´ patternÀÌ µé¾î ÀÖ´Â °¢ ¶óÀκ°·Î ½ÇÇàµÈ´Ù. Ư¼ö¹®ÀÚ¸¦ ÀÌ¿ëÇÏ¿© patternÀ» ÁöÁ¤ÇÒ °æ¿ì¿¡´Â ½©ÀÌ ºÐ¼®ÇÏ´Â °ÍÀ» ¸·°í, grep ¸í·É¾î¿¡ Ư¼ö¹®ÀÚ¸¦ Àü´ÞÇϱâ À§ÇØ ¹Ýµå½Ã º¸È£¹®ÀÚ¸¦ »ç¿ëÇÏ¿© ¹­¾îÁÖ¾î¾ß ÇÑ´Ù. grep ¸í·É¾î¿¡¼­ ÀÚÁÖ »ç¿ëµÇ´Â Ư¼ö¹®ÀÚµéÀº ´ÙÀ½°ú °°´Ù. . Çѹ®ÀÚ¿Í ´ëÄ¡ ( ¿¹¸¦µé¸é f.t¶óÇϸé, ÃÑ 3¹®ÀÚ·Î ±¸¼ºµÇ¸ç, °¡¿îµ¥ ±ÛÀÚ°¡ ¾î´À°ÍÀÌ¶óµµ »ó°ü ¾øÀ½À» ÀǹÌÇÑ´Ù. ) [] »ç°¢°ýÈ£([])¾È¿¡ ÁöÁ¤µÈ ¹®ÀÚÁß ¾î´À ÇÑÀÚ¿Í ´ëÄ¡ ( ¿¹¸¦µé¸é f[il]t¶óÇϸé, ÃÑ 3¹®ÀÚ·Î ±¸¼ºµÇ¸ç, °¡¿îµ¥ ±ÛÀÚ°¡ iÀ̰ųª lÀÎ ¹®ÀÚ¿­À» °Ë»öÇÑ´Ù. ) * 0°³ ¶Ç´Â ±× ÀÌ»óÀÇ ¹®ÀÚµé°ú ´ëÄ¡ (¿¹¸¦µé¸é f*t¶óÇϸé, ft³ª fit, fiotµî óÀ½ ±ÛÀÚ°¡ fÀÌ°í ¸¶Áö¸· ±ÛÀÚ°¡ tÀÎ ¹®ÀÚ¿­À» °Ë»öÇÑ´Ù. ) ^ °¢ ¶óÀÎÀÇ Ã³À½ÀÌ ÁöÁ¤ÇÑ patternÀÎ ¶óÀε鸸À» °Ë»öÇÑ´Ù. (¿¹¸¦µé¸é ^fileÀ̶ó¸é ¶óÀÓÀÇ Ã¹ Ä®·³ºÎÅÍ fileÀ̶ó´Â ¹®ÀÚ¿­ÀÌ µé¾îÀÖ´Â ¶óÀεéÀ» °Ë»öÇÑ´Ù. ) $ °¢ ¶óÀÎÀÇ ³¡ÀÌ ÁöÁ¤ÇÑ patternÀÎ ¶óÀÎÀ» °Ë»öÇÑ´Ù. ¸¸ÀÏ grep ¸í·É¾î¿¡ º¹¼ö°³ÀÇ È­ÀÏÀ» ÁöÁ¤ÇÏ°Ô µÇ¸é, grep ¸í·É¾î´Â Ãâ·Â»ó¿¡ °¢ °Ë»öµÈ ¶óÀÎÀÇ Ã³À½¿¡ ÇØ´ç ¶óÀÎÀÌ µé¾î ÀÖ´Â È­ÀϸíÀ» Ç¥½ÃÇÏ¿© ÁØ´Ù. ÀÌ °æ¿ì -l ¿É¼ÇÀ» »ç¿ëÇϸé, °Ë»ö ¶óÀε鿡 ´ëÇØ °³°³·Î ºÎ¿©µÇ´Â È­ÀϸíÀ» È­ÀϺ°·Î ÇÑ°³¾¿¸¸À» Ç¥½ÃÇÏ°Ô ÇÒ¼ö ÀÖ´Ù. ( ¿É¼Ç ) -i ´ë,¼Ò¹®ÀÚ¸¦ ±¸º°ÇÏÁö ¾Ê´Â´Ù. -n ÁöÁ¤ÇÑ patternÀ» Æ÷ÇÔÇÏ°í ÀÖ´Â ¶óÀÎÀÇ ¶óÀιøÈ£¸¦ ÇÔ²² Ç¥½ÃÇÑ´Ù. -l º¹¼ö È­ÀÏ °Ë»ö½Ã¿¡ °Ë»ö ¶óÀεéÀ» È­ÀϺ°·Î Á¤¸®ÇÏ¿© Ç¥½ÃÇÑ´Ù. -v ÁöÁ¤ÇÑ patternÀÌ µé¾î ÀÖÁö ¾ÊÀº ¶óÀεéÀ» Ç¥½ÃÇÑ´Ù. ( ¿¹Á¦ ) <<< Input fileA >>> $cat fileA aaapatternaaa bbbPatternbbb patterncccccc $cat fileB AAAAAA BBBBBB pattern CCCCCC ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ fileA¶ó´Â È­ÀÏ¿¡¼­ patternÀ̶ó´Â ¦¢ $grep 'pattern' fileA ¦¢ ¹®ÀÚ¿­ÀÌ µé¾îÀÖ´Â ¶óÀÎÀ» °Ë»öÇÏ¿© ¦¢ aaapatternaaa ¦¢ È­¸é¿¡ Ç¥½ÃÇÑ´Ù. ¦¢ patterncccccc ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ fileA¶ó´Â È­ÀÏ¿¡¼­ patternÀ̶ó´Â ¦¢ $grep -i 'pattern' fileA ¦¢ ¹®ÀÚ¿­À» °Ë»öÇÑ´Ù. ´Ü, ´ë¼Ò¹®ÀÚ¸¦ ¦¢ aaapatternaaa ¦¢ ±¸º°ÇÏÁö ¾Ê´Â´Ù. ¦¢ bbbPatternbbb ¦¢ ¦¢ patterncccccc ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ÇöÀçÀÇ ÀÛ¾÷ µð·ºÅ丮³»ÀÇ ¸ðµç È­ÀÏ¿¡¼­ ¦¢ $grep -i 'pattern' * ¦¢ patternÀ̶ó´Â ¹®ÀÚ¿­À» °Ë»öÇÑ´Ù. ¦¢ fileA:aaapatternaaa ¦¢ ´Ü, ´ë¼Ò¹®ÀÚ¸¦ ±¸º°ÇÏÁö ¾Ê´Â´Ù. ¦¢ fileA:bbbPatternbbb ¦¢ ¦¢ fileA:patterncccccc ¦¢ ¦¢ fileB:pattern ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ÇöÀçÀÇ ÀÛ¾÷ µð·ºÅ丮³»ÀÇ ¸ðµç È­ÀÏ¿¡¼­ ¦¢ $grep '^pattern' * ¦¢ ¶óÀÎÀÇ Ã³À½ºÎÅÍ patternÀ̶ó´Â ¦¢ fileA:patterncccccc ¦¢ ¹®ÀÚ¿­ÀÌ ÀÖ´Â ¶óÀÎÀ» °Ë»öÇÑ´Ù. ¦¢ fileB:pattern ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ --------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­´Â È­ÀÏ ³»¿ëÀ» Á¤·ÄÇÏ´Â sort ¸í·É¾î¿¡ ´ëÇؼ­ ¼³¸íÇÕ´Ï´Ù. --------------------------------------------------------------------------- #33 À¯´Ï½Ã½º (adunis2 ) È­ÀÏ ³»¿ëÀÇ Á¤·Ä: sort 02/19 17:27 153 line È­ÀÏ ³»¿ëÀÇ Á¤·Ä : sort --------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. --------------------------------------------------------------------- 1. ¶óÀÎ ´ÜÀ§ÀÇ ¹®Àå Á¤·Ä ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $sort [-option] [fields] [file(s)] ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ sort ¸í·É¾î´Â ÁöÁ¤ÇÑ ÅؽºÆ® È­ÀÏÀÇ °¢ ¶óÀÎÀ» Á¤·ÄÇÑ´Ù. ¸í·É¾î ¶óÀÎ»ó¿¡ ´ë»ó È­ÀϸíÀ» ÁöÁ¤ÇÏÁö ¾ÊÀ» °æ¿ì¿¡´Â, sort ¸í·É¾î´Â Ç¥ÁØ ÀÔ·Â ÀåÄ¡ÀÎ Å͹̳ÎÀÇ Å°º¸µå·Î ºÎÅÍ ÀÔ·ÂÀ» ¹Þ¾ÆµéÀδÙ. sort ¸í·É¾î´Â Á¤·ÄÈÄÀÇ ½ÇÇà °á°ú¸¦ Ç¥ÁØ Ãâ·Â ÀåÄ¡ÀÎ Å͹̳ÎÀÇ ½ºÅ©¸°À¸·Î Ç¥½ÃÇÑ´Ù. -o ¿É¼ÇÀ» »ç¿ëÇÏ¿© ƯÁ¤ È­ÀÏÀ» ÁöÁ¤ÇÒ °æ¿ì¿¡ Ãâ·ÂÀ» ±× È­ÀÏ¿¡ ÀúÀåÇÒ ¼ö ÀÖ´Ù. º¹¼ö°³ÀÇ È­ÀÏÀ» ÁöÁ¤Çϸé, sort ¸í·É¾î´Â Á¤·ÄÀ» ½ÇÇàÇϱâ Àü¿¡ È­ÀϵéÀ» º´ÇÕÇÑÈÄ¿¡, Á¤·ÄÀ» ¼öÇàÇÑ´Ù. sort ¸í·É¾î´Â ´ÙÀ½°ú °°Àº ¼ø¼­ÀÇ ASCII (America Standard Code Information Interchange) °ªÀ» ±âÁØÀ¸·Î Á¤·ÄÇÑ´Ù. . Ư¼ö¹®ÀÚ ( period, space, return ) . ¹øÈ£ . ´ë¹®ÀÚ . ¼Ò¹®ÀÚ ÀÌ ¼ø¼­¿¡¼­ ¼ýÀÚ´Â ±×µéÀÇ ASCII °ªÀ» ±âÁØÀ¸·Î ÇÏ¿© Á¤·ÄµÈ´Ù. µû¶ó¼­ 10, 30, 200, 500, 4000ÀÇ ¼ýÀڵ鵵 10, 200, 30, 4000, 500¼øÀ¸·Î Á¤·ÄµÈ´Ù. ÀÌ °æ¿ì ¼ýÀÚµéÀ» °íÀ¯ÀÇ ¼ýÀÚ °ªÀ¸·Î Á¤·ÄÇϱâ À§Çؼ­´Â -n ¿É¼ÇÀ» ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù. ±âº»ÀûÀ¸·Î sort ¸í·É¾î´Â ù¹ø° Çʵ带 ±âÁØÀ¸·Î ¶óÀÎÀ» Á¤·ÄÇÑ´Ù. ¿©±â¼­ Çʵå¶ó ÇÔÀº °ø¹éÀ̳ª ÅÇ¿¡ÀÇÇØ ±¸º°µÇ´Â ÀÏ·ÃÀÇ ¹®ÀÚµéÀÌ´Ù. sort ¸í·É¾î´Â ¶óÀγ»ÀÇ ÀÓÀÇÀÇ Çʵ带 ´ë»óÀ¸·Î Á¤·ÄÇÒ ¼öµµ ÀÖÀ¸¸ç, °¢ ÇʵåÀÇ ±¸º° ¹®ÀÚµµ °ø¹é ¶Ç´Â ÅÇÀÌ ¾Æ´Ñ ´Ù¸¥ ¹®ÀÚ¸¦ ÁöÁ¤ÇÏ¿© »ç¿ëÇÒ ¼ö ÀÖµµ·Ï ÇØÁØ´Ù. ÀÌ ¹æ½ÄÀº Á¶±Ý ÀÖ´Ù°¡ ´Ù½Ã ¼³¸íÇÑ´Ù. ( ¿É¼Ç ) -f ´ë¼Ò¹®ÀÚ¸¦ ±¸º°ÇÏÁö ¾Ê´Â´Ù. -n ¼ýÀÚ °ªÀ» ±âÁØÀ¸·Î Á¤·ÄÇÑ´Ù. -o file ÁöÁ¤ÇÑ È­ÀÏ¿¡ Á¤·ÄµÈ Ãâ·ÂÀ» ÀúÀåÇÑ´Ù. -r Á¤·Ä ¼ø¼­¸¦ ¿ªÀ¸·Î ÇÑ´Ù. -tchar char·Î ÁöÁ¤ÇÑ ¹®ÀÚ¸¦ ÇÊµå ±¸º° ¹®ÀÚ·Î ¼±¾ðÇÑ´Ù. ( ¿¹Á¦ ) ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ << Input file >> ¦¢ $cat test ¦¢ ¦¢ package ¦¢ ¦¢ 56 ¦¢ ¦¢ box ¦¢ ¦¢ Banana ¦¢ ¦¢ 234 ¦¢ ¦¢ Pear ¦¢ ¦¢ .profile ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ test È­ÀÏÀÇ ³»¿ëÀ» Á¤·ÄÇÑ´Ù. ¦¢ $sort test ¦¢ ¿©±â¼­ À¯ÀÇÇÒ °ÍÀº ASCII Äڵ尪ÀÌ ¦¢ .profile ¦¢ .ÀÌ °¡Àå ºü¸£°í, ±×´ÙÀ½À¸·Î ¦¢ 234 ¦¢ ¼ýÀÚ, ¿µ´ë¹®ÀÚ, ¿µ¼Ò¹®ÀÚ°¡ °¡Àå Å©´Ù´Â ¦¢ 56 ¦¢ °Í°ú ¼ýÀÚ¸¦ Á¤·ÄÇÔ¿¡ À־ÀÇ ¦¢ Banana ¦¢ ó¸® ÇüÅÂÀÌ´Ù. ¦¢ Pear ¦¢ ¦¢ box ¦¢ ¦¢ package ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$sort -f test ¦¢ -f ¿É¼ÇÀ» »ç¿ëÇÔÀ¸·Î½á Á¤·ÄÇÔ¿¡ ¦¢.profile ¦¢ À־ ´ë,¼Ò¹®ÀÚ ±¸º°ÀÌ ÇàÇØÁöÁö ¾ÊÀ½À» ¦¢234 ¦¢ º¸¿©ÁÖ´Â ¿¹Á¦ÀÌ´Ù. ¦¢56 ¦¢ ¦¢Banana ¦¢ ¦¢box ¦¢ ¦¢package ¦¢ ¦¢Pear ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$sort -n -o test.srt test ¦¢ -n ¿É¼ÇÀ» »ç¿ëµÊÀ¸·Î½á ¼ýÀÚ°ªÀ» ¦¢.profile ¦¢ ±âÁØÀ¸·ÎÇÑ Á¤·ÄÀÌ ¼öÇàµÇ¸ç, ¦¢Banana ¦¢ -o ¿É¼Ç »ç¿ëÀ¸·Î, ±× ´ÙÀ½¿¡ ¿¬ÀÌ¾î ¦¢Pear ¦¢ ±â¼úµÇ¾î ÀÖ´Â test.srt È­ÀÏ¿¡ ¦¢box ¦¢ Á¤·Ä °á°ú°¡ ÀúÀåµÈ´Ù. ¦¢package ¦¢ ¦¢56 ¦¢ ¦¢234 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ 2. ÇÊµå ´ÜÀ§ÀÇ ¹®Àå Á¤·Ä ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $sort [-options] [fields] [file(s)] ¦¢ ¦¢ (field.char) ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ´ÙÀ½¿¡ ¼³¸íµÇ´Â ³»¿ëÁß Çʵå´Â ÀÌ¹Ì ¼³¸íÇѵ¥·Î °ø¹é ¶Ç´Â ÅÇ¿¡ÀÇÇØ ±¸º°µÇ´Â ¶óÀλóÀÇ ¿¬¼ÓµÈ ¹®ÀÚµéÀ» ¸»ÇÑ´Ù. sort ¸í·É¾î¿¡ ÀÇÇØ »ç¿ëµÇ´Â ±âº»ÀûÀÎ ´ë»óÇʵå´Â ù¹ø° ÇʵåÀÌ´Ù. sort ¸í·É¾î¿¡¼­ »ç¿ëµÇ´Â Á¤·ÄÇϱâ À§ÇØ »ç¿ëÇÏ´Â ´Ù¸¥ Çʵå´Â ¸í·É¾î ¶óÀλ󿡼­ ù¹ø° Çʵ忡 ´ëÇØ »ó´ëÀûÀ¸·Î ÁöÁ¤ÇÑ´Ù. °¢¶óÀÎÀÇ Çʵ带 °¡¸£Å°´Â ¸í·É¾î ¶óÀÎ»ó¿¡ ÁöÁ¤µÈ ÇʵåµéÀº sort ¸í·É¾î¿¡ ÀÇÇØ Á¤·ÄÇÔ¿¡ ÀÖ¾î ºñ±³Çϱâ À§ÇØ »ç¿ëÇÑ´Ù. Çʵå ÁöÁ¤ÀÚ +nÀº ù¹ø° Çʵå·ÎºÎÅÍ nÇʵ忡¼­ ½ÃÀÛÇÏ¿©, °¢ ¶óÀÎÀÇ ³¡±îÁö ¶óÀεéÀ» ´ëÁ¶ÇÒ °ÍÀ» Áö½ÃÇÑ´Ù. ¿¹¸¦µé¸é, +3À̶õ ÁöÁ¤Àº ù¹ø° Çʵå·ÎºÎÅÍ 3¹ø° ÇÊµå ¶Ç´Â 4¹ø Çʵå·ÎºÎÅÍ ºñ±³¸¦ ½ÃÀÛÇÏ¿© °¢¶óÀÎÀÇ ³¡±îÁö ºñ±³¸¦ °è¼ÓÇÑ´Ù. Çʵå ÁöÁ¤ÀÚ -nÀº ù¹ø° Çʵ忡¼­ n Çʵ忡¼­ ºñ±³¸¦ Á¤ÁöÇ϶ó´Â °ÍÀ» sort ¸í·É¾î¿¡ Áö½ÃÇÑ´Ù. ( ¸¸¾à sort ¸í·É¾î¿¡¼­ Á¤Áö Çʵ带 ÁöÁ¤ÇÏÁö ¾ÊÀ» °æ¿ì¿¡´Â Àü¼úÇÑ°Í °°ÀÌ °¢ ¶óÀÎÀÇ ³¡±îÁö ºñ±³µÈ´Ù. ) ¿¹¸¦µé¸é, -4¶ó´Â ÁöÁ¤Àº ù¹ø° Çʵ忡¼­ºÎÅÍ »ó´ëÀûÀ¸·Î 4¹ø° Çʵå Á÷Àü¿¡¼­ ¶Ç´Â 4¹ø Çʵ忡¼­ ºñ±³¸¦ Á¤ÁöÇ϶ó´Â °ÍÀ» Áö½ÃÇÑ´Ù. À§¿¡¼­ ÁöÁ¤ÇÑ +n°ú -nÀ» °°ÀÌ ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù. ¿¹¸¦µé¸é, sort +3 -4 fileÀ̶ó°í ÁöÁ¤Çϸé, ÀÔ·Â È­ÀÏÀÇ °¢ ¶óÀÎÀÇ 4¹ø° Çʵ常À» Á¤·ÄÀÇ ´ë»óÀ¸·Î »ï´Â´Ù. sort Çʵå´Â ÇÑÁ¤µÈ ¹®ÀÚµéÀÇ ¹üÀ§¸¦ ±× ÀÌ»óÀ¸·Î Á¦ÇÑÇÒ ¼ö ÀÖ´Ù. ±× Çü½ÄÀº sort Çʵ带 ÁöÁ¤ÇÏ´Â °Í°ú À¯»çÇÏ´Ù. ¿¹¸¦µé¸é +2.3Àº 3¹ø° ÇʵåÀÇ 4¹ø° ¹®ÀÚºÎÅÍ ½ÃÀÛÇÏ¿© ÀÔ·Â È­ÀÏÀÇ °¢ ¶óÀÎÀ» Á¤·ÄÇÑ´Ù. ±âº»ÀûÀÎ ÇÊµå ±¸º°ÀÚ´Â °ø¹éÀ̳ª ÅÇÀ̱⠶§¹®¿¡, ¿øÇÏ´Â ÇʵåÀÇ Á¤·ÄÀ» º¸ÁõÇϱâ À§ÇØ -t ¿É¼ÇÀ» »ç¿ëÇÏ¿© ÀÓÀÇÀÇ ÇÊµå ±¸º°ÀÚ¸¦ ÁöÁ¤ÇÑ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $sort -t: +2.4 test ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ º¹¼ö°³ÀÇ ½ÃÀÛ°ú Á¤Áö Çʵå ÁöÁ¤ÀÚ´Â °¢ ¶óÀÎÀÇ ±¸¼º Çü½ÄÀÌ µ¿ÀÏÇÑ ¶óÀε鿡 ´ëÇÑ Á¤·Ä Çʵ带 ÁöÁ¤Çϱâ À§ÇØ ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $sort +2 -3 +4 -5 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ( ¿É¼Ç ) +n Á¤·ÄÀ» ½ÃÀÛÇϱâ À§ÇØ Ã¹¹ø° ÇʵåºÎÅÍ nÇʵ带 »ý·«ÇÑ´Ù. -n ù¹ø° ÇʵåºÎÅÍ n ÇʵåÀü¿¡ Á¤ÁöÇÑ´Ù. -tchar char·Î ÁöÁ¤ÇÑ ¹®ÀÚ¸¦ »õ·Î¿î ÇÊµå ±¸º°ÀÚ·Î ¼±¾ðÇÑ´Ù. --------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­´Â È­ÀÏÀ» »èÁ¦ÇÏ´Â rm ¸í·É¾î¿¡ ´ëÇؼ­ ¼³¸íÇÕ´Ï´Ù. --------------------------------------------------------------------------- #34 À¯´Ï½Ã½º (adunis2 ) È­ÀÏÀÇ »èÁ¦: rm 02/19 17:28 67 line È­ÀÏÀÇ »èÁ¦ : rm --------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. --------------------------------------------------------------------- 1. È­ÀÏÀÇ »èÁ¦ rm - ÁöÁ¤ÇÑ È­ÀÏ·ÎÀÇ ¸µÅ©¸¦ »èÁ¦ÇÑ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $rm [-option] file(s) ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ rm ¸í·É¾î´Â È­ÀÏ·ÎÀÇ ¸µÅ©¸¦ »èÁ¦ÇÑ´Ù. È­ÀÏÀÇ ¸¶Áö¸· ¸µÅ©°¡ »èÁ¦ µÇ¾úÀ»¶§, È­ÀÏÀº ¾ï¼¼½º ºÒ°¡´ÉÇÏ°Ô µÇ°í, È­ÀÏÀÌ Á¡À¯ÇÏ°í ÀÖ´ø µð½ºÅ© ¿µ¿ªÀº ´Ù¸¥ È­ÀÏ¿¡ ÇÒ´çµÇ¾î Áø´Ù. ¸¸¾à È­ÀÏÀÌ ½Éº¼¸¯ ¸µÅ©µÈ È­ÀÏÀÏ °æ¿ì¿¡´Â, È­ÀÏ ¸µÅ©´Â »èÁ¦µÇ°í, º»·¡ÀÇ È­ÀÏÀº ±×´ë·Î À¯ÁöµÈ´Ù. È­ÀÏÀ» »èÁ¦Çϱâ À§Çؼ­´Â È­ÀÏÀÌ À§Ä¡ÇÏ°í ÀÖ´Â »óÀ§(parent) µð·ºÅ丮¿¡ ´ëÇØ Àбâ(read)¹× ½ÇÇà(execute) Á¢±Ù ±ÇÇÑÀÌ ÀÖ¾î¾ß¸¸ ÇÑ´Ù. ±×·¯³ª È­ÀÏ·ÎÀÇ Àбâ(read)¹× ¾²±â(write) Á¢±Ù ±ÇÇÑÀº ¿ä±¸µÇÁö ¾Ê´Â´Ù. ÀÌ°æ¿ì rm ¸í·É¾î´Â È­ÀÏÀÇ Á¢±Ù±ÇÇÑÀ» Ç¥½ÃÇÏ°í, È­ÀÏÀÇ »èÁ¦ ¿©ºÎ¸¦ ¹¯´Â ¸Þ¼¼Áö¸¦ Ç¥½ÃÇÑ´Ù. À̶§ y¶ó°í ÀÀ´äÇϸé È­ÀÏÀÌ »èÁ¦µÇ°í, ´Ù¸¥ ÀÀ´äÀ» ÇÒ °æ¿ì¿¡´Â È­ÀÏÀº ±×´ë·Î À¯ÁöµÈ´Ù. ±×¸®°í ¸í·É¾î »ó¿¡ -f ¿É¼ÇÀ» ÁöÁ¤ÇÒ °æ¿ì¿¡´Â, rm ¸í·É¾î´Â À§¿Í°°Àº °æ¿ì¿¡ ¾²±â(write) Á¢±Ù ±ÇÇÑÀÌ ¾ø´Â È­ÀÏÀ» »èÁ¦Çϱâ À§Çؼ­, ÀÀ´ä ¸Þ¼¼Áö¸¦ Ç¥½ÃÇÏÁö ¾Ê´Â´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $rm -f employees ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ º¹¼ö°³ÀÇ È­ÀÏÀ» ´ëÈ­½ÄÀ¸·Î »èÁ¦Çϱâ À§Çؼ­´Â -i ¿É¼ÇÀ» »ç¿ëÇÑ´Ù. ÀÌ ¿É¼ÇÀº °¢°¢ÀÇ ÁöÁ¤µÈ È­ÀÏÀ» »èÁ¦Çϱâ À§ÇØ ÀÀ´ä ¸Þ¼¼Áö¸¦ Ç¥½ÃÇÑ´Ù. °³º°ÀûÀ¸·Î È­ÀϸíÀ» ÁöÁ¤ÇÏÁö ¾Ê°í, º¹¼ö°³ÀÇ È­ÀÏÀ» ÁöÁ¤Çϱâ À§ÇØ Æ¯¼ö¹®ÀÚµéÀ» »ç¿ëÇÒ ¼ö ÀÖ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $rm file* memo ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ -r ¿É¼ÇÀº ÁöÁ¤ÇÑ µð·ºÅ丮, µð·ºÅ丮³»ÀÇ È­ÀÏ, ¼­ºê µð·ºÅ丮¿Í µð·ºÅ丮 ÀÚü¸¦ »èÁ¦ÇÑ´Ù. ÀÌ°æ¿ì µ¿ÀÏ ¸í·É¾î ¶óÀÎ»ó¿¡ -f ¿É¼ÇÀÌ ÁöÁ¤µÇ¾î ÀÖ´Ù ÇÏ´õ¶óµµ, ¾²±â±ÝÁöµÈ È­Àϵ鿡 ´ëÇؼ­´Â »èÁ¦ ¿©ºÎ¸¦ ¹¯´Â ÀÀ´ä ¸Þ¼¼Áö¸¦ Ç¥½ÃÇÑ´Ù. ÀÌ ¿É¼ÇÀº ÁÖÀÇÇÏ¿© »ç¿ëÇÑ´Ù. ±×¸®°í ÀÌ ¿É¼ÇÀ» »ç¿ëÇÒ °æ¿ì¿¡´Â -i¿É¼ÇÀ» ÇÔ²² »ç¿ëÇÔÀ¸·Î½á ÇÊ¿äÇÑ È­ÀÏÀ» ºÎÁÖÀÇÇÏ°Ô »èÁ¦ÇÏ´Â °ÍÀ» ÇÇÇÒ°ÍÀ» ±ÇÀåÇÑ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $rm -ir report/annual ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ( ¿É¼Ç ) -f »èÁ¦ ¿©ºÎ¸¦ ¹¯´Â ÀÀ´ä ¸Þ¼¼Áö¸¦ Ç¥½ÃÇÏÁö ¾Ê°í, ¾²±â ±ÝÁöµÈ È­ÀÏÀ» °­Á¦ÀûÀ¸·Î »èÁ¦ÇÑ´Ù. -i ´ëÈ­½ÄÀ¸·Î È­ÀÏÀ» »èÁ¦ÇÑ´Ù. ´ë»ó È­Àϸ¶´Ù »èÁ¦¿©ºÎ¸¦ ¹¯´Â ÀÀ´ä ¸Þ¼¼Áö°¡ Ç¥½ÃµÈ´Ù. -r ÁöÁ¤ÇÑ µð·ºÅ丮¿Í µð·ºÅ丮³»ÀÇ È­ÀÏ ±×¸®°í ¼­ºê µð·ºÅ丮µéÀ» ¸ðµÎ »èÁ¦ÇÑ´Ù. --------------------------------------------------------------------------- ±× µ¿¾È È­ÀÏ¹× µð·ºÅ丮 °ü¸® ¸í·É¾î¿¡ ´ëÇؼ­ ¼³¸íµå·È½À´Ï´Ù. ´ÙÀ½ºÎÅÍ´Â È­ÀÏ¹× µð·ºÅ丮ÀÇ ÂüÁ¶ ±ÇÇÑÀ» Á¦¾îÇÏ´Â °³³äµé°ú °ü·Ã ¸í·É¾îµé¿¡ ´ëÇؼ­ ¼³¸í µå¸®°Ú½À´Ï´Ù. --------------------------------------------------------------------------- #35 À¯´Ï½Ã½º (adunis2 ) µð·ºÅ丮¹× È­ÀÏ ¾ï¼¼½º Á¦¾îÀÇ ÀϹݰ³¿ä 02/20 11:15 142 line µð·ºÅ丮¹× È­ÀÏ ¾ï¼¼½º °ü¸® °³¿ä --------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. --------------------------------------------------------------------- 1. µð·ºÅ丮¹× È­ÀÏ ¾ï¼¼½º À¯´Ð½º´Â ·Î±×ÀÎ ¸í°ú(logname) Æнº¿öµå(passwd)¸¦ ÅëÇÏ¿© ½Ã½ºÅÛÀ¸·ÎÀÇ ¾ï¼¼½º¸¦ Á¦¾îÇÑ´Ù. È­ÀÏ¹× µð·ºÅ丮·ÎÀÇÁ¢±Ù ±ÇÇÑ(permission)Àº ´©°¡ °¢°¢ÀÇ È­ÀÏ ¶Ç´Â µð·ºÅ丮¸¦ ¾ï¼¼½º ÇÒ¼ö ÀÖ´ÂÁö ¶Ç´Â ¾î¶² ÇüÅÂÀÇ ¾ï¼¼½º¸¦ ÇÒ¼ö ÀÖ´ÂÁö¸¦ Á¦¾îÇϱâ À§ÇØ »ç¿ëµÈ´Ù. logname ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦£¦¡¦¡¦¡¦¤¦¡¦¡¦¡¦¡¦¡> ¦© UNIX ¦¢ ¦¦¦¡¦½¦¡¦¥¦¡¦¡¦¡¦¡¦¡> ¦© System ¦¢ ¢Æ¢Æ¢Æ¢Æ¢Æ password ¦¦¦¡¦¡¦¡¦¨¦¨¦¡¦¡¦¡¦¥ Terminal ¦£¦¡¦¡¦¡¦¥¦¦¦¡¦¡¦¡¦¤ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ È­ÀÏ°ú µð·ºÅ丮°¡ »ý¼ºµÉ¶§, À¯´Ð½º´Â »ç¿ëÀÚÀÇ ·Î±×ÀÎ ¸íÀ¸·Î ´©°¡ »ý¼º ÇÏ¿´´ÂÁö¸¦ ±â·ÏÇÑ´Ù. À̶§ »ý¼ºÇÑ »ç¿ëÀÚ¸¦ È­ÀÏ¹× µð·ºÅ丮ÀÇ ¼ÒÀ¯ÀÚ(owner)¶ó ÇÑ´Ù. À¯´Ð½º ¾ï¼¼½º Á¢±Ù ±ÇÇÑ »ç»óÀº ¼ÒÀ¯ÀÚ¿¡°Ô ´Ù¸¥ »ç¿ëÀÚ¿ÍÀÇ È­ÀÏ¹× µð·ºÅ丮ÀÇ °øÀ¯, ƯÁ¤ »ç¿ëÀÚ¿¡ ´ëÇÑ ¾ï¼¼½º Á¦ÇÑ¹× ¼ÒÀ¯ÀÚÀÇ È­ÀÏ°ú µð·ºÅ丮·ÎÀÇ ¾ï¼¼½º ÇüŸ¦ ÇÑÁ¤ÇÒ ¼ö ÀÖµµ·Ï Çã¿ëÇÑ´Ù. ½Ã½ºÅÛ °ü¸®ÀÚ Áï, super user´Â ¼ÒÀ¯ÀÚ°¡ ¾Æ´Ï¶óµµ ¶Ç´Â Á¢±Ù ±ÇÇÑÀÌ ¾ø´Ù ÇÏ´õ¶óµµ ¸ðµç ÂüÁ¶ ±ÇÇÑÀ» °®´Â´Ù. 2. »ç¿ëÀÚÀÇ ºÐ·ù À¯´Ð½º¿¡¼­´Â È­ÀÏ¹× µð·ºÅ丮¸¦ ¾ï¼¼½ºÇÒ ¼ö ÀÖ´Â 3 ºÎ·ùÀÇ »ç¿ëÀÚ°¡ ÀÖ´Ù. 1) È­ÀÏ ¶Ç´Â µð·ºÅ丮ÀÇ ¼ÒÀ¯ÀÚ(owner) 2) È­ÀÏ ¶Ç´Â µð·ºÅ丮ÀÇ ¼ÒÀ¯ÀÚ°¡ ¼ÓÇÏ´Â ±×·ì¿¡ ¼ÓÇÑ ´Ù¸¥ »ç¿ëÀÚ : group Åë»ó, ±×·ìÀº µ¿ÀÏ ºÎ¼­¿¡ ±Ù¹«Çϰųª µ¿ÀÏ ÇÁ·ÎÁ§Æ®¿¡ Á¾»çÇÏ´Â °³°³ÀεéÀ» Æ÷ÇÔÇÏ¿© ±¸¼ºµÈ´Ù. µ¿ÀÏ ±×·ì¿¡ ¼ÓÇÏ´Â »ç¿ëÀÚµéÀº Åë»ó Group id ¶Ç´Â GID¶ó ºÎ¸£´Â µ¿ÀÏ ±×·ì¹øÈ£¸¦ ÇÒ´ç ¹Þ´Â´Ù. ÀÌ ¹øÈ£´Â °¢ »ç¿ëÀÚ¿¡ ´ëÇÑ ´Ù¸¥ Á¦¾î Á¤º¸¿Í ÇÔ²² /etc/passwd È­ÀÏ¿¡ ÀúÀåµÈ´Ù. ¶ÇÇÑ /etc/group È­ÀÏ¿¡´Â ½Ã½ºÅÛ »óÀÇ ¸ðµç ±×·ì¿¡ ´ëÇÑ Á¤º¸µéÀÌ ÀúÀåµÇ¾î ÀÖ´Ù. 3) È­ÀÏ ¶Ç´Â µð·ºÅ丮ÀÇ ¼ÒÀ¯ÀÚ°¡ ¼ÓÇÏ´Â ±×·ì¿¡ ¼ÓÇÏÁö ¾Ê´Â ½Ã½ºÅÛ»ó¿¡ Á¸ÀçÇÏ´Â ±âŸÀÇ »ç¿ëÀÚ : other 3. »ç¿ëÀÚ¹× ±×·ìÀ» °ü¸®ÇÏ´Â ½Ã½ºÅÛ È­ÀÏ /etc/passwd¿Í /etc/group È­ÀϵéÀº ½Ã½ºÅÛ »ç¿ëÀÚ¿Í ±×·ì¿¡ ´ëÇÑ Á¦¾î Á¤º¸µéÀ» °®°í ÀÖ´Ù. ½Ã½ºÅÛ ÀÚ¿ø °ü¸®¿Í »ç¿ëÀÚ °ü¸®´Â ±âº»ÀûÀ¸·Î ½Ã½ºÅÛ °ü¸®ÀÚÀÇ Ã¥ÀÓÀÌ´Ù. ´ÙÀ½Àº "µð·ºÅ丮¹× È­ÀÏ ¾ï¼¼½º °ü¸®"¸¦ ¼³¸íÇϱâ À§Çؼ­ »ç¿ëµÉ /etc/passwd È­ÀÏ¹× /etc/group È­ÀÏÀÇ ¿¹Á¦¹× ¼³¸íÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢/etc/passwd ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢user1:x:101:100:User 1 account:/home/user1:/sbin/sh ¦¢ ¦¢user2:x:202:200:User 2 account:/home/user2:/sbin/sh ¦¢ ¦¢user3:x:103:100:User 3 account:/home/user3:/sbin/sh ¦¢ ¦¢user4:x:104:100:User 4 account:/home/user4:/sbin/sh ¦¢ ¦¢user5:x:105:100:User 5 account:/home/user5:/sbin/sh ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ /etc/passwd È­ÀÏÀº ¿©·¯°³ÀÇ Çʵå·Î ±¸¼ºµÇ¾î ÀÖ´Ù. ÀÌ È­ÀÏÀÇ ÇÑ ¶óÀÎÀº ÇѸíÀÇ »ç¿ëÀÚ¿¡ ´ëÇÑ µî·ÏÁ¤º¸µéÀÌ´Ù. °¢°¢ÀÇ ¶óÀεéÀº ÃÑ 7 °³ÀÇ Çʵå·Î ±¸¼ºµÇ´Âµ¥, °¢°¢ÀÇ Çʵ尡 ³ªÅ¸³»´Â Á¤º¸´Â ´ÙÀ½°ú °°´Ù. user1 -> »ç¿ëÀÚÀÇ logname x -> Æнº¿öµå ¼³Á¤ ¿©ºÎ : x¶ó°í ÁöÁ¤µÇ¾î ÀÖÀ¸¸é, »ç¿ëÀÚ°¡ Æнº¿öµå ±â´ÉÀ» »ç¿ëÇÏ°í ÀÖÀ½À» ÀǹÌ. ¶ÇÇÑ ÀÌÇʵå´Â Æнº¿öµåÀÇ ½ÇÁúÀû ³»¿ëÀ» º¸Á¸ÇÏ°í ÀÖ´Â /etc/shadow È­ÀÏ·Î ¿¬°áµÇ¾î ÀÖ´Ù. 101 -> »ç¿ëÀÚÀÇ UID 100 -> »ç¿ëÀÚÀÇ GID :: À̸¦ primary directory¶ó ÇÑ´Ù. [[[ Â÷ÈÄ ÀÚ¼¼È÷ ¼³¸íµÈ´Ù. ]]] User 1 account -> °ü¸®ÀÚ°¡ ±â¼úÇÑ »ç¿ëÀÚ¿¡ ´ëÇÑ ÁÖ¼®(comment) /home/user1 -> »ç¿ëÀÚÀÇ Ãʱ⠷α×ÀÎ µð·ºÅ丮 ( home directory ) /sbin/sh -> ·Î±×ÀÎÈÄ Ã³À½ ±âµ¿ÇÒ ·Î±×ÀÎ ½© ¶Ç´Â ÇÁ·Î±×·¥ ¿©±â¿¡¼­ ¿ì¼± ÁÖ¸ñÇØ¾ß ÇÒ °ÍÀÌ ÀÖ´Ù. GID¿Í UID¶ó´Â °ÍÀÌ´Ù. À̵éÀº »ç¿ëÀÚ¹× ±×·ìÀ» ±¸º°Çϱâ À§ÇØ ½Ã½ºÅÛ¿¡ ÀÇÇؼ­ »ç¿ëµÇ´Â ³»ºÎ ½Äº°ÀÚµé·Î¼­, °ü¸®ÀÚ¿¡ ÀÇÇØ ÁöÁ¤µÈ´Ù. À̵é°ú À¯»çÇÑ ·Î±×ÀÎ ½Äº°¸í°ú ±×·ì ½Äº°¸íÀÌ Àִµ¥ À̵éÀº »ç¿ëÀÚ °üÁ¡¿¡¼­ º» ½Äº°ÀÚµéÀÌ´Ù. À̸¦ ±×¸²À¸·Î ¼³¸íÇϸé.. ¦®¦¬¦¬¦¯ ¦®¦¬¦¬¦¯ (»ç¿ëÀÚ °üÁ¡) ¦­ »ç ¦­ (½Ã½ºÅÛ °üÁ¡) ¦­ ±× ¦­ ·Î±×ÀÎ ¦¡¦¹ ¿ë ¦·¦¡UID ±×·ì¦¡¦¹ ·ì ¦·¦¡GID ½Äº°¸í ¦­ ÀÚ ¦­ ½Äº°¸í¦­ ¦­ ¦±¦¬¦¬¦° (»ç¿ëÀÚ °üÁ¡)¦±¦¬¦¬¦° (½Ã½ºÅÛ °üÁ¡) ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢/etc/group ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢grp100::100:user1,user3,user5 ¦¢ ¦¢grp200::200:user2,user4 ¦¢ ¦¢grp300::300:user1,user2,user3,user4,user5 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ grp100 -> ±×·ì ½Äº°¸í ¹Ì»ç¿ë -> µÎ¹ø° Çʵå´Â ±×·ì Æнº¿öµå Çʵå·Î SVR4.0 ¹öÀü¿¡¼± »ç¿ëÇÏÁö ¾Ê´Â´Ù. 100 -> GID user1,user3,user5 -> ±×·ì¿¡ ¼ÓÇÑ »ç¿ëÀÚ ½Äº°ÀÚµé 5. ÂüÁ¶ ±ÇÇÑÀÇ Á¾·ù À̹ø¿¡´Â »ç¿ëÀÚ°¡ È­ÀÏ ¶Ç´Â µð·ºÅ丮¿¡ ´ëÇؼ­ ¼öÇàÇÒ ¼ö ÀÖ´Â ÀÛ¾÷ ÇàÀ§¸¦ ÁöÁ¤ÇϱâÀ§ÇÑ Á¢±Ù ±ÇÇÑÀÇ 3°¡Áö Á¾·ù¿¡ ´ëÇØ ¼³¸íÇÑ´Ù. . Àбâ(Read: r) È­ÀÏ ¶Ç´Â µð·ºÅ丮ÀÇ ³»¿ëÀ» ÂüÁ¶ÇÒ ¼ö ÀÖ´Â Á¢±Ù ±ÇÇÑ . ¾²±â(Write: w) È­Àϳ»ÀÇ µ¥ÀÌŸ ¶Ç´Â µð·ºÅ丮ÀÇ ³»¿ëÀ» º¯°æÇÒ ¼ö ÀÖ´Â Á¢±Ù ±ÇÇÑ . ½ÇÇà(Execute: x) È­Àϳ»ÀÇ ÇÁ·Î±×·¥À» ¼öÇàÇϰųª, µð·ºÅ丮ÀÇ ³»¿ëÀ» ¾ï¼¼½ºÇÒ ¼ö ÀÖ´Â Á¢±Ù ±ÇÇÑ µð·ºÅ丮ÀÇ Á¢±Ù ±ÇÇÑ¿¡ ´ëÇؼ­´Â ¶Ç´Ù¸¥ °í·Á»çÇ×µéÀÌ ÀÖ´Ù. . µð·ºÅ丮ÀÇ Á¢±Ù ±ÇÇÑÀº È­ÀÏÀÇ ±âº»ÀûÀΠ󸮿¡ ¿µÇâÀ» ¹ÌÄ£´Ù. ¿¹¸¦µé¸é, ¸¸¾à µð·ºÅ丮°¡ ¸ðµç »ç¿ëÀÚ¿¡°Ô Á¢±Ù ±ÇÇÑÀÌ Çã¿ëµÇ¸é, »ç¿ëÀÚ¿¡ È­ÀÏÀÇ read, write, execute Á¢±Ù ±ÇÇÑÀÌ Çã¿ëµÇÁö ¾Ê´Â °æ¿ì¶óµµ, µð·ºÅ丮³»ÀÇ È­ÀϵéÀ» »èÁ¦ÇÒ¼ö ÀÖ´Ù. . ½ÇÇà Á¢±Ù ±ÇÇÑÀº µð·ºÅ丮¿¡ ´ëÇؼ­´Â È­ÀÏ°ú´Â ´Ù¸¥ Àǹ̸¦ °®´Â´Ù. µð·ºÅ丮¿¡ ´ëÇؼ­ ½ÇÇà ±ÇÇÑÀÌ ÁÖ¾îÁö¸é, µð·ºÅ丮ÀÇ ³»¿ëÀ» °Ë»öÇϰųª ÂüÁ¶ÇÒ ¼ö ÀÖ°Ô Çã¿ëÇÑ´Ù. --------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­´Â Á¢±Ù ±ÇÇÑ(permission)À» Á¦¾îÇÏ´Â ¸í·É¾îµé¿¡ ´ëÇؼ­ ¼³¸í µå¸®°Ú½À´Ï´Ù. --------------------------------------------------------------------------- #36 À¯´Ï½Ã½º (adunis2 ) Á¢±Ù ±ÇÇÑÀÇ(Permission)ÀÇ Á¦¾î I 02/22 13:27 182 line Á¢±Ù ±ÇÇÑ(Permission)ÀÇ Á¦¾î I --------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. --------------------------------------------------------------------- 1. µð·ºÅ丮¹× È­ÀÏÀÇ Á¢±Ù ±ÇÇÑ È®ÀÎ ls -l ¸í·É¾î´Â È­ÀÏ°ú µð·ºÅ丮ÀÇ ¼Ó¼ºÀ» Ç¥½ÃÇÑ´Ù. ls -l ¸í·É¾îÀÇ ½ÇÇà °á°ú´Â ´ÙÀ½°ú °°´Ù. $ls -l total 5 ¦£¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢drwxr-xr-x¦¢ 2 user1 grp100 512 May 1 3:34 . ¦¢drwxr-xr-x¦¢ 2 user1 grp100 512 May 7 10:30 .. ¦¢drwxr-xr-x¦¢ 2 user1 grp100 512 Jun 4 15:04 Budget ¦¢drwxr-xr-x¦¢ 2 user1 grp100 512 Jun 11 08:47 Expenses ¦¢drwxr-xr-x¦¢ 2 user1 grp100 512 Jun 11 09:16 Salaries ¦¢-rw-r--r--¦¢ 2 user1 grp100 512 Jul 9 11:02 memo1 ¦¢-rw-r--r--¦¢ 1 user1 grp100 984 Jul 23 14:17 supplies.aug ¦¦¦¨¦¡¦¡¦¡¦¡¦¥ ¦¦¦¡ µð·ºÅ丮¿Í È­ÀÏÀÇ Á¢±Ù±ÇÇÑ ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ d rwx r-x r-x ¦¢ ¦¢ - rw- r-- r-- ¦¢ ¦¦¦¡¦¨¦¡¦¡¦¨¦¡¦¡¦¨¦¡¦¡¦¡¦¨¦¡¦¥ ¦¢ ¦¢ ¦¢ ¦¢Others ¦¢ ¦¢ ¦¢ Group ¦¢ ¦¢ User(Owner) ¦¢ File Type À§ÀÇ ls -l ¸í·ÉÀÇ ½ÇÇà °á°ú¿¡¼­ ù¹ø° Çʵå´Â È­ÀÏ Á¾·ù¿Í Á¢±Ù ±ÇÇÑÀ» ³ªÅ¸³½´Ù. ÀÌ Çʵ忡¼­ ù¹ø° ¹®ÀÚ´Â ,Åë»ó d ¿Í -, È­ÀÏ Á¾·ù¸¦ ³ªÅ¸³½´Ù. À̶§ d´Â µð·ºÅ丮¸¦, -´Â ÀÏ¹Ý È­ÀÏÀ» ÀǹÌÇÑ´Ù. È­ÀÏ Á¾·ù¸¦ ³ªÅ¸³»´Â ¹®ÀÚ¿¡ µÚµû¸£´Â 9 ¹®ÀÚ´Â È­ÀÏ ¶Ç´Â µð·ºÅ丮ÀÇ Á¢±Ù±ÇÇÑÀ» ³ªÅ¸³½´Ù. ÀÌ 9 ¹®ÀÚ´Â 3°¡Áö ºÎ·ùÀÇ »ç¿ëÀÚº° Á¢±Ù ±ÇÇÑÀÌ Ç¥½ÃµÈ´Ù. ¶ÇÇÑ °³°³ÀÇ »ç¿ëÀÚ ºÎ·ùº° r (Read), w (Write), x (Execute)ÀÇ ¼ø¼­·Î Á¢±Ù ±ÇÇÑÀÌ Ç¥½ÃµÈ´Ù. ¿©±â¿¡¼­ -Ç¥½Ã´Â ±× À§Ä¡¿¡ »óÀÀÇÏ´Â Á¢±Ù ±ÇÇÑÀÌ °ÅºÎµÈ °ÍÀ» ÀǹÌÇÑ´Ù. ¿¹¸¦µé¸é, drwxr-xr-x´Â ¼ÒÀ¯ÀÚ´Â read,write,execute Á¢±Ù ±ÇÇÑÀÌ ÀÖÀ½À», ¼ÒÀ¯ÀÚ°¡ ¼ÓÇÑ ±×·ìÀÇ member¿Í ½Ã½ºÅÛ»óÀÇ ´Ù¸¥ »ç¿ëÀڵ鿡°Ô´Â read¿Í execute Á¢±Ù ±ÇÇѸ¸ÀÌ ºÎ¿©µÇ¾î ÀÖÀ½À» ÀǹÌÇÑ´Ù. chmod ¸í·É¾î´Â ÀÌ¿Í°°ÀÌ È­ÀÏ¹× µð·ºÅ丮¿¡ ºÎ¿©µÇ¾î ÀÖ´Â Á¢±Ù ±ÇÇÑÀ» º¯°æÇϱâ À§ÇØ »ç¿ëÇÑ´Ù. ÇϳªÀÇ µð·ºÅ丮°¡ »õ·Ó°Ô »ý¼º µÇ¾úÀ»¶§ ºÎ¿©µÇ´Â µðÆúÆ® Á¢±Ù±ÇÇÑÀº ¸ðµç »ç¿ëÀÚ¿¡°Ô read,write,execute¸¦ Çã¿ëÇÑ´Ù. ¶ÇÇÑ »õ·Ó°Ô »ý¼ºµÈ È­ÀÏ¿¡ ´ëÇÑ µðÆúÆ® Á¢±Ù ±ÇÇÑÀº °¢°¢ÀÇ »ç¿ëÀڵ鿡°Ô read,write¸¸À» Çã¿ëÇÏ´Â °ÍÀÌ´Ù. ÀÌ·¯ÇÑ µðÆúÆ® Á¢±Ù ±ÇÇѵéÀº umask ¸í·É¾î¿¡ ÀÇÇØ º¯°æÇÒ ¼ö ÀÖ´Ù. 2. Á¢±Ù ±ÇÇÑ(Permission)ÀÇ º¯°æ chmod : È­ÀÏ ¶Ç´Â µð·ºÅ丮ÀÇ Á¢±Ù ±ÇÇÑÀ» ÇÒ´çÇϰųª º¯°æÇÑ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ chmod [-option] mode file(s) ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ chmod ¸í·É¾îÀÇ Çü½Ä¿¡¼­ mode´Â Absolute ¶Ç´Â Symbolic Çü½ÄÀ¸·Î ÁöÁ¤ °¡´ÉÇÏ´Ù. À̵鿡 ´ëÇؼ­´Â ÀÌÈÄ ÀÚ¼¼È÷ ¼³¸íµÈ´Ù. ¶ÇÇÑ ¼ÒÀ¯ÀÚ(Owner)¿Í °ü¸®ÀÚ(Superuser)¸¸ÀÌ È­ÀÏ¹× µð·ºÅ丮ÀÇ Á¢±Ù ±ÇÇÑ¿¡ ´ëÇÑ Á¦¾î¸¦ ¼öÇàÇÒ ¼ö ÀÖÀ½À» ÁÖ¸ñÇØ¾ß ÇÑ´Ù. ( ¿É¼Ç ) -R ÁöÁ¤ÇÑ µð·ºÅ丮³»ÀÇ ¸ðµç È­ÀÏ°ú ¼­ºê µð·ºÅ丮µé¿¡ ÁöÁ¤ÇÑ Á¢±Ù ±ÇÇÑÀ» ¼³Á¤ÇÑ´Ù. ÀÌ ¿É¼ÇÀ» »ç¿ëÇÏÁö ¾ÊÀ¸¸é ÇöÀçÀÇ µð·ºÅ丮¿Í È­ÀÏ¿¡¸¸ ¿µÇâÀ» ÁØ´Ù. 3. Á¢±Ù ±ÇÇÑÀÇ ÁöÁ¤ Çü½Ä chmod ¸í·É¾î »ó¿¡¼­ ÁöÁ¤ÇÏ´Â Á¢±Ù ±ÇÇÑÀº absolute¿Í symbolic Çü½ÄÀÇ µÎ°¡Áö Çü½ÄÁß Çϳª¸¦ ÁöÁ¤ÇÑ´Ù. absolute Çü½ÄÀº °¢ »ç¿ëÀÚº° Á¢±Ù ±ÇÇÑÀ» Ç¥½ÃÇϱâ À§Çؼ­ ¼ýÀÚ¸¦ »ç¿ëÇÑ´Ù. ±×·¯³ª symbolic Çü½ÄÀº Á¢±Ù ±ÇÇÑÀ» ³ªÅ¸³»´Â ¹®ÀÚ¿Í ºÎÈ£ÀÇ Á¶ÇÕÀ¸·Î ÁöÁ¤ÇÑ´Ù. ÀÌ µÎ°¡Áö Çü½ÄÀ» »ç¿ëÇÏ´Â ¿¹´Â ´ÙÀ½°ú °°´Ù. 1) Absolute Çü½Ä ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $chmod 744 memo ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ 2) Symbolic Çü½Ä ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $chmod ug+x,o-r memo ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ 3.1 Absolute Çü½Ä : Octal Çü½Ä ´ÙÀ½ ¿¹´Â °¢°¢ÀÇ Á¢±Ù ±ÇÇÑÀ» ÇÒ´çÇϱâ À§ÇÑ ¼ýÀÚ °ªµéÀ» º¸¿©ÁØ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢Á¢±Ù ±ÇÇÑÀÇ ¦¢ »ç¿ëÀÚ ±¸º° ¦¢ ¦¢ Á¾·ù ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ ¦¢ ¼ÒÀ¯ÀÚ(Owner) ¦¢ ±×·ì(Group) ¦¢ ±âŸ(Other) ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ read ¦¢ 4 ¦¢ 4 ¦¢ 4 ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ write ¦¢ 2 ¦¢ 2 ¦¢ 2 ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ execute ¦¢ 1 ¦¢ 1 ¦¢ 1 ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ access ±ÝÁö¦¢ 0 ¦¢ 0 ¦¢ 0 ¦¢ ¦¼¦¬¦¬¦¬¦¬¦¬¦¬¦»¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦»¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦»¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¾ ¦¢ Total ¦¢ 7 ¦¢ 7 ¦¢ 7 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ À§ µµÇ¥¿¡¼­ ¼ýÀÚµéÀº °¢°¢ÀÇ »ç¿ëÀÚ¿¡ ºÎ¿©ÇÏ´Â ÂüÁ¶ ±ÇÇÑÀ» ÇÑÁ¤ ½ÃÅ°´Âµ¥ ÀÌ¿ëÇÑ´Ù. °¢°¢ÀÇ »ç¿ëÀÚ¿¡ ºÎ¿©ÇÒ Á¢±Ù ±ÇÇÑÀÇ ÁöÁ¤Àº 0ºÎÅÍ 7±îÁöÀÇ 8°¡Áö Total °ªÀ¸·Î Ç¥ÇüÇÑ´Ù. 8°¡Áö Total°ªµéÀÌ ³ªÅ¸³»´Â Àǹ̴ ´ÙÀ½°ú °°´Ù. 0 ÂüÁ¶ ±ÝÁö 1 ½ÇÇุÀ» Çã¿ë 2 ¾²±â¸¸À» Çã¿ë 3 ¾²±â¹× ½ÇÇุÀ» Çã¿ë 4 Àб⸸À» Çã¿ë 5 Àбâ¹× ½ÇÇุÀ» Çã¿ë 6 Àбâ¹× ¾²±â¸¦ Çã¿ë 7 Àбâ,¾²±â,½ÇÇàÀ» Çã¿ë ±×·¯¸é ¿¹Á¦¸¦ ÅëÇØ °¢°¢ÀÇ ¼ýÀÚ Çü½ÄÀÇ Á¢±Ù ±ÇÇÑÀ» ¼³¸íÇØ º»´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$ls -l prog1 ¦¢ ¦¢-rw-r--r-- 1 user1 grp100 1475 Jul 9 11:02 prog1 ¦¢ ¦¢$chmod 755 prog1 ¦¢ ¦¢$ls -l prog1 ¦¢ ¦¢-rwxr-xr-x 1 user1 grp100 1475 Jul 9 11:02 prog1 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÀÌ ¿¹´Â chmod ¸í·É¾î¸¦ »ç¿ëÇÏ¿© Á¢±Ù ±ÇÇÑÀ» º¯°æÇÏ´Â °ÍÀ» º¸¿©ÁØ´Ù. ¿¹ÀÇ Ã³À½¿¡¼­ ls -l ¸í·É¾î¸¦ »ç¿ëÇÏ¿© prog1À̶ó´Â È­ÀÏÀÇ Àü¹ÝÀûÀÎ ¼Ó¼ºÀ» º¸¿©ÁÖ°í ÀÖ´Ù. ÀÌ È­ÀÏÀº ÇÁ·Î±×·¥ È­ÀÏÀÌ¶ó °¡Á¤Çϸé, ÀÌ È­ÀÏÀº ½ÇÇàÀ» ÇϱâÀ§Çؼ­´Â ½ÇÇà Á¢±Ù ±ÇÇÑÀÌ ÇÊ¿ä·Î ÇÏ°Ô µÈ´Ù. ±×·¡¼­ chmod ¸í·É¾î¸¦ ÅëÇØ °¢°¢ÀÇ »ç¿ëÀڵ鿡°Ô ½ÇÇà Á¢±Ù ±ÇÇÑÀ» ºÎ¿©ÇÏ°í ÀÖ´Ù. À̶§ chmod ¸í·É¾î¿¡ ±â¼úµÇ¾î ÀÖ´Â 755¶ó´Â ¼ýÀÚÀÇ Àǹ̸¦ ºÐ¼®ÇØ º¸ÀÚ. chmod ¸í·É¾î¸¦ ¼öÇàÇϱâ ÀÌÀüÀÇ prog1 È­ÀÏÀÇ Á¢±Ù ±ÇÇÑÀº ´ÙÀ½°ú °°´Ù. ¼ÒÀ¯ÀÚ read(4) + write(2) + execute ±ÝÁö = 6 ±× ·ì read(4) + write ±ÝÁö + execute ±ÝÁö = 4 ±â Ÿ read(4) + write ±ÝÁö + execute ±ÝÁö = 4 ¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡ ¿©±â¼­ ()¼Ó¿¡ ÀÖ´Â ¼ýÀÚ´Â ÇØ´ç Á¢±Ù ±ÇÇÑÀ» ºÎ¿©Çϱâ À§ÇÑ ¼ýÀÚ °ªÀ» ÀǹÌÇÑ´Ù. ÀÌ¿Í °°Àº Á¢±Ù ±ÇÇÑ »óÅ¿¡¼­ °¢°¢ÀÇ »ç¿ëÀÚ¿¡ ´ëÇØ ±âÁ¸ÀÇ Á¢±Ù±ÇÇÑÀ» À¯ÁöÇÑ »óÅ·Π½ÇÇà ±ÇÇÑÀ» ºÎ¿©Çϱâ À§ÇØ ´ÙÀ½°ú °°ÀÌ ¿¬»êÀ» ÇÑ´Ù. ¼ÒÀ¯ÀÚ read(4) + write(2) + execute(1) = 7 ±× ·ì read(4) + write ±ÝÁö + execute(1) = 5 ±â Ÿ read(4) + write ±ÝÁö + execute(1) = 5 µû¶ó¼­ ¿øÇÏ´Â Á¢±Ù ±ÇÇÑÀ» È­ÀÏ¿¡ ºÎ¿©Çϱâ À§Çؼ­´Â 755¶ó´Â ¼ýÀÚ°ªÀ» »ç¿ëÇØ¾ß ÇÔÀ» ¾Ë¼ö ÀÖ´Ù. ½ÇÇàÈÄ Á¢±Ù ±ÇÇÑÀÇ º¯°æÀ» È®ÀÎÇϱâ À§Çؼ­ ¶ÇÇѹø ls -l ¸í·ÉÀ» ½ÇÇàÇÏ°í ÀÖ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$ls -ld Salaries ¦¢ ¦¢drwxr-xr-x 2 user1 grp100 512 Jun 11 09:16 Salaries ¦¢ ¦¢$chmod 750 Salaries ¦¢ ¦¢$ls -ld Salaries ¦¢ ¦¢drwxr-x--- 2 user1 grp100 512 Jun 11 09:16 Salaries ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ À§ÀÇ ¿¹¿¡¼­ Salaries ¶ó´Â µð·ºÅ丮´Â ºñ¹Ð À¯Áö°¡ ÇÊ¿ä·Î ÇÏ´Â ±Þ¿© °ü·Ã Á¤º¸µéÀÌ µé¾î ÀÖ´Ù°í °¡Á¤ÇÏÀÚ. ±×·¸´Ù¸é À̵ð·ºÅ丮´Â ±Þ¿© °ü·Ã Á¤º¸¸¦ °ü¸®ÇÏ´Â »ç¿ëÀÚ ÀÌ¿Ü¿¡´Â ¾ï¼¼½ºÇÏÁö ¸øÇÏ°Ô ÇØ¾ß ÇÒ °ÍÀÌ´Ù. µû¶ó¼­ ÀÌ ¿¹¿¡¼­´Â ¼ÒÀ¯ÀÚ¹× ±×·ì¿¡ ¼ÓÇÏ´Â »ç¿ëÀÚ°¡ ¾Æ´Ñ ´Ù¸¥ »ç¿ëÀÚ(other)µé¿¡°Ô ¾ï¼¼½º ±ÇÇÑÀ» ÀüÇô ÁÖÁö ¾Êµµ·Ï chmod ¸í·É¾î¸¦ »ç¿ëÇÏ´Â °ÍÀ» º¸¿©ÁÖ°í ÀÖ´Ù. chmod ¸í·É¾î»ó¿¡ ÁöÁ¤µÈ 0À̶ó´Â ¼ýÀÚ´Â ¾ï¼¼½º ±ÇÇÑÀ» ÀüÇô ºÎ¿©ÇÏÁö ¾ÊÀ½À» ³ªÅ¸³½´Ù. --------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­´Â Á¢±Ù ±ÇÇÑ(permission)À» Á¦¾î¸¦ °è¼ÓÇÏ¿© ¼³¸í µå¸®°Ú½À´Ï´Ù. --------------------------------------------------------------------------- #37 À¯´Ï½Ã½º (adunis2 ) Á¢±Ù ±ÇÇÑ(Permission)ÀÇ Á¦¾î II 02/23 09:22 176 line Á¢±Ù ±ÇÇÑ(Permission)ÀÇ Á¦¾î II --------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. --------------------------------------------------------------------- 3.2 ±âÈ£(Symbolic) Çü½ÄÀÇ Á¢±Ù ±ÇÇÑ ÁöÁ¤ ±âÈ£ Çü½ÄÀº Á¢±Ù ±ÇÇÑÀ» ÁöÁ¤Çϱâ À§Çؼ­ ¹®ÀÚ¿Í ±âÈ£µéÀ» »ç¿ëÇÑ´Ù. ±âÈ£ Çü½ÄÀº ´ÙÀ½°ú °°Àº 3°¡ÁöÀÇ ¿ä¼Ò·Î ±¸¼ºµÈ´Ù. -. »ç¿ëÀÚ ±¸ºÐ -. Á¦¾î Çü½Ä -. Á¢±Ù ±ÇÇÑÀÇ Á¾·ù °¢ ¿ä¼ÒµéÀº ´ÙÀ½°ú °°´Ù. -. »ç¿ëÀÚ ±¸ºÐ Á¢±Ù ±ÇÇÑÀ» Á¦¾îÇÒ »ç¿ëÀÚ ±¸ºÐÀ» ÁöÁ¤½Ã¿¡´Â ´ÙÀ½ ¹®ÀÚµéÀ» »ç¿ëÇÑ´Ù. -. u ¼ÒÀ¯ÀÚ(owner) -. g ±×·ì(group) -. o ±âŸ(other) -. a ¸ðµç »ç¿ëÀÚ(owner+group+other) ¿©±â¿¡¼­ ±âº»ÀûÀÎ »ç¿ëÀÚ ±¸º°ÀÌ ¾Æ´Ñ ¸ðµç »ç¿ëÀÚ¸¦ÁöĪÇÏ´Â a¶ó´Â ¹®ÀÚ°¡ Á¦°øµÊÀ» ÁÖ¸ñÇϱ⠹ٶõ´Ù. -. Á¦¾î Çü½Ä Á¦¾î Çü½ÄÀº ÁöÁ¤ÇÑ »ç¿ëÀÚ¿¡ ¾î¶»°Ô Á¢±Ù ±ÇÇÑÀÌ º¯°æµÉ °ÍÀΰ¡¸¦ ÁöÁ¤ÇÑ´Ù. ´ÙÀ½°ú °°Àº ±âÈ£·Î Á¦¾î Çü½ÄÀ» ÁöÁ¤ÇÑ´Ù. + Á¢±Ù ±ÇÇÑÀ» ºÎ¿©ÇÑ´Ù. - Á¢±Ù ±ÇÇÑÀ» Á¦°ÅÇÑ´Ù. = ¸í½ÃÀûÀ¸·Î Á¢±Ù ±ÇÇÑÀ» ÇÒ´çÇÑ´Ù. + ¿Í - ¿¬»êÀÚ´Â ÇöÀç ¼³Á¤µÇ¾î ÀÖ´Â Á¢±Ù ±ÇÇÑ¿¡ °ü·ÃµÈ Á¢±Ù ±ÇÇÑÀ» Ãß°¡Çϰųª »èÁ¦ÇÑ´Ù. = ¿¬»êÀÚ´Â ÇöÀç ¼³Á¤µÇ¾î ÀÖ´Â Á¢±Ù ±ÇÇÑÀ» ¸ðµÎ »èÁ¦ÇÑ »óÅ¿¡¼­ ÁöÁ¤ÇÑ Á¢±Ù ±ÇÇÑÀ» ºÎ¿©ÇÑ´Ù. -. Á¢±Ù ±ÇÇÑÀÇ Á¾·ù ÀÌ¹Ì ¼³¸íÇÑ¹Ù¿Í °°ÀÌ Á¢±Ù ±ÇÇÑ¿¡´Â 3°¡Áö°¡, Áï Àбâ(r), ¾²±â(w)¿Í ½ÇÇà(x) , ÀÖ´Ù. ±×·¯³ª Á¢±Ù ±ÇÇÑÀÇ ±ÝÁö¸¦ ÀǹÌÇÏ´Â - ±âÈ£´Â »ç¿ëµÇÁö ¾ÊÀ½À» ÁÖ¸ñÇϱ⠹ٶõ´Ù. ´ÙÀ½¿¡ ±âÈ£ Çü½ÄÀ» »ç¿ëÇÏ¿© Á¢±Ù ±ÇÇÑÀ» Á¦¾îÇÏ´Â ¿¹Á¦µéÀ» º¸¿©ÁØ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$ls -ld Budget ¦¢ ¦¢drwxr-xr-x 2 user1 grp100 512 Jun 4 15:04 Budget ¦¢ ¦¢$chmod go-x Budget ¦¢ ¦¢$ls -ld Budget ¦¢ ¦¢drwxr--r-- 2 user1 grp100 512 Jun 4 15:04 Budget ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ Budget µð·ºÅ丮¿¡ ´ëÇؼ­ ±×·ì°ú ±âŸÀÇ ½ÇÇà Á¢±Ù ±ÇÇÑÀ» Á¦°ÅÇÏ´Â ¿¹Á¦ÀÌ´Ù. ¿©±â¿¡¼­ »ç¿ëÀÚ ±¸ºÐÀ» Ç¥½ÃÇÏ´Â ¹®ÀÚµé »çÀÌ¿¡ °ø¹éÀÌ ¾øÀ½À» ÁÖ¸ñÇϱ⠹ٶõ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$ls -l prog2 ¦¢ ¦¢-rw------- 1 user1 grp100 1986 Jun 13 08:26 prog2 ¦¢ ¦¢$chmod a=rx prog2 ¦¢ ¦¢$ls -l prog2 ¦¢ ¦¢-r-xr-xr-x 1 user1 grp100 1986 Jun 13 08:26 prog2 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÀÌ ¿¹¿¡¼­´Â ¸ðµç »ç¿ëÀÚ¿¡ ´ëÇؼ­ Àбâ¿Í ½ÇÇà ±ÇÇÑÀ» ¸í½ÃÀûÀ¸·Î ºÎ¿©ÇÏ´Â °ÍÀ» º¸¿©ÁÖ´Â ¿¹Á¦ÀÌ´Ù. ¿©±â¼­ Á¢±Ù ±ÇÇÑÀ» º¯°æÇϱâ Àü¿¡ ¼ÒÀ¯ÀÚ¿¡°Ô´Â ¾²±â ±ÇÇÑÀÌ ºÎ¿©µÇ°í ÀÖ¾ú´Âµ¥, chmod ¸í·É ½ÇÇàÈÄ ¾²±â ±ÇÇÑÀÌ Á¦°ÅµÈ °Í¿¡ ÁÖ¸ñÇØ¾ß ÇÑ´Ù. ÀÌ´Â = ¿¬»êÀÚ´Â ÀÌÀüÀÇ Á¢±Ù ±ÇÇÑÀ» ¸ðµÎ Á¦°ÅÇÑ ÈÄ »õ·Ó°Ô ±ÇÇÑÀ» ºÎ¿©ÇÔÀ» ÀǹÌÇÑ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$ls -l temp ¦¢ ¦¢-rwxr-xr-x 1 user1 grp100 512 Jun 20 09:33 temp ¦¢ ¦¢$chmod go= temp ¦¢ ¦¢$ls -l temp ¦¢ ¦¢-rwx------ 1 user1 grp100 512 Jun 20 09:33 temp ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÀÌ ¿¹¿¡¼­´Â = ¿¬»êÀÚ¸¦ ÅëÇØ ±×·ì°ú ±âŸÀÇ Á¢±Ù ±ÇÇÑÀ» ¸ðµÎ »èÁ¦ÇÏ´Â °ÍÀ» º¸¿©ÁØ´Ù. = ¿¬»êÀÚ¸¦ »ç¿ëÇÒ °æ¿ì = ¿¬»êÀÚ ÀÌÈÄ¿¡ Á¢±Ù ±ÇÇÑÀÇ Á¾·ù¸¦ ÁöÁ¤ÇÏÁö ¾ÊÀ» °æ¿ì, =¿¬»êÀÚ´Â ÁöÁ¤ »ç¿ëÀÚÀÇ ¸ðµç Á¢±Ù ±ÇÇÑ¿¡ ¿µÇâÀ» ¹ÌÄ£´Ù´Â °ÍÀ» º¸¿©ÁØ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$ls -l script ¦¢ ¦¢-rw-rw-rw- 1 user1 grp100 2475 Jul 19 11:42 prog1 ¦¢ ¦¢$chmod go-w,a+x script ¦¢ ¦¢$ls -l script ¦¢ ¦¢-rwxr-xr-x 1 user1 grp100 2475 Jul 19 11:42 prog1 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÀÌ ¿¹¿¡¼­´Â ÇϳªÀÇ chmod ¸í·É¾î¿¡¼­ º¹¼ö°³ÀÇ Á¢±Ù ±ÇÇÑ Á¦¾î¸¦ ,¸¦ »ç¿ëÇÏ¿© ÁöÁ¤ÇÏ´Â ¹æ¹ýÀ» º¸¿©ÁØ´Ù. À̶§ °¢°¢ÀÇ Á¢±Ù ±ÇÇÑ ÁöÁ¤»çÀÌ¿¡ °ø¹éÀÌ ¾øÀ½À» ÁÖ¸ñÇϱ⠹ٶõ´Ù. 4. µðÆúÆ® Á¢±Ù ±ÇÇÑÀÇ º¯°æ umask : »õ·Ó°Ô »ý¼ºµÇ´Â È­ÀÏÀ̳ª µð·ºÅ丮¿¡ ´ëÇØ ºÎ¿©µÇ´Â µðÆúÆ® Á¢±Ù ±ÇÇÑÀ» º¯°æÇÑ´Ù. µðÆúÆ® Á¢±Ù ±ÇÇÑÀº µð·ºÅ丮¿¡ ´ëÇؼ­´Â 777(rwxrwxrwx)ÀÌ, È­ÀÏ¿¡ ´ëÇؼ­´Â 666(rw-rw-rw-)ÀÌ´Ù. ÀÌ·¯ÇÑ µðÆúÆ® Á¢±Ù ±ÇÇÑÀº º¯°æÇÒ ¼ö ÀÖ´Ù. ÀÌ·±ÇÑ µðÆúÆ® Á¢±Ù ±ÇÇÑÀºÇöÀçÀÇ ¼¼¼Ç³»¿¡¼­¸¸ ¶Ç´Â ·Î±×Àνÿ¡ ÀÚµ¿ÀûÀ¸·Î º¯°æµÇµµ·Ï ¼³Á¤ÇÒ ¼ö ÀÖ´Ù. ÀÚµ¿ÀûÀ¸·Î µðÆúÆ® Á¢±Ù ±ÇÇÑÀ» º¯°æÇϱâ À§Çؼ­´Â º¯°æ ¸í·ÉÀÎ umask ¸í·ÉÀ» ½Ã½ºÅÛ È­ÀÏÀÎ /etc/profile¿¡ ¼±¾ðÇϰųª, »ç¿ëÀÚ È¯°æ Á¦¾îÇÏ´Â »ç¿ëÀÚ home µð·ºÅ丮 ¼ÓÀÇ .profile È­Àϼӿ¡ ¼±¾ðÇÏ¸é µÈ´Ù. ÀÌ È­ÀϵéÀº »ç¿ëÀÚ ·Î±×Àνÿ¡ ÀÚµ¿ÀûÀ¸·Î ½ÇÇàµÇ´Â ½© ÇÁ·Î±×·¥µéÀ̱⠶§¹®¿¡ µðÆúÆ® Á¢±Ù ±ÇÇÑÀÌ ÀÚµ¿ÀûÀ¸·Î ÁöÁ¤µÈ °ªÀ¸·Î º¯°æµÈ´Ù. umask ¸í·É¾î´Â 3ºÎ·ùÀÇ »ç¿ëÀڵ鿡 ´ëÇØ ¼±º°ÀûÀÎ Á¢±Ù ±ÇÇÑÀÇ ÁöÁ¤À» À§Çؼ­ 8Áø¼ö 3ÀÚ¸®¸¦ ÀÌ¿ëÇÑ´Ù. À̶§ ÁöÁ¤µÈ 3ÀÚ¸®ÀÇ 8Áø¼öµéÀº »óÀÀÇÏ´Â µðÆúÆ® »ç¿ëÀÚº° Á¢±Ù ±ÇÇÑÀ¸·Î ºÎÅÍ »©°Ô µÈ´Ù. ¿¹¸¦µé¸é umask 022 ¸í·ÉÀº ÀÌ¹Ì ¼³Á¤µÇ¾î ÀÖ´Â umask°ªÀ» ÂüÁ¶ÇÏÁö ¾Ê°í, Ç×»ó µðÆúÆ® Á¢±Ù ±ÇÇÑÀ» ÂüÁ¶ÇÑ´Ù. ¼ÒÀ¯ÀÚÀÇ Á¢±Ù ±ÇÇÑÀº º¯°æµÇÁö ¾Ê°í( ÇöÀçÀÇ µðÆúÆ® Á¢±Ù ±ÇÇÑ¿¡¼­ 0À» »­À¸·Î º¯ÇÏÁö ¾Ê´Â´Ù. ), ´Ù¸¸ ±×·ì°ú ±âŸ¿¡ ÇØ´çÇÏ´Â ¾²±â ±ÇÇÑÀ» Á¦°ÅÇÑ´Ù. ÀÌ ¸í·É¾î ½ÇÇàÈÄ¿¡ »õ·Î¿î È­ÀÏÀ̳ª µð·ºÅ丮µé¿¡ Á¦°øµÉ Á¢±Ù ±ÇÇÑÀº ´ÙÀ½°ú °°ÀÌ °è»êµÈ´Ù. µð·ºÅ丮ÀÇ °æ¿ì µðÆúÆ® Á¢±Ù ±ÇÇÑ 777(rwxrwxrwx) umask ¸í·É»ó¿¡ ÁöÁ¤µÈ 8Áø¼ö °ª - 022 ¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡ »õ·Î¿î µð·ºÅ丮¿¡ ºÎ¿©µÇ´Â Á¢±Ù ±ÇÇÑ 755(r-xr-xr-x) È­ÀÏÀÇ °æ¿ì µðÆúÆ® Á¢±Ù ±ÇÇÑ 666(rw-rw-rw-) umask ¸í·É»ó¿¡ ÁöÁ¤µÈ 8Áø¼ö °ª - 022 ¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡ »õ·Î¿î È­ÀÏ¿¡ ºÎ¿©µÇ´Â Á¢±Ù ±ÇÇÑ 644(rw-r--r--) ´ÙÀ½Àº umask ¸í·É¾î¸¦ »ç¿ëÇÏ´Â ¿¹ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$umask ¦¢ ¦¢022 ¦¢ ¦¢ls -l ¦¢ ¦¢drwxr-xr-x 2 user1 grp100 512 Jun 4 15:04 old_dir ¦¢ ¦¢-rw-r--r-- 1 user1 grp100 2358 Jun 4 11:19 old_file ¦¢ ¦¢$umask 000 ¦¢ ¦¢$cat > newfile ¦¢ ¦¢This file is created after ¦¢ ¦¢the new permission mask. ¦¢ ¦¢<^d> ¦¢ ¦¢$mkdir new_dir ¦¢ ¦¢$ls -l ¦¢ ¦¢drwxr-xr-x 2 user1 grp100 512 Jun 4 15:04 old_dir ¦¢ ¦¢-rw-r--r-- 1 user1 grp100 2358 Jun 4 11:19 old_file ¦¢ ¦¢drwxrwxrwx 2 user1 grp100 512 Jun 9 13:21 new_dir ¦¢ ¦¢-rw-rw-rw- 1 user1 grp100 1561 Jun 9 13:23 new_file ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ 8Áø¼ö °ªÀ» ÁöÁ¤ÇÏÁö ¾ÊÀº, umask ¸í·ÉÀº ÇöÀç ¼³Á¤µÇ¾î ÀÖ´Â umask ¼³Á¤ °ªÀ» Ç¥½ÃÇÑ´Ù. ¿¹Á¦¿¡¼­ umask¸í·ÉÀ» ½ÇÇàÇϱâ Àü¿¡ umask °ªÀÌ ¼³Á¤µÇ¾î ÀÖ´Â °ÍÀ» º¼¼ö Àִµ¥, ÀÌ °ªÀº Åë»ó /etc/profile¼Ó¿¡ ¼±¾ðµÇ¾î ÀÖ´Â °ªÀ¸·Î, »ç¿ëÀÚ ·Î±×Àνÿ¡ ÀÚµ¿ÀûÀ¸·Î ¼³Á¤µÇµµ·Ï µÇ¾î ÀÖ´Ù. µû¶ó¼­ ÀÌ ¿¹¿¡¼­´Â º»·¡ÀÇ µðÆúÆ® °ªÀ¸·Î umask °ªÀ» µÇµ¹¸°ÈÄ »õ·Î¿î È­ÀÏ°ú µð·ºÅ丮¸¦ »ý¼ºÇÏ¿©, ±×µé¿¡ Àû¿ëµÈ Á¢±Ù ±ÇÇÑÀ» º¸¿©ÁÖ°í ÀÖ´Ù. ¿©±â¼­ ÁÖ¸ñÇØ¾ß ÇÒ °ÍÀº umask ¸í·ÉÀÌ ±âÁ¸ÀÇ È­ÀÏ¹× µð·ºÅ丮¿¡´Â (¿¹¿¡¼­´Â old_file°ú old_dirÀÌ ÇØ´çµÈ´Ù.) ¿µÇâÀ» ³¢Ä¡Áö ¾Ê´Â´Ù´Â °ÍÀÌ´Ù. --------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­´ÂÈ­ÀÏÀÇ ¼ÒÀ¯±Ç(ownership)À» Á¦¾îÇÏ´Â chown ¸í·É¾î¿¡ ´ëÇؼ­ ¼³¸í µå¸®°Ú½À´Ï´Ù. --------------------------------------------------------------------------- #38 À¯´Ï½Ã½º (adunis2 ) È­ÀÏÀÇ ¼ÒÀ¯±Ç(ownership) º¯°æ: chown 02/23 17:34 68 line È­ÀÏÀÇ ¼ÒÀ¯±Ç(ownership) Á¦¾î: chown --------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. --------------------------------------------------------------------- 1. È­ÀÏÀÇ ¼ÒÀ¯±Ç(ownership) Á¦¾î chown - È­ÀÏ°ú µð·ºÅ丮ÀÇ ¼ÒÀ¯ÀÚ¸¦ º¯°æÇÑ´Ù. È­ÀÏ¹× µð·ºÅ丮ÀÇ ¼ÒÀ¯±ÇÀ» º¯°æÇÔÀº »ç¿ëÀÚµé »çÀÌ¿¡ Á¤º¸¸¦ °øÀ¯Çϱâ À§ÇÑ ÇÑ ¹æÆíÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ chown [-option] »ç¿ëÀÚ È­ÀÏ¸í ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ chown ¸í·É¾î ¶óÀλ󿡼­ »ç¿ëÀÚ´Â /etc/passwd È­ÀÏ¿¡ ¼±¾ðµÇ¾î ÀÖ´Â ·Î±×ÀÎ ¸í ¶Ç´Â UID ¹øÈ£¸¦ ÁöÁ¤ÇÒ ¼ö ÀÖÀ¸¸ç, È­ÀϸíÀº ´Ù¼öÀÇ È­ÀÏ ¶Ç´Â ´Ù¼öÀÇ µð·ºÅ丮µéÀ» ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù. ¸í·É¾î ¼öÇàÈÄ ´ë»ó È­ÀÏÀÇ Á¢±Ù ±ÇÇÑÀº º¯°æµÇÁö ¾Ê´Â´Ù. È­ÀÏÀÇ ¼ÒÀ¯ÀÚ¹× °ü¸®ÀÚ¸¸ÀÌ È­ÀÏÀÇ ¼ÒÀ¯±ÇÀ» º¯°æÇÒ ¼ö ÀÖÀ¸¸ç, Çѹø ¼ÒÀ¯ÀÚ°¡ ´Ù¸¥ »ç¿ëÀÚ¿¡°Ô ¼ÒÀ¯±ÇÀ» ³Ñ°åÀ» °æ¿ì¿¡´Â ´Ù½Ã º»·¡ÀÇ »ç¿ëÀÚ¿¡ ÀÇÇØ ¼ÒÀ¯±ÇÀ» µÇµ¹·Á ¹ÞÀ» ¼ö ¾øÀ½À» ÁÖ¸ñÇؾ߸¸ ÇÑ´Ù. ±×·¯³ª ÀÌ °æ¿ì¿¡ »õ·Î¿î ¼ÒÀ¯ÀÚ¿¡ ÀÇÇؼ± º»·¡ÀÇ »ç¿ëÀÚ¿¡°Ô ¼ÒÀ¯±ÇÀ» µÇµ¹¸± ¼ö ÀÖ´Ù. ( ¿É¼Ç ) -R ÁöÁ¤ÇÑ µð·ºÅ丮³»ÀÇ ÇϺΠ±¸Á¶µé Áï, ¼­ºê È­ÀÏ¹× ¼­ºê µð·ºÅ丮µé±îÁö ¼ÒÀ¯±ÇÀ» º¯°æÇÑ´Ù. ±×·¯³ª ½Éº¼¸¯ ¸µÅ©µÈ È­ÀϵéÀÇ ¼ÒÀ¯±ÇÀº º¯°æÇÏÁö ¾Ê´Â´Ù. -h ½Éº¼¸¯ ¸µÅ©µÈ È­ÀϵéÀÇ ¼ÒÀ¯±ÇÀ» º¯°æÇÑ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$ls -l prog3 ¦¢ ¦¢-rwxr-xr-- 1 user1 grp100 1765 Jul 2 13:34 prog3 ¦¢ ¦¢$chown user2 prog3 ¦¢ ¦¢$ls -l prog3 ¦¢ ¦¢-rwxr-xr-- 1 user2 grp100 1765 Jul 2 13:34 prog3 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÀÌ ¿¹´Â ¿ì¼± ls -l ¸í·É¾î¸¦ ÅëÇØ prog3 È­ÀÏÀÇ Á¢±Ù±ÇÇÑ¹× ¼ÒÀ¯±ÇÀ» º¸¿©ÁÖ°í, chown ¸í·É¾î¸¦ »ç¿ëÇÏ¿© È­ÀÏÀÇ ¼ÒÀ¯±ÇÀ» user2¿¡ º¯°æÀ» ¼öÇàÇÑ ÈÄ ls -l ¸í·É¾î¸¦ ÅëÇØ ¼ÒÀ¯±Ç º¯µ¿À» È®ÀÎÇÏ°í ÀÖ´Ù. ¿©±â¼­ ÁÖ¸ñÇÒ °ÍÀº ¼ÒÀ¯±Ç º¯°æÈÄ¿¡µµ È­ÀÏÀÇ Á¢±Ù ±ÇÇÑÀº º¯°æµÇÁö ¾Ê´Â Á¡°ú chown ¸í·É¾î¸¦ ½ÇÇàÇÑ »ç¿ëÀÚ°¡ user1 Áï, È­ÀÏÀÇ ¼ÒÀ¯ÀÚ¶ó´Â Á¡À» ÁÖ¸ñÇØ¾ß ÇÑ´Ù. ±×·¯¸é user1ÀÌ user2¿¡°Ô È­ÀÏÀÇ ¼ÒÀ¯±ÇÀ» ³Ñ±äÈÄ¿¡ ´Ù½Ã user1ÀÌ ÇØ´ç È­ÀÏÀÇ ¼ÒÀ¯±ÇÀ» °¡Á®¿Ã ¼ö ÀÖÀ»±î? ¹°·Ð ÀÌ·± ½Ãµµ´Â ¿¡·¯ 󸮵ȴÙ. ÀÌÀ¯´Â ÀÌ¹Ì ¼ÒÀ¯±ÇÀº user2¿¡°Ô ³Ñ¾î °¬±â ¶§¹®¿¡ user1Àº ¼ÒÀ¯ÀÚ°¡ ¾Æ´Ï±â ¶§¹®ÀÌ´Ù. ´ÙÀ½ ¿¹´Â À̸¦ º¸¿©ÁØ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$chown user1 prog3 ¦¢ ¦¢chown: user1: Not owner ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÀÌ·± °æ¿ì »õ·Î¿î ¼ÒÀ¯ÀÚÀÎ user2°¡ ¼ÒÀ¯±ÇÀ» ³Ñ±â´Â ¸í·ÉÀ» ½ÇÇàÇϸé, ¿ø·¡ÀÇ ¼ÒÀ¯ÀÚÀÎ user1¿¡°Ô ¼ÒÀ¯±ÇÀ» µ¹¸± ¼ö ÀÖ´Ù. --------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­´Â »ç¿ëÀÚ ±×·ì Á¦¾î ¹æ½Ä¿¡´ëÇØ ¼³¸í¿¡ ´ëÇؼ­ ¼³¸í µå¸®°Ú½À´Ï´Ù. --------------------------------------------------------------------------- #39 À¯´Ï½Ã½º (adunis2 ) »ç¿ëÀÚÀÇ ¼Ò¼Ó ±×·ì(membership) Á¦¾î I 02/24 15:25 158 line ±×·ì ¼Ò¼Ó °ü°è¿Í ¾ï¼¼½º Á¢±Ù ±ÇÇÑ --------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. --------------------------------------------------------------------- 1. ±×·ì ¼Ò¼Ó °ü°è¿Í ¾ï¼¼½º Á¢±Ù ±ÇÇÑ /etc/group È­ÀÏ¿¡ °¢ ±×·ìÀÇ ÀÏ¿øÀ¸·Î½á »ç¿ëÀÚ°¡ µî·ÏµÇ¾î Àֱ⸸ Çϸé, »ç¿ëÀÚ´Â Çѹø¿¡ ÇϳªÀÇ ±×·ì¾¿ º¹¼ö°³ÀÇ ±×·ì¿¡ ¼Ò¼ÓµÉ ¼ö ÀÖ´Ù. ( ¾î´À ÇÑ ½ËÁ¡¿¡ »ç¿ëÀÚ°¡ ¼Ò¼ÓµÈ ±×·ìÀº ¿ÀÁ÷ ÇϳªÀÇ ±×·ìÀÌ´Ù. ) À¯´Ð½º¿¡¼­´Â »ç¿ëÀÚ°¡ ¼Ò¼Ó ±×·ìÀ» º¯°æÇÒ ¼ö ÀÖ´Â ±â´ÉÀ» Á¦°øÇϴµ¥, º¯°æÀ» ¼öÇàÇصµ /etc/passwd È­Àϳ»¿¡ ÁöÁ¤µÈ ±×·ì ½Äº°ÀÚ(GID)´Â »ç¿ëÀÚÀÇ ±âº» ±×·ìÀ»(À̸¦ Primary GroupÀ̶ó ÇÑ´Ù.) À¯ÁöÇÑ´Ù. ( Primary GroupÀº »ç¿ëÀÚ°¡ ·Î±×ÀÎ ÀÛ¾÷À» ¼öÇà½Ã ÀÚµ¿ÀûÀ¸·Î »ç¿ëÀÚÀÇ ¼Ò¼Ó ±×·ìÀ¸·Î ¼³Á¤µÈ´Ù. ) ÀÌ ±×·ìÀÇ ½Äº°ÀÚ´Â »ç¿ëÀÚÀÇ È­ÀÏ°ú µð·ºÅ丮µéÀÇ Á¤º¸¼Ó¿¡ ¼±¾ðµÇ¾î ÀÖ´Ù. ƯÁ¤ È­ÀÏ¹× µð·ºÅ丮ÀÇ ¼ÒÀ¯ÀÚ¹× ±×·ì À̸§Àº ls -l ¸í·É¾î¸¦ »ç¿ëÇÏ¿© Ç¥½ÃÇÒ ¼ö ÀÖ´Ù. ±×·ìÀÇ ¼Ò¼Ó °ü°è´Â µ¿ÀÏ ±×·ìÀÇ ¸â¹öµéÀÌ ¼ÒÀ¯ÇÏ°í ÀÖ´Â È­ÀÏ°ú µð·ºÅ丮µéÀÇ ¾ï¼¼½º ±ÇÇÑ¿¡ ´ëÇÑ Á¦¾î¸¦ ÇÒ¼ö ÀÖ°Ô ÇÑ´Ù. ÀÌ ºÎºÐÀ» ¿¹¸¦ÅëÇØ Á»´õ ÀÚ¼¼È÷ ¼³¸íÇÑ´Ù. ¿¹¸¦µé¾î myfileÀ̶ó´Â È­ÀÏÀÌ ÀÖ´Ù°í °¡Á¤ÇÏÀÚ. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $ls -l myfile ¦¢ ¦¢ -rwxr----- 2 user2 grp200 512 May 7 13:34 myfile ¦¢ ¦¢ $grep 'user1' /etc/passwd ¦¢ ¦¢ user:x:100:100:user logid:/sbin/sh ¦¢ ¦¢ $grep 'user1' /etc/group ¦¢ ¦¢ grp100::100:user1 ¦¢ ¦¢ grp200::101:user1,user2,user3 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÀÌ È­ÀÏÀº ¼ÒÀ¯ÀÚ¿¡°Ô´Â ¸ðµç ±ÇÇÑÀ», ±×·ì¿¡°Ô´Â Àбâ¹× ½ÇÇà ±ÇÇÑÀ» ºÎ¿©Çϳª, ±âŸ¿¡´Â ¾î¶°ÇÑ Á¢±Ù ±ÇÇÑÀ» ºÎ¿©ÇÏ°í ÀÖÁö ¾Ê´Ù. ±×¸®°í user1À̶ó´Â »ç¿ëÀÚ´Â ÀÌ È­ÀÏÀ» ¾ï¼¼½º ÇÒ ¼ö ÀÖÀ»±î? ¹°·Ð Çö½ËÁ¡¿¡¼­´Â ºÒ°¡´É ÇÒ °ÍÀÌ´Ù. ±× ÀÌÀ¯´Â ¿ì¼±, ÀÌ È­ÀÏÀº ¼ÒÀ¯ÀÚ¹× ±×·ì¿¡ ´ëÇؼ­¸¸ ÂüÁ¶ ±ÇÇÑÀ» ºÎ¿©ÇÏ°í ÀÖ´Ù. ±×·¯³ª user1Àº ¼ÒÀ¯ÀÚµµ ¾Æ´Ï°í, ±âº»±×·ì(primary group)À¸·Î grp100À̶ó´Â ±×·ì¿¡ ¼ÓÇØ Àֱ⠶§¹®¿¡ ´ç¿¬È÷ ÂüÁ¶ ±ÇÇÑÀÌ ºÎ¿©µÇÁö ¾Ê´Â´Ù. ÀÌ·± »óȲ¿¡¼­ user1À̶ó´Â »ç¿ëÀÚ°¡ ¾÷¹«»ó ÀÌ È­ÀÏÀ» Àб⸦(read) ÇØ¾ß ÇÒ ÇÊ¿ä°¡ ÀÖ´Ù°í ÇÒ °æ¿ì¿¡, user1À̶ó´Â ÀÌ È­ÀÏÀ» ÀбâÇÒ ¼ö ÀÖ´Â ¹æ¹ýÀº ¹«¾ùÀϱî? ¿©·¯°¡Áö¸¦ »ý°¢ÇØ º¼¼ö ÀÖÀ» °ÍÀÌ´Ù. ¿ì¼±Àº ÀÌ È­ÀÏÀÇ ¼ÒÀ¯±ÇÀ» ÀÌ¹Ì ¼³¸íÇß´ø chown ¸í·ÉÀ» »ç¿ëÇÏ¿© user1¿¡°Ô ³Ñ±â´Â ¹æ¹ýÀ» »ý°¢ÇÒ ¼ö ÀÖÀ» °ÍÀÌ´Ù. ±×·¯³ª ÀÌ ¹æ¹ýÀº º»·¡ÀÇ ¼ÒÀ¯ÀÚÀÎ user2ÀÇ Á¢±Ù ±ÇÇÑ¿¡ ¿µÇâÀ» Áֱ⠶§¹®¿¡ ÇԺηΠÀû¿ëÇÒ ¼ö ¾øÀ» °ÍÀÌ´Ù. ¶Ç´Ù¸¥ ¹æ¹ýÀ» »ý°¢ÇØ º¸¸éÀº myfileÀÇ ¼Ò¼Ó ±×·ìÀ» grp100À¸·Î º¯°æÇÏ´Â ¹æ¹ýÀ» »ý°¢ÇÒ ¼ö ÀÖ´Ù. ±×·¯³ª ÀÌ °æ¿ì¿¡µµ grp200À̶ó´Â ±×·ì¿¡ ¼ÓÇØ ÀÖ´Â ´Ù¸¥ »ç¿ëÀÚ¿¡ ¿µÇâÀ» Áֱ⠶§¹®¿¡ Àû¿ëÇϱ⠰ï¶õÇÒ °ÍÀÌ´Ù. ( È­ÀÏÀÇ ¼Ò¼Ó ±×·ìÀ» grp100À¸·Î ¹Ù²Ù¸é, user3°¡ ±× ½ËÁ¡¿¡¼­ È­ÀÏÀ» ¾ï¼¼½º ºÒ°¡´ÉÇÏ°Ô µÈ´Ù. ) ÀÌ·± °æ¿ì¿¡ °¡Àå È¿À²ÀûÀ¸·Î ƯÁ¤ »ç¿ëÀÚ¿¡°Ô ƯÁ¤ È­ÀÏÀÇ Á¢±Ù ±ÇÇÑÀ» ºÎ¿©ÇÏ´Â ¹æ½ÄÀÌ ¹Ù·Î, »ç¿ëÀÚÀÇ ¼Ò¼Ó ±×·ìÀÇ º¯°æÀÎ °ÍÀÌ´Ù. ( À§ÀÇ ¿¹¿¡¼­´Â user1ÀÇ ¼Ò¼Ó ±×·ìÀ» grp100¿¡¼­ grp200À¸·Î º¯°æÇÏ´Â °æ¿ì°¡ µÈ´Ù. ) À§¿Í °°Àº ¹®Á¦¸¦ ÇØ°áÇϱâÀ§ÇÑ ¼Ò¼Ó ±×·ìÀÇ º¯°æ ¹æ½ÄÀº ÀÌÈÄ ÀÚ¼¼È÷ ¼³¸íµÈ´Ù. id ¸í·É¾î´Â ¸í·É¾î¸¦ ½ÇÇàÇÏ°í ÀÖ´Â »ç¿ëÀÚÀÇ »ç¿ëÀÚ ½Äº°¸í°ú ¼Ò¼ÓµÈ ±âº» ±×·ì¸íÀ» Ç¥½ÃÇÑ´Ù. ±×¸®°í groups ¸í·É¾î´Â »ç¿ëÀÚ°¡ ¼Ò¼ÓµÈ ¸ðµç ±×·ìÀ» Ç¥½ÃÇØÁØ´Ù. »ç¿ëÀÚ°¡ ¼Ò¼ÓµÈ ±âº» ±×·ìÀÌ¿ÜÀÇ ´Ù¸¥ ±×·ì(Secondary Group)¿¡ ¼ÓÇÑ È­ÀÏ°ú µð·ºÅ丮µéÀº ´ÙÀ½ ¸í·É¾îµéÀ» »ç¿ëÇØ ¾ï¼¼½ºÇÒ ¼ö ÀÖ´Ù. . chgrp ¸í·É¾î´Â È­ÀÏ°ú µð·ºÅ丮ÀÇ ¼Ò¼Ó ±×·ìÀ» ´Ù¸¥ ±×·ìÀ¸·Î º¯°æÇÑ´Ù. . newgrp ¸í·É¾î´Â »ç¿ëÀÚÀÇ ¼Ò¼Ó ±×·ìÀ» È­ÀÏ°ú µð·ºÅ丮¿¡ ´ëÇØ Á¢±Ù ±ÇÇÑÀ» °®°í ÀÖ´Â ´Ù¸¥ ±×·ìÀ¸·Î º¯°æÇÑ´Ù. 2. »ç¿ëÀÚÀÇ »ç¿ëÀÚ ½Äº°¸í°ú ±×·ì ½Äº°¸íÀÇ È®ÀÎ id ÇöÀç ¸í·É¾î¸¦ ÀÔ·ÂÇÏ°í ÀÖ´Â »ç¿ëÀÚ¹× ±×·ì ½Äº°¸í°ú ½Äº°¹øÈ£¸¦ ( GID¿Í UID¸¦ ¸»ÇÑ´Ù. ) Ç¥½ÃÇÑ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ id [-option] ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ id ¸í·É¾î¿¡ ÀÇÇØ Ç¥½ÃµÇ´Â »ç¿ëÀÚ Á¤º¸´Â /etc/passwd È­ÀϷκÎÅÍ ÃëÇØÁø´Ù. ¶ÇÇÑ ±×·ì ½Äº°¸íÀº /etc/group È­ÀÏ·Î ºÎÅÍ ÃëÇÑ´Ù. ¸¸ÀÏ ¸í·É¾î ½ÇÇàÈÄ¿¡ ±×·ì Á¤º¸°¡ Ç¥½ÃµÇÁö ¾ÊÀ¸¸é, ÀÌ´Â »ç¿ëÀÚ°¡ /etc/group È­ÀÏ¿¡ ±×·ìÀÇ ÀÏ¿ø(membership)À¸·Î µî·ÏµÇÁö ¾Ê¾ÒÀ½À» ÀǹÌÇÑ´Ù. ( ¿É¼Ç ) -a »ç¿ëÀÚ°¡ ¼Ò¼ÓµÈ ¸ðµç ±×·ìÀ» Ç¥½ÃÇÑ´Ù. ( ¿¹Á¦ ) ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ÀÌ ¿¹´Â °¡Àå ±âº»ÀûÀÎ id ¸í·É¾îÀÇ ¦¢$id ¦¢ »ç¿ë¿¹¸¦ º¸¿©ÁØ´Ù. ¦¢uid=101(user1) gid=100(grp100) ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$id -a ¦¢ ¦¢uid=101(user1) gid=100(grp100) groups=100(grp100),300(grp300) ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÀÌ ¿¹´Â -a ¿É¼ÇÀ» »ç¿ëÇÏ¿© »ç¿ëÀÚ°¡ ¼ÓÇÑ ¸ðµç ±×·ìÀ» Ç¥½ÃÇÏ°í ÀÖ´Ù. 3. »ç¿ëÀÚ ¼Ò¼Ó ±×·ì Á¤º¸ÀÇ È®ÀÎ oups »ç¿ëÀÚÀÇ ±×·ì ¼Ò¼Ó °ü°è¸¦ Ç¥½ÃÇÑ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ groups [user(s)] ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ groups ¸í·É¾î´Â ÇöÀç ¸í·É¾î¸¦ ÀÔ·ÂÇÏ°í ÀÖ´Â »ç¿ëÀÚ ¶Ç´Â ÁöÁ¤ÇÑ »ç¿ëÀÚÀÇ ±×·ì ¼Ò¼Ó Á¤º¸¸¦ Ç¥½ÃÇÑ´Ù. ¸í·É¾î Ãâ·Â»óÀÇ Ã¹¹ø° ³»¿ëÀº /etc/passwd È­ÀÏ¿¡ Á¤ÀǵǾî ÀÖ´Â »ç¿ëÀÚÀÇ ±âº» ±×·ì(Primary Group)À» ÂüÁ¶ÇÑ °ÍÀÌ°í, ´Ù¸¥ ³»¿ëµéÀº /etc/group È­ÀϷκÎÅÍ ¾ò¾îÁø »ç¿ëÀÚÀÇ ¼Ò¼Ó ±×·ì °ü·Ã Á¤º¸ÀÌ´Ù. ¸¸ÀÏ ¼Ò¼Ó ±×·ìÀÌ /etc/passwd È­Àϳ»¿¡ »ç¿ëÀÚÀÇ µî·Ï Á¤º¸¼Ó¿¡ ±âº» ±×·ìÀ¸·Î ÀÌ¹Ì Á¤ÀǵǾî ÀÖ°í, ¶ÇÇÑ »ç¿ëÀÚ°¡ /etc/group È­ÀÏ¿¡¼­ ÇØ´ç ±×·ìÀÇ ÀÏ¿øÀ¸·Î½á ¼±¾ðµÇ¾î ÀÖ´Ù¸é, Áߺ¹µÈ ±×·ì Á¤º¸°¡ Ç¥½ÃµÈ´Ù. ( ¿¹Á¦ ) ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$grep 'user*' /etc/group ¦¢ ÀÌ ¿¹¿¡¼­ grep ¸í·É¾î¸¦ ÅëÇؼ­ ¦¢grp100::100:user1 ¦¢ etc/group È­Àϳ»¿¡ user¶ó´Â ¦¢grp200::200:user2 ¦¢ ¹®ÀÚ¿­ÀÌ µé¾îÀÖ´Â »ç¿ëÀÚ ½Äº°¸í ¦¢grp300::300:user3,user5 ¦¢ µéÀÌ ¼ÓÇÑ ±×·ìµéÀ» º¸¿©ÁÖ°í ÀÖ´Ù. ¦¢$id ¦¢ ¿©±â¿¡¼­ º¸¸é user1 »ç¿ëÀÚ´Â ¦¢uid=101(user1) gid=100(grp100) ¦¢ grp100À̶ó´Â ±×·ì¿¡ ¼ÓÇÑ °ÍÀ» ¦¢$groups ¦¢ º¼¼ö ÀÖ´Ù. ±×¸®°í id ¸í·É¾î¸¦ ¦¢grp100 grp100 ¦¢ ÅëÇØ Áö±Ý ¸í·É¾î¸¦ ½ÇÇàÇÏ°í ÀÖ´Â ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ »ç¿ëÀÚ°¡ user1ÀÓÀ» È®ÀÎÇØ ÁØ´Ù. ÀÌÈÄ groups ¸í·ÉÀ» ½ÇÇàÇÏ¿© »ç¿ëÀÚÀÇ ¼Ò¼Ó ±×·ìÀ» º¸¿©ÁØ´Ù. À̶§ °á°ú»ó¿¡¼­ º¸¸éÀº grp100À̶ó´Â ±×·ì¸íÀÌ 2°³°¡ Ç¥½ÃµÇ´Âµ¥, ÀÌ´Â Á÷Àü grep ¸í·É¾î¿¡ ÀÇÇؼ­ È®ÀÎÇßµíÀÌ user1ÀÌ /etc/group È­ÀÏ¿¡µµ grp100 ±×·ì¿¡ µî·ÏµÇ¾ú±â ¶§¹®ÀÌ´Ù. óÀ½ÀÇ grp100 Á¤º¸´Â /etc/passwd È­ÀÏ·Î ºÎÅÍ °¡Á®¿Â Á¤º¸ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ÀÌ ¿¹´Â ¸í·É¾î¸¦ ½ÇÇàÇÏ´Â »ç¿ëÀÚ°¡ ¾Æ´Ñ ƯÁ¤ÀÇ ¦¢$groups user2 ¦¢ »ç¿ëÀÚ¿¡ °ü·ÃµÈ ¼Ò¼Ó ±×·ì Á¤º¸¸¦ È®ÀÎÇÏ´Â ¦¢grp100 grp200 ¦¢ °ÍÀ» º¸¿©ÁÖ´Â ¿¹ÀÌ´Ù. ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ÀÌ ¿¹´Â groups ¸í·É¾î ¶óÀÎ»ó¿¡ º¹¼öÀÇ ¦¢$groups user2 user3 ¦¢ »ç¿ëÀÚ¸¦ ÁöÁ¤ÇÏ´Â ¹æ½ÄÀ» º¸¿©ÁØ´Ù. ¦¢user2 : grp100 grp200 ¦¢ ¦¢user3 : grp100 grp300 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ --------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­´Â »ç¿ëÀÚ ±×·ì Á¦¾î ¹æ½Ä¿¡ ´ëÇؼ­ °è¼ÓÇÏ¿© ¼³¸íÇØ µå¸®°Ú½À´Ï´Ù. --------------------------------------------------------------------------- #40 À¯´Ï½Ã½º (adunis2 ) »ç¿ëÀÚÀÇ ¼Ò¼Ó ±×·ì(membership) Á¦¾î II 02/25 08:16 164 line ±×·ì ¼Ò¼Ó °ü°è¿Í ¾ï¼¼½º Á¢±Ù ±ÇÇÑ --------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. --------------------------------------------------------------------- 1. È­ÀÏÀÇ ¼Ò¼Ó ±×·ì º¯°æ chgrp È­ÀÏÀÇ ¼Ò¼Ó ±×·ìÀ» º¯°æÇÑ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ chgrp [-option]group file(s) ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ chgrp ¸í·É¾î¿¡¼­ ±×·ì ÁöÁ¤Àº ±×·ì¸í ¶Ç´Â ±×·ì ½Äº° ¹øÈ£¸¦ ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù. ±×·ì ½Äº° ¹øÈ£°¡ »ç¿ëµÇ´Â °æ¿ì¿¡, /etc/group È­ÀÏÀ̳ª /etc/passwd È­ÀÏ¿¡ ±âÁ¸¿¡ Á¸ÀçÇÏÁö ¾Ê´Â ±×·ì¿¡ È­ÀÏÀ» ÇÒ´çÇÒ ¼ö ÀÖ´Ù. chgrp ¸í·É¾î¿¡ º¹¼ö°³ÀÇ È­ÀÏÀ» ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù. ¸í·É¾î ½ÇÇàÈÄ¿¡µµ È­ÀÏÀÇ Á¢±Ù ±ÇÇÑÀº º¯°æµÇÁö ¾Ê°í À¯ÁöµÈ´Ù. ÀÌ ¸í·É¾î´Â È­ÀÏÀÇ ¼ÒÀ¯ÀÚ ¶Ç´Â °ü¸®ÀÚ(superuser)¸¸ÀÌ ½ÇÇàÇÒ ¼ö ÀÖ´Ù. ( ÁÖÀÇ ) ¸î¸îÀÇ À¯´Ð½º ½Ã½ºÅÛ¿¡¼­´Â È­ÀÏÀÇ ¼Ò¼Ó ±×·ì º¯°æÀ» °ü¸®ÀÚ¿¡¸¸ Çã¿ëÇÑ´Ù. ( ¿É¼Ç ) -R ÁöÁ¤ÇÑ µð·ºÅ丮³»ÀÇ ¸ðµç ±¸¼º ¿ä¼Ò Áï, ¼­ºê È­ÀÏ¹× ¼­ºê µð·ºÅ丮ÀÇ ¼Ò¼Ó ±×·ìÀ» ¸ðµÎ ÁöÁ¤ÇÑ ¼Ò¼Ó ±×·ìÀ¸·Î ¹Ù²Û´Ù. ´Ü, ½Éº¼¸¯ ¸µÅ©µÈ È­ÀÏÀº º¯°æµÇÁö ¾Ê´Â´Ù. -h ½Éº¼¸¯ ¸µÅ©µÈ È­ÀÏÀÇ ¼Ò¼Ó ±×·ìÀ» ¹Ù²Û´Ù. ( ¿¹Á¦ ) ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$id ¦¢ ¦¢uid=103(user3) gid=100(grp100) ¦¢ ¦¢$groups ¦¢ ¦¢grp100 grp300 ¦¢ ¦¢$ls -l ¦¢ ¦¢total 5 ¦¢ ¦¢drwxr-xr-x 2 user3 grp100 512 May 7 13:34 . ¦¢ ¦¢drwxr-xr-x 2 user3 grp100 512 May 13 10:30 .. ¦¢ ¦¢drwxr-xr-x 2 user3 grp100 512 Jun 11 09:16 subdir1 ¦¢ ¦¢-rw-r--r-- 1 user3 grp100 984 Jul 9 11:02 memo1 ¦¢ ¦¢-rw-r--r-- 1 user1 grp100 1765 Jul 23 14:17 report5 ¦¢ ¦¢$chgrp grp300 memo1 ¦¢ ¦¢$ls -l memo1 ¦¢ ¦¢-rw-r--r-- 1 user3 grp300 984 Jul 9 11:02 memo1 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÀÌ ¿¹¿¡¼­memo1 È­ÀÏÀº grp100 ±×·ì¿¡ ¼ÓÇØ ÀÖ´Â user3°¡ ¼ÒÀ¯ÀÚÀÌ´Ù. memo1 È­ÀÏÀÇ ¼Ò¼Ó ±×·ìÀ» º¯°æÇÑ ÈÄ ls -l ¸í·ÉÀ» ÅëÇØ º¯°æÈÄÀÇ È­ÀÏ »óŸ¦ È®ÀÎÇÏ´Â ¿¹ÀÌ´Ù. ¿©±â¼­ ÁÖ¸ñÇÒ °ÍÀº ¸í·É¾î ½ÇÇàÈÄ ±×·ì Á¤º¸ ÀÌ¿Ü¿¡´Â ÀüÇô º¯°æµÇÁö ¾Ê´Â´Ù´Â °ÍÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$ls -l report5 ¦¢ ¦¢-rw-r--r-- 1 user1 grp100 1765 Jul 23 14:17 report5 ¦¢ ¦¢$chgrp grp300 report5 ¦¢ ¦¢chgrp: report5: Not owner ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÀÌ ¿¹´Â À§ÀÇ ¿¹¿¡ ¿¬¼ÓµÈ ¿¹Á¦ÀÌ´Ù. À§ÀÇ ¿¹¿¡¼­ ¸í·É¾î¸¦ ¼ÒÀ¯ÀÚÀÎ user3°¡ ¼öÇàÇ߱⠶§¹®¿¡ ¼öÇàµÇ¾úÀ¸³ª, À̹ø¿¡´Â µ¿ÀÏÇÑ »ç¿ëÀÚ°¡ ÀÚ½ÅÀÌ ¼ÒÀ¯ÀÚ°¡ ¾Æ´Ñ È­ÀÏ¿¡ ´ëÇØ ±×·ìÀ» º¯°æÇÏ·Á°í Ç߱⠶§¹®¿¡ ¿¡·¯ 󸮵Ǵ °ÍÀ» º¼ ¼ö ÀÖ´Ù. 2. »ç¿ëÀÚÀÇ ¼Ò¼Ó ±×·ì º¯°æ newgrp »ç¿ëÀÚÀÇ ÇöÀç ¼Ò¼Ó ±×·ìÀ» º¯°æÇÑ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ newgrp [-] [group] ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÀÌ ¸í·É¾î´Â »ç¿ëÀÚ¿¡°Ô ±×·ì »ç¿ëÀÚÀÇ È­ÀÏ¹× µð·ºÅ丮·ÎÀÇ Á¢±Ù ±ÇÇÑÀ» ¾ò±âÀ§ÇØ ÁöÁ¤ÇÑ ±×·ìÀ¸·Î ÇöÀç ÀÚ½ÅÀÇ ¼Ò¼Ó ±×·ìÀ» ¹Ù²Ù´Â °ÍÀ» Çã¿ëÇÑ´Ù. ¸í·É¾î»ó¿¡¼­ ÁöÁ¤ÇÑ ±×·ì¿¡ »ç¿ëÀÚ´Â ¹Ýµå½Ã ÀÏ¿øÀ¸·Î(member·Î½á) /etc/group È­Àϳ»¿¡ ¼±¾ðµÇ¾î ÀÖ¾î¾ß ÇÑ´Ù. ±×¸®°í ¸í·É¾î»ó¿¡¼­ ±×·ì ÁöÁ¤½Ã ±×·ì ¸í ¶Ç´Â ±×·ì ¹øÈ£¸¦ »ç¿ëÇÒ ¼ö ÀÖ´Ù. ÀÌ ¸í·É¾î¸¦ ÀÎÀÚ(arguments)¾øÀÌ »ç¿ëÇßÀ» °æ¿ì¿¡, »ç¿ëÀÚÀÇ ¼Ò¼Ó ±×·ìÀº /etc/passwd È­ÀÏ¿¡ Á¤ÀǵǾî ÀÖ´Â ±âº» ±×·ì(Primary Group)À¸·Î ȯ¿øµÈ´Ù. ¶ÇÇÑ ¸í·É¾î»ó¿¡¼­ '-' ÀÎÀÚ¸¦ »ç¿ë ÇßÀ» °æ¿ì¿¡´Â, ·Î±×Àνà »ç¿ëÀÚÀÇ ¼Ò¼Ó ±×·ìÀÌ ÁöÁ¤ÇÑ ±×·ìÀΰÍÀ¸·Î Çؼ­ ·Î±×ÀÎ ÀýÂ÷°¡ ´Ù½Ã ¼öÇàµÈ´Ù. ÇöÀçÀÇ ½©ÀÌ newgrp ¸í·É¾î¿¡ ÀÇÇؼ­ ´ëÄ¡µÈ´Ù.(replace) ÀÌ °æ¿ì¿¡µµ ÇöÀçÀÇ ÀÛ¾÷ µð·ºÅ丮´Â º¯ÇÏÁö ¾Ê°í ±×´ë·Î À¯ÁöµÇ¸ç, ¿ÀÁ÷ exportµÇ¾îÁø º¯¼öµéÀÇ °ªÀÌ À¯ÁöµÈ´Ù. ÀÏ¹Ý º¯¼ö´Â ÃʱâÈ­ µÈ´Ù. ( newgrp ¸í·É¾î¿¡ ÀÇÇÑ ½©ÀÇ ´ëÄ¡ ºÎºÐÀº Â÷ÈÄ ´Ù½Ã ¼³¸íµÈ´Ù. exportÀÇ Àǹ̴ ÀÏ´Ü, ÇÏÀ§ ½©¿¡ º¯¼öÀÇ °ªÀ» Àü´ÞÇϱâ À§ÇÑ ¸í·É¾î¶ó°í ÀÌÇØÇϱ⠹ٶõ´Ù. ÀÚ¼¼ÇÑ ³»¿ëÀº À¯´Ð½ºÀÇ ±âº»ÀûÀÎ È°¿ë¿¡ ´ëÇÑ °­ÀÇ°¡ ³¡³ª°í, °è¼ÓµÉ ½© ÇÁ·Î±×·¡¹Ö °úÁ¤¿¡¼­ ÀÚ¼¼È÷ ¼³¸íÇÒ °ÍÀÌ´Ù. ) ( ¿¹Á¦ ) ´ÙÀ½ 4°³ÀÇ ¿¹Á¦´Â ÀÏ·ÃÀÇ ¿¹Á¦ÀÌ´Ù. ±×·¯³ª ¼³¸íÀ» Çϱ⠽±°ÔÇϱâ À§ÇØ °¢°¢ÀÇ ¿¹¸¦ ºÐ¸®ÇØ ¼³¸íÇÑ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$id ¦¢ ¦¢uid=105(user5) gid=100(grp100) ¦¢ ¦¢$groups ¦¢ ¦¢grp100 grp300 ¦¢ ¦¢$ls -l ¦¢ ¦¢total 5 ¦¢ ¦¢drwxr-xr-x 2 user5 grp100 512 May 7 13:34 . ¦¢ ¦¢drwxr-xr-x 2 user5 grp100 512 May 13 10:30 .. ¦¢ ¦¢drwxr-xr-x 2 user5 grp100 512 Jun 11 09:16 dir1 ¦¢ ¦¢-rw-r--r-- 1 user5 grp100 2345 Jul 9 11:02 file1 ¦¢ ¦¢-rw-r--r-- 1 user3 grp100 3588 Jul 23 14:17 file2 ¦¢ ¦¢$newgrp grp300 ¦¢ ¦¢$uid=105(user5) gid=300(grp300) ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ À§ÀÇ ¿¹´Â user5¿¡ °üÇÑ »ç¿ëÀÚ ½Äº°¸í¹× ±×·ìÀÇ ½Äº°¸íÀ» È®ÀÎÇϱâ À§Çؼ­ id ¸í·É¾î¸¦ ¼öÇàÇÏ°í ÀÖ°í, groups ¸í·É¾î¸¦ ÅëÇØ user5°¡ ¼Ò¼ÓµÈ ±×·ìµéÀ» º¸¿©ÁÖ°í ÀÖ´Ù. ÀÌ µÎ°¡Áö ¸í·ÉÀ» ÅëÇØ ÇöÀç user5°¡ grp100¿¡ ¼ÓÇØ ÀÖ´Ù´Â °ÍÀ» º¸¿©ÁØ´Ù. ±×¸®°í newgrp ¸í·É¾î¸¦ »ç¿ëÇÏ¿© »ç¿ëÀÚÀÇ ¼Ò¼Ó ±×·ìÀ» grp300À¸·Î ¹Ù²Ù°í, ±× °á°ú¸¦ È®ÀÎÇÏ°í ÀÖ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$cat > file3 ¦¢ ¦¢This file is created after ¦¢ ¦¢user5 changed from grp100 ¦¢ ¦¢to grp300 ¦¢ ¦¢<^d> ¦¢ ¦¢$ls -l file3 ¦¢ ¦¢-rw-r--r-- 1 user5 grp300 4265 Jul 26 09:23 file3 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÀÌÀüÀÇ ¿¹¿¡¼­ user5ÀÇ ¼Ò¼Ó ±×·ìÀ» grp300À¸·Î ¹Ù²Ù¾ú´Ù. ÀÌ »óÅ¿¡¼­ file3¶ó´Â »õ·Î¿î È­ÀÏÀ» »ý¼ºÇÑ ÈÄ ls ¸í·ÉÀ» ÅëÇؼ­ »ý¼ºµÈ È­ÀÏÀÇ ¼Ò¼Ó ±×·ìÀ» È®ÀÎÇÏ°í ÀÖ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$newgrp grp200 ¦¢ ¦¢newgrp: Sorry ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ À̹ø¿¡´Â user5ÀÇ ¼Ò¼Ó ±×·ìÀ» ¶Ç´Ù¸¥ ±×·ìÀ¸·Î º¯°æÀ» ½ÃµµÇÏ°í ÀÖ´Ù. ±×·¯³ª ¿¡·¯ ó¸®µÈ °ÍÀ» º¼¼ö ÀÖ´Ù. ¿Ö ±×·²±î? ±× ÀÌÀ¯´Â °£´ÜÇÏ´Ù. user5´Â ù¹ø° ¿¹ÀÇ groups ¸í·É °á°ú¿¡ ÀÇÇϸé grp200À̶ó´Â ±×·ì¿¡´Â ¼Ò¼ÓµÇ¾î ÀÖÁö ¾Ê¾Ò±â ¶§¹®ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$newgrp ¦¢ ¦¢$id ¦¢ ¦¢uid=105(user5) gid=100(grp100) ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¸¶Áö¸· ¿¹¿¡¼­´Â newgrp ¸í·É¾î¿¡ ÀÎÀÚ¸¦ ÁöÁ¤ÇÏÁö ¾ÊÀº ¿¹¸¦ º¸¿©ÁØ´Ù. ÀÌ °æ¿ì /etc/passwd È­ÀÏ¿¡ ¼±¾ðµÇ¾î ÀÖ´Â »ç¿ëÀÚÀÇ ±×·ìÀ¸·Î ¼Ò¼Ó ±×·ìÀ» µÇµ¹·Á ÁØ´Ù. --------------------------------------------------------------------------- ´ÙÀ½ °­ÀǺÎÅÍ´Â À¯´Ð½º ¿î¿µ üÁ¦¿¡¼­ Á¦°øÇÏ´Â ±âº» Åë½Å ±â´ÉÀ» ¼³¸íÇØ µå¸®°Ú½À´Ï´Ù. --------------------------------------------------------------------------- #41 À¯´Ï½Ã½º (adunis2 ) À¯´Ð½ºÀÇ ±âº» Åë½Å ÀÏ¹Ý °³¿ä 02/25 12:12 120 line À¯´Ð½º Åë½Å °³¿ä --------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. --------------------------------------------------------------------- 1. Åë½Å °³¿ä Åë½Å(Communication)Àº Á¤º¸ÀÇ ±³È¯ÀÌ´Ù. µ¥ÀÌŸ ó¸® ´É·ÂÀÇ ±Þ¼ÓÇÑ ¹ßÀü°ú ¿ø°Å¸®»óÀÇ ½Ã½ºÅÛ°úÀÇ Á¤º¸¸¦ ±³È¯Çϱâ À§ÇÑ Áõ°¡µÈ ¿ä±¸´Â Åë½Å ½Ã½ºÅÛÀ» ¹ßÀüÀ» °¡Á®¿Ô´Ù. µ¥ÀÌŸ Åë½ÅÀº ¿ø°Å¸®»óÀÇ ½Ã½ºÅÛÀ¸·ÎÀÇ ÀüÀÚ Á¤º¸ÀÇ Àü¼ÛÀ» ¸»ÇÑ´Ù. Åë½Å ½Ã½ºÅÛÀº ¹°¸®ÀûÀ¸·Î ¿¬°áµÇ´Â ¸î°¡Áö Çϵå¿þ¾îÀû ¿ä¼Òµé°ú (¿¹: ÄÄÇ»ÅÍ ½Ã½ºÅÛ, Å͹̳Î, ±âŸ º¸Á¶ ÀåÄ¡, ¸ðµ©°ú Åë½Å Àåºñµî), Çϵå¿þ¾î ±¸¼º¿ä¼ÒµéÀÇ ³í¸®Àû ¿¬°áÀ» °ü¸®Çϱâ À§ÇÑ ¼ÒÇÁÆ®¿þ¾î·Î ±¸¼ºµÈ´Ù. ÄÄÇ»ÅÍ ½Ã½ºÅÛ°ú Å͹̳ÎÀº µ¥ÀÌŸ¸¦ »ý¼º, ó¸®, ¼ö½ÅÇÏ´Â ¿ªÇÒÀ» ¼öÇàÇÑ´Ù. ¸ðµ©Àº ÄÄÇ»ÅÍ¿¡ ÀÇÇØ »ý¼ºÇÑ µðÁöÅÐ Çü½ÄÀÇ µ¥ÀÌÅ͸¦ Åë½Å ¶óÀÎÀ» ÅëÇؼ­ µ¥ÀÌŸ¸¦ º¸³¾¼ö ÀÖ´Â Çü½Ä Áï, ¾Æ³¯·Î±× Çü½ÄÀ¸·Î º¯È¯ÇÏ´Â ¿ªÇÒÀ» ¼öÇàÇÑ´Ù. Åë½Å ÀåºñÀÇ ÀϹÝÀûÀÎ °Íµé·Î´Â ÀüÈ­ ¶óÀÎ, ÄÉÀ̺í, ¸¶ÀÌÅ©·Î¿þÀÌºê ¿Í À§¼º ¹«¼± ¼Û½Å ÀåºñµîÀÌ ÀÖ´Ù. 1.1 Åë½Å ³×Æ®¿÷ µ¥ÀÌÅÍ Àü¼ÛÀº Åë½Å ³×Æ®¿÷À» ÅëÇØ ¼öÇàµÈ´Ù. Åë½Å ³×Æ®¿÷¿¡´Â Áö¿ø °Å¸®¿¡ µû¸¥ ´ÙÀ½°ú °°Àº ¸î°¡Áö ¹æ½ÄµéÀÌ ÀÖ´Ù. WANs(Wide Area Networks)Àº 100 km°¡ ³Ñ´Â ¿ø°Å¸® ³×Æ®¿÷¿¡ À¯¿ëÇÏ´Ù. MANs(Medium Area Networks)Àº 100 kmÀ̳»ÀÇ °Å¸®³»ÀÇ ³×Æ®¿÷¿¡ À¯¿ëÇÏ´Ù. LANs(Local Area Networks)Àº 10 kmÀ̳»ÀÇ °Å¸®ÀÇ ³×Æ®¿÷¿¡ À¯¿ëÇÏ´Ù. LAN¿¡´Â ¸î°¡ÁöÀÇ Á¾·ù°¡ Àִµ¥, À̵鰣ÀÇ ÁÖµÈ Â÷ÀÌÁ¡Àº µ¥ÀÌŸ Àü¼Û ¼Óµµ, LANÀ¸·ÎÀÇ Á¢¼Ó ºñ¿ë°ú Ÿ½Ã½ºÅÛµé°úÀÇ ¿¬°á¼º µîÀÌ´Ù. Åë½Å ³×Æ®¿÷Àº ³ëµå(node)¿Í ³ëµåµé»çÀÌÀÇ ¸µÅ©(link)·Î ±¸¼ºµÈ´Ù. ³ëµå´Â Á¤º¸¸¦ ´Ù·ç±â À§ÇÑ(¿¹¸¦µé¸é, »ý¼º, ó¸®, Ç¥½Ã ¶Ç´Â Àü¼Û) Çϵå¿þ¾îÀÇ À§Ä¡¸¦ ÀǹÌÇÑ´Ù. ±×·¯¹Ç·Î ³ëµå´Â ¸ÞÀÎ ÇÁ·¹ÀÓ, ¿÷ ½ºÅ×À̼Ç, Å͹̳Π¶Ç´Â ÇÁ¸°ÅÍ°°Àº Ãâ·Â ÀåÄ¡ ¶Ç´Â ³×Æ®¿÷ÀÌ µÉ¼ö ÀÖ´Ù. ÀÌ·¯ÇÑ ÀåÄ¡µéÀÇ Á¢¼Ó¿¡ ÀÇÇØ »ý¼ºµÇ´Â ±âÇÏÇÐÀû ÇüÅ´ ³×Æ®¿÷ÀÇ À§»ó(toporogy)À» Çü¼ºÇÑ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢% Toporogy (À§»ó) : ¦¢ ¦¢ ÄÄÇ»ÅÍ ³×Æ®¿÷¿¡¼­ ³ëµåµéÀÇ ¹°¸®Àû ¶Ç´Â ³í¸®ÀûÀÎ ¹èÄ¡¸¦ ¸»ÇÑ´Ù. ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ³×Æ®¿÷ÀÇ À§»ó¿¡´Â ¸î°¡ÁöÀÇ Ç¥ÁØ Çü½Ä Áï, star, ring, undefined¿Í bus µîÀÇ ¹æ½ÄÀÌ ÀÖ´Ù. °¢°¢ÀÇ À§»óÀº Åë½Å ³×Æ®¿÷»ó¿¡¼­ Àå.´ÜÁ¡µéÀÌ ÀÖ´Ù. 1.2 µ¥ÀÌŸ Àü¼Û Åë½Å ¶óÀλ󿡼­ÀÇ µ¥ÀÌŸ°¡ Àü¼ÛµÇ´Â ¼Óµµ¿Í µ¥ÀÌŸÀÇ ¾ç ¶Ç´Â ±³Åë·®(traffic:Åë½Å¿¡¼­ ¼Û¼ö½ÅµÇ´Â ¸Þ¼¼ÁöÀÇ ¾ç)¿¡´Â µÎ°¡Áö °í·Á»çÇ×ÀÌ ÀÖ´Ù. ÀÌ·¯ÇÑ °í·Á»çÇ׵鿡´Â »ç¿ëµÇ´Â Åë½Å ¶óÀεéÀÇ ¼Óµµ(low, medium, high), µ¥ÀÌŸ Àü¼Û ¸ðµå¿Í( Çѹø¿¡ ÇÑ ¹®ÀÚ Àü¼Û(ºñµ¿±â½Ä(asynchronous)), Çѹø¿¡ ¹®ÀÚµéÀÇ ±×·ì Àü¼Û(µ¿±â½Ä(synchronous))) ¶óÀÎÀ» ÅëÇØ µ¥ÀÌŸ°¡ Àü¼ÛµÇ´Â ¹æÇâÀ»(´Ü¹æÇâ(one way), ¾ç¹æÇâ(two way)) °áÁ¤ÇÏ´Â ¶óÀÎ Á¾·ùµéÀÌ ÀÖ´Ù. µ¥ÀÌŸÀÇ Àü¼ÛÀº ¼ÒÇÁÆ®¿þ¾î¿¡ ÀÇÇØ °ü¸®µÈ´Ù. ¼ÒÇÁÆ®¿þ¾î¿¡ ÀÇÇØ ¼öÇàµÇ´Â ±âº» ±â´ÉÀº ´ÙÀ½°ú °°´Ù. 1) ³ëµåµé »çÀÌÀÇ ³í¸®Àû Á¢¼ÓÀ» È®¸³ÇÑ´Ù. 2) ³×Æ®¿÷¿¡¼­ÀÇ Åë½Å ¶óÀλ󿡼­ÀÇ ±³Åë·®À» Á¦¾îÇÑ´Ù. 3) ¿¡·¯ °ËÁõ¹× ±³Á¤, Àå¾Ö ¹ß»ýÁ¡ÀÇ °Ë»ö¹× º¹±¸ 4) ³×Æ®¿÷ °ü¸® ¼­ºñ½ºÀÇ Á¦°ø 5) ¼Û½ÅÀÚ¿Í ¼ö½ÅÀÚ»çÀÌ¿¡¼­ ¾î¶»°Ô Á¤º¸°¡ ±³È¯µÉ°ÍÀΰ¡¿¡ °ü·ÃµÈ ¸ðµç ³ëµåµé »çÀÌ¿¡ °øÅëÀÇ ÀνÄÀ» Á¦°øÇÑ´Ù. °øÅë ±ÔÄ¢Àº µ¥ÀÌŸ Àü¼Û¿¡ À־ Ãæµ¹À» ÇÇÇϱâ À§ÇØ ³×Æ®¿÷»óÀÇ ¸ðµç ³ëµåµé¿¡ ´ëÇؼ­ Àû¿ëµÇ¾î¾ß ¸¸ ÇÑ´Ù. ÀÌ·± °øÅë±ÔÄ¢À» ÇÁ·ÎÅäÄÝÀ̶ó ÇÑ´Ù. ´Ù¸¥ ÀÛ¾÷À» °¢°¢ ´ã´çÇؼ­ ¸î°³ÀÇ ÇÁ·ÎÅäÄÝÀÌ ³×Æ®¿÷À» ´Ù½º¸±¼ö ÀÖ´Ù. Åë½Å ÇÁ·ÎÅäÄÝÀº ±âº»ÀûÀ¸·Î °ø±Þ ¾÷ü¿¡ ÀÇÁ¸ÇÑ´Ù. °¢°¢ÀÇ °ø±ÞÀÚµéÀº ÀڽŵéÀÇ ÇÁ·Î´öÆ®µé¿¡ ´ëÇÑ À¯ÀÏÇÑ ÇÁ·ÎÅäÄÝÀ» °®°í ÀÖ´Ù. »ç¿ëÀÚ°¡ ¿©·¯°³ÀÇ ÇÁ·Î´öÆ®µéÀ» Á¶ÇÕÇØ »ç¿ëÇÏ°Ô µÊÀ¸·Î½á, »ê¾÷ Ç¥ÁØÀ» ±¸ÃàÇØ¾ß ÇÒ ÇÊ¿ä°¡ Áõ´ëµÇ¾ú´Ù. ±× °á°ú·Î ¸î°³ÀÇ Ç¥ÁØÀÌ ±¹°¡Ç¥ÁرⱸÀÎ ANSI, IEEE ¿Í ±¹Á¦ Ç¥ÁرⱸÀÎISO Á¶Á÷¿¡ ÀÇÇØ °³¹ßµÇ¾ú´Ù. ISO Á¶Á÷Àº »ê¾÷ Ç¥ÁØÀÌ µÈ OSI(Open Systems Interconnetion)¶ó ºÒ¸®¿ì´Â °èÃþÈ­µÈ ÇÁ·ÎÅäÄݵéÀÇ Åë½Å ¸ðµ¨À» Ã¥ÀÓÁö°í ÀÖ´Ù. 2. Åë½Å ½Ã½ºÅÛ ¿¹Á¦ ´ÙÀ½ÀÇ ±×¸²Àº ±âº»ÀûÀÎ Åë½Å ½Ã½ºÅÛÀÇ ±¸¼ºÀ» º¸¿©ÁØ´Ù. ÀÌ ±×¸²¿¡¼­ÀÇ °¢°¢ÀÇ ½Ã½ºÅÛÀº ´Ù¸¥ Å͹̳ΰú º¸Á¶ ÀåÄ¡µéÀ» Áö¿øÇÑ´Ù. ¦®¦¬¦¬¦¬¦¯ ¦­½Ã½ºÅÛ¦­ ¦®¦¬¦¬¦¬¦¯ ¦­ 4 ¦·¦¡¦¡¦¡¦¹Modem ¦­ ¦±¦¬¦¬¦¬¦° ¦±¦¬¦¸¦¬¦° ¦¢ ¦¢ ¦®¦¬¦¬¦¬¦¯Direct¦®¦¬¦¬¦¬¦¯ ¦¢ ¦­½Ã½ºÅÛ¦­Link ¦­½Ã½ºÅÛ¦­ ¦®¦¬¦º¦¬¦¯ ¦­ 3 ¦·¦¡¦¡¦¡¦¹ 1 ¦·¦¡¦¡¦¡¦¹Modem ¦­ ¦±¦¬¦¬¦¬¦° ¦±¦¬¢Æ¦¬¦° ¦±¦¬¦¬¦¬¦° ¢Æ LAN ¦®¦¬¢Æ¦¬¦¯ ¦­½Ã½ºÅÛ¦­ ¦­ 2 ¦­ ¦±¦¬¦¬¦¬¦° ½Ã½ºÅÛ1Àº ÀÌ ¿¹Á¦ÀÇ ±¸¼º¿¡¼­ ÇϳªÀÇ ³ëµåÀÌ´Ù. ½Ã½ºÅÛ3Àº ½Ã½ºÅÛ1¿¡ ÄÉÀ̺íÀ» ÅëÇØ Á÷Á¢ Á¢¼ÓµÇ¾î ÀÖ´Ù. ÀÌ ¹æ½ÄÀº ¹°¸®ÀûÀ¸·Î ½Ã½ºÅÛ¿¡ Á¢¼ÓµÇ´Â ÄÉÀ̺íÀÇ ±æÀÌ¿¡ ÀÇÇØ ½Ã½ºÅÛ »çÀÌÀÇ °Å¸®°¡ Á¦ÇѵȴÙ. ½Ã½ºÅÛ4´Â ÄÄÇ»ÅÍ¿¡ ÀÇÇØ »ý¼ºµÈ µðÁöÅÐ Çü½ÄÀÇ µ¥ÀÌŸ¸¦ Åä½Å Àåºñµé¿¡ ÀÇÇØ Àü´ÞµÉ¼ö ÀÖ´Â Çü½ÄÀ¸·Î º¯È¯Çϱâ À§ÇÑ ¸ðµ©ÀåÄ¡¸¦ ÅëÇØ ½Ã½ºÅÛ1°ú °£Á¢ÀûÀ¸·Î ¿¬°áµÇ°í, Åë½ÅÇÏ°í ÀÖ´Ù. °£Á¢ Á¢¼Ó ¹æ½ÄÀº ¿ø°Å¸®»óÀÇ ½Ã½ºÅÛ°ú Á¢¼ÓÀ» Çã¿ëÇÑ´Ù. ½Ã½ºÅÛ2´Â LANÀ» ÅëÇØ ½Ã½ºÅÛ1°ú °£Á¢ Á¢¼ÓµÇ°í ÀÖ´Ù. Çϵå¿þ¾î ±¸¼º¿ä¼ÒµéÀÇ ³í¸®Àû Á¢¼ÓÀº ¼ÒÇÁÆ®¿þ¾î¿¡ ÀÇÇØ °ü¸®µÈ´Ù. --------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­´Â À¯´Ð½º ³»ºÎ Åë½Å±â´É¿¡(Local Communication) ´ëÇؼ­ ¼³¸íÇØ µå¸®°Ú½À´Ï´Ù. --------------------------------------------------------------------------- #42 À¯´Ï½Ã½º (adunis2 ) ´Ü¸»°£ÀÇ ¸Þ¼¼Áö ¼Û¼ö½Å ±â´É 02/26 11:09 250 line À¯´Ð½º ½Ã½ºÅÛ ³»ºÎ Åë½Å --------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. --------------------------------------------------------------------- 1. À¯´Ð½º Åë½Å À¯´Ð½º ½Ã½ºÅÛ¿¡´Â ±âº»ÀûÀ¸·Î ³»ºÎ(Local) Åë½Å°ú ¿ÜºÎ(Remote) Åë½Åµî 2 Á¾·ù°¡ ÀÖ´Ù. À¯´Ð½º´Â µ¿ÀÏ ½Ã½ºÅÛ»óÀÇ »ç¿ëÀÚµé »çÀÌÀÇ Åë½Å°ú Ÿ ½Ã½ºÅÛ°úÀÇ Åë½ÅÀ» Çϱâ À§ÇÑ ´Ù¾çÇÑ ¸í·É¾îµéÀ» Á¦°øÇÑ´Ù. À̹ø¿¡ °­ÀÇÇÒ Åë½Å ±â´ÉÀº µ¿ÀÏ ½Ã½ºÅÛ»óÀÇ »ç¿ëÀڵ鰣ÀÇ Åë½ÅÀ» À§ÇÑ À¯Æ¿¸®Æ¼¿¡ ´ëÇؼ­ ¼³¸íÇÑ´Ù. ±âº»ÀûÀÎ ³×Æ®¿÷»óÀÇ Å¸½Ã½ºÅÛ°úÀÇ Åë½ÅÀ» À§ÇÑ À¯Æ¿¸®Æ¼µé¿¡ ´ëÇؼ­´Â Â÷ÈÄ¿¡ ´Ù½Ã ¼³¸íÇÑ´Ù. ½Ã½ºÅÛ ³»ºÎ Åë½Å ±â´É - ½Ã½ºÅÛ ´º½º ±â´É news - Å͹̳ΰ£ÀÇ ¸Þ¼¼Áö ¼Û¼ö½Å ±â´É mesg finger write - »ç¿ëÀÚ ÀüÀÚ ¸ÞÀÏ ±â´É mail mailx notify vacation 2. ½Ã½ºÅÛ ´º½º Ç¥½Ã news ½Ã½ºÅÛ ´º½º¸¦ Ç¥½ÃÇÑ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ news [-option] ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ news ±â´ÉÀº °ø°í, °íÁö, °øº¸¿Í °°Àº ´º½º Ç׸ñÀÇ ½Ã½ºÅÛ Â÷¿øÀÇ °Ô½Ã¸¦ Çã¿ëÇÑ´Ù. news ¸í·É¾î´Â /etc/profile³»¿¡ ¼±¾ðµÇ¾î Àֱ⠶§¹®¿¡ ·Î±×Àνÿ¡ ÀÚµ¿ÀûÀ¸·Î ½ÇÇàµÈ´Ù. ´º½º Ç׸ñµéÀº ÇöÀç(currency)¸¦ ±âÁØÀ¸·Î Ç¥½ÃµÈ´Ù. currency´Â »ç¿ëÀÚÀÇ È¨ µð·ºÅ丮³»ÀÇ .news_time È­ÀÏÀÇ ¼öÁ¤ ³¯Â¥¸¦ ÂüÁ¶ÇÑ´Ù. .news_timeÀÇ ³¯Â¥º¸´Ù ÃÖ±Ù ¼öÁ¤½Ã°£À» °®´Â »õ·Î¿î È­Àϸ¸ÀÌ currency·Î °í·ÁµÈ´Ù. ÀÎÀÚ¾øÀÌ ÁöÁ¤µÈ news ¸í·É¾î´Â /var/news µð·ºÅ丮³»ÀÇ ¸ðµç currency È­ÀϵéÀ» Ç¥½ÃÇÑ´Ù. ƯÁ¤ÀÇ ´º½º Ç׸ñÀ» Ç¥½ÃÇϱâ À§Çؼ­´Â news ¸í·É¾îÀÇ ÀÎÀڷμ­ ´º½º Ç׸ñÀÇ À̸§À» ÁöÁ¤ÇÑ´Ù. ( ¿É¼Ç ) -a currency¿¡ °³ÀÇÄ¡ ¾Ê°í ¸ðµç ´º½º Ç׸ñµéÀ» Ç¥½ÃÇÑ´Ù. -n currency ´º½º È­ÀϵéÀÇ À̸§¸¸À» Ç¥½ÃÇÑ´Ù. -s currency ´º½º Ç׸ñÀÇ °¹¼ö¸¦ Ç¥½ÃÇÑ´Ù. ( ¿¹Á¦ ) ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$news -n ¦¢ -n ¿É¼ÇÀÌ ÁöÁ¤µÇ¾î ÇöÀçÀÇ ¦¢item4 item3 item2 item1 ¦¢ ´º½º Ç׸ñ À̸§µé¸¸ÀÌ Ç¥½ÃµÈ´Ù. ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$news -s ¦¢ -s ¿É¼ÇÀ¸·Î ÀÎÇØ ´º½º Ç׸ñÀÇ °¹¼ö¸¸ÀÌ ¦¢4 news items. ¦¢ Ç¥½ÃµÈ´Ù. ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$news item3 ¦¢ ¦¢item3 (root) Tue Oct 8 08:40:17 1991 ¦¢ ¦¢A staff meeting for Organization X is scheduled for next ¦¢ ¦¢Friday, october 18th, at 8:30 a.m. All department members ¦¢ ¦¢should plan to attend ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ƯÁ¤ÀÇ ´º½º Ç׸ñÀÇ ³»¿ëÀ» ÂüÁ¶Çϱâ À§ÇÑ ¹æ½ÄÀ» º¸¿©ÁÖ´Â ¿¹ÀÌ´Ù. 3. ¸Þ¼¼Áö ¼Û¼ö½Å ±â´É 3.1 ÀÚ½ÅÀÇ Å͹̳ηÎÀÇ ¸Þ¼¼Áö ¼ö½Å ¿©ºÎ ¼³Á¤ ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ mesg [option] ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ mesg ¸í·É¾î´Â ÀÚ½ÅÀÇ Å͹̳ηΠ´Ù¸¥ »ç¿ëÀÚ¿¡ ÀÇÇÑ ¸Þ¼¼ÁöÀÇ ¼ö½ÅÀ» Çã¿ëÇϰųª °ÅÀýÇÑ´Ù. ¸í·É¾î¿¡ ¿É¼ÇÀ» ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é, mesg ¸í·É¾î´Â ÇöÀç ¼³Á¤µÇ¾î ÀÖ´Â °ªÀ» Ç¥½ÃÇÑ´Ù. ( ¿É¼Ç ) n Å͹̳ηÎÀÇ ¸Þ¼¼Áö Ç¥½Ã¸¦ °ÅºÎÇÑ´Ù. y Å͹̳ηÎÀÇ ¸Þ¼¼Áö Ç¥½Ã¸¦ Çã¿ëÇÑ´Ù. ( ¿¹Á¦ ) ¦£¦¡¦¡¦¡¦¡¦¤ ÀÎÀÚ¸¦ ÁöÁ¤ÇÏÁö ¾Ê¾ÒÀ½À¸·Î ÇöÀç mesg¿¡ ¦¢$mesg ¦¢ ¼³Á¤µÈ °ªÀ» º¸¿©ÁØ´Ù. ¦¢is y ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¥ ¦£¦¡¦¡¦¡¦¡¦¤ ÀÎÀڷμ­ nÀ» ÁöÁ¤ÇÏ¿´±â ¶§¹®¿¡, ´Ù¸¥ »ç¿ëÀڷκÎÅÍÀÇ ¦¢$mesg n ¦¢ ¸Þ¼¼Áö ¼ö½ÅÀÌ °ÅºÎµÈ´Ù. ¦¢is n ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¥ ¦£¦¡¦¡¦¡¦¡¦¤ À§ ¿¹ÀÇ ¸í·É ½ÇÇàÈÄ °á°ú¸¦ È®ÀÎÇÏ°í ÀÖ´Ù. ¦¢$mesg ¦¢ ¦¢is n ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¥ 3.2 ¸Þ¼¼Áö¸¦ Àü¼ÛÇÒ Å͹̳ÎÀÇ ·Î±×ÀÎ ¿©ºÎ È®ÀÎ finger µ¿ÀÏ ½Ã½ºÅÛ °ú ´Ù¸¥ ½Ã½ºÅÛ»óÀÇ ·Î±×ÀÎÇÑ »ç¿ëÀÚ Á¤º¸¸¦ È®ÀÎ ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ finger [-option] ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÀÌ ¸í·É¾î´Â µ¿ÀÏ ½Ã½ºÅÛ ¶Ç´Â ´Ù¸¥ ½Ã½ºÅÛ»ó¿¡ ·Î±×ÀÎÇÑ °¢°¢ÀÇ »ç¿ëÀÚ¿¡ ´ëÇÑ Á¤º¸¸¦ Ç¥½ÃÇÑ´Ù. ÀÌ ¶§ÀÇ »ç¿ëÀÚ Á¤º¸¿¡´Â ·Î±×ÀÎ ¸í, /etc/passwd È­ÀÏ¿¡ ±â¼úµÇ¾î ÀÖ´Â ·Î±×ÀÎ ¸íÀÇ ÁÖ¼®, Å͹̳ΠÀ̸§, ´Ü¸»ÀÇ ÈÞ¸é ½Ã°£, ·Î±×ÀÎ ½Ã°£, À§Ä¡µîÀÌ Æ÷ÇԵǾî ÀÖ´Ù. ¸¸ÀÏ Å͹̳ΠÀ̸§ÀÇ Ã³À½¿¡ *°¡ Ç¥½ÃµÇ¸é, À̴ܸ»Àº ¸Þ¼¼Áö ¼ö½ÅÀÌ °ÅºÎµÇ°í ÀÖÀ½À» ³ªÅ¸³½´Ù. ( ¿É¼Ç ) -f Ãâ·Â»óÀÇ °¢ Çʵ忡 ´ëÇÑ Çʵå¸íÀ» Ç¥½ÃÇÏÁö ¾Ê´Â´Ù. -q Ãâ·Â»ó¿¡ ·Î±×ÀÎ ¸í, Å͹̳ΰú ·Î±×ÀÎ ½Ã°£¸¸À» Ç¥½ÃÇÑ´Ù. -l ÀÚ¼¼ÇÑ Ãâ·ÂÀ» ÇàÇÑ´Ù. -b ÀÚ¼¼ÇÑ Ãâ·Â³»¿¡¼­ »ç¿ëÀÚÀÇ È¨ µð·ºÅ丮¹× ½©À» Ç¥½ÃÇÏÁö ¾Ê´Â´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$finger ¦¢ ¦¢Login Name TTY Idle When Where ¦¢ ¦¢wjnr Bill Radogna00) *console 1:17 Thu 08:10 ¦¢ ¦¢root 0000-Admin(0000) *term/15 1 Thu 08:11 ¦¢ ¦¢root 0000-Admin(0000) term/10 20 Fri 10:19 italy ¦¢ ¦¢userb bourne user term/12 1:01 Fri 10:25 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ À§ÀÇ ¿¹´Â finger ¸í·É¾îÀÇ Ç¥ÁØÀûÀÎ Ãâ·ÂÀ» º¸¿©ÁÖ°í ÀÖ´Ù. ÀÌ Ãâ·Â»ó¿¡¼­ TTY Çʵ忡 *°¡ ºÙ¾î ÀÖ´Â °ÍÀº ÇØ´ç ´Ü¸»¿¡ ¸Þ¼¼Áö ¼ö·ÉÀÌ °ÅºÎµÇ¾úÀ½À» ³ªÅ¸³½´Ù. ´ÙÀ½Àº Ãâ·Â»óÀÇ °¢ Çʵ忡 ´ëÇÑ ¼³¸íÀÌ´Ù. Login : »ç¿ëÀÚÀÇ ·Î±×ÀÎ ¸í Name : »ç¿ëÀÚ¿¡ ´ëÇÑ ÁÖ¼® (/etc/passwd È­ÀÏ¿¡¼­ ÃßÃâ) TTY : ÇöÀç ·Î±×ÀÎÀ» ÇÏ°í ÀÖ´Â ´Ü¸»ÀÇ ½Äº°¸í Idle : ´Ü¸»ÀÇ ÈÞ¸é ½Ã°£ ( ÀÛ¾÷ÀÌ ¾Æ¹«°Íµµ ¼öÇàµÇÁö ¾ÊÀ¸¸ç °æ°úµÈ ½Ã°£ ) When : ´Ü¸»ÀÌ ·Î±×ÀÎµÈ ½Ã°£ Where : ´Ü¸»ÀÌ Á¢¼ÓµÇ¾î ÀÖ´Â ½Ã½ºÅÛ ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$finger -f ¦¢ ¦¢wjnr Bill Radogna00) *console 1:17 Thu 08:10 ¦¢ ¦¢root 0000-Admin(0000) *term/15 1 Thu 08:11 ¦¢ ¦¢root 0000-Admin(0000) term/10 20 Fri 10:19 italy ¦¢ ¦¢userb bourne user term/12 1:01 Fri 10:25 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ -f ¿É¼ÇÀ¸·Î ÀÎÇØ °¢ ÇʵåÀÇ Á¦¸ñÀÌ Ç¥½ÃµÇÁö ¾Ê°í ÀÖ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$finger -q ¦¢ ¦¢Login TTY When ¦¢ ¦¢wjnr *console 08:10 ¦¢ ¦¢root *term/15 08:11 ¦¢ ¦¢root term/10 10:19 ¦¢ ¦¢userb term/12 10:25 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ -q ¿É¼ÇÀº °¡Àå °£´ÜÇÑ ÇüÅ·ΠÃâ·ÂÀ» »ý¼ºÇØ ÁØ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$finger -l ¦¢ ¦¢Login name: userb (message off) In real life: bourne user ¦¢ ¦¢Directory: /home/userb Shell: /sbin/sh ¦¢ ¦¢On since Oct 8 08:47:08 on term/18 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ -l ¿É¼ÇÀ¸·Î ÀÎÇØ °¡Àå ÀÚ¼¼ÇÑ Á¤º¸¸¦ Ç¥½ÃÇÏ°í ÀÖ´Ù. 3.3 ¸Þ¼¼ÁöÀÇ ¼Û½Å write : ´Ù¸¥ »ç¿ëÀÚÀÇ Å͹̳ηΠ¸Þ¼¼Áö¸¦ º¸³½´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ write user [terminal] ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ write ¸í·É¾î´Â ·Î±×ÀεǾî ÀÖ´Â Å͹̳ηΠ¸Þ¼¼Áö¸¦ º¸³»°Å³ª, ´Ù¸¥ »ç¿ëÀÚ¿ÍÀÇ ¾ç¹æÇâ Åë½ÅÀ» ÇϱâÀ§ÇØ »ç¿ëÇÑ´Ù. ÀÌ ¸í·É¾î´Â ¼ö½ÅÃø ´Ü¸»ÀÇ mesg ¼³Á¤¿¡ ÀÇÁ¸ÇÑ´Ù. ¼ö½ÅÃø ´Ü¸»ÀÇ »óÅ´ finger ¸í·É¾î¸¦ »ç¿ëÇÏ¿© È®ÀÎÇÒ ¼ö ÀÖ´Ù. write ¸í·É¾î´Â ¶óÀÎ ´ÜÀ§ÀÇ Àü¼ÛÀ» ¼öÇàÇÑ´Ù. À̶§¹®¿¡ ´Ù¸¥ »ç¿ëÀÚ¿¡°Ô ¼Û½ÅÀ» ÇÒ °æ¿ì, ÀÀ´äÀ» ¹Þ±âÀ§ÇØ ¸Þ¼¼ÁöÀÇ ³¡À» Ç¥½ÃÇÏ´Â o ¹®ÀÚ·Î ½ÅÈ£¸¦ º¸³»¾ß¸¸ »ç¿ëÀÚ°¡ ÀÔ·ÂÇÑ ¶óÀÎÀÌ »ó´ë ´Ü¸»·Î Àü´ÞµÈ´Ù. ±×¸®°í Åë½ÅÇÒ »çÇ×ÀÌ ´õÀÌ»ó ¾øÀ½À» ¾Ë¸®±â À§Çؼ­´Â oo ¹®ÀÚ¸¦ ÀÔ·ÂÇÑ´Ù. ¼Û½Å Å͹̳ΰú ¼ö½Å Å͹̳λçÀÌÀÇ Á¢¼ÓÀ» È®¸³Çϱâ À§ÇØ, °¢°¢ÀÇ »ç¿ëÀÚ´Â ´Ü¸»¿¡¼­ write ¸í·É¾î¿Í ¸Þ¼¼Áö¸¦ ¼Û½ÅÇÒ »ç¿ëÀÚÀÇ À̸§À» ÀÔ·ÂÇؾ߸¸ ÇÑ´Ù. »ç¿ëÀÚ°¡ ´Ù¸¥ ´Ü¸»¿¡¼­ ·Î±×¿ÂÀ» ÇÏ¿´À» °æ¿ì¿¡ »ç¿ëÀÚÀÇ À̸§À» ´ë½ÅÇؼ­ ´Ü¸»¸í(Device name)ÀÌ »ç¿ëÇÒ ¼ö ÀÖ´Ù. write ¸í·É¾î¸¦ ¼Û¼ö½ÅÃøÀÌ ¸ðµÎ ÀÔ·ÂÇÑ ÈÄ¿¡´Â °¢°¢ÀÇ »ç¿ëÀÚ´Â ¸Þ¼¼Áö¿Í ÀÀ´ä Ç¥½ÃÀÚÀÎ o¿Í Á¢¼Ó Á¾·á Ç¥½ÃÀÚÀÎ oo ¸¸À» ÀÔ·ÂÇÑ´Ù. Á¢¼ÓÀ» Á¾·áÇÏ°í, ½© ÇÁ·ÒÇÁÆ®·Î µ¹¾Æ°¡±â À§Çؼ­´Â °¢ »ç¿ëÀÚ´Â ^d¸¦ ´©¸¥´Ù. ^d¸¦ ´©¸¦¸é Åë½ÅÁßÀÌ´ø »ó´ë ´Ü¸»¿¡ °¡ Ç¥½ÃµÈ´Ù. ( ¿É¼Ç ) term/n Å͹̳ΠÀ̸§À» ÁöÁ¤ÇÑ´Ù. ´ÙÀ½Àº user1À̶ó´Â »ç¿ëÀÚ¿Í user2¶ó´Â »ç¿ëÀÚÀÇ ¸Þ¼¼Áö¸¦ ÁÖ°í ¹Þ´Â ¿¹Á¦ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢(¼Û½Å) ¦¢ ¦¢ ¦¢ ¦¢$write user2 ¦¢ ¦¢ ¦¢ ¦¢Are you attending the meeting this¦¢ ¦¢ ¦¢ ¦¢afternoon? o ¦¢ ¦¢(¼ö½Å) ¦¢ ¦¢ ¦¢ ¦¢Message from user1 ... ¦¢ ¦¢ ¦¢ ¦¢Are you attending the meeting ¦¢ ¦¢ ¦¢ ¦¢this afternoon? o ¦¢ ¦¢ ¦¢ ¦¢(ÀÀ´ä) ¦¢ ¦¢ ¦¢ ¦¢$write user1 ¦¢ ¦¢ ¦¢ ¦¢Yes -- Should we bring our ¦¢ ¦¢ ¦¢ ¦¢status reports? o ¦¢ ¦¢(¼ö½Å) ¦¢ ¦¢ ¦¢ ¦¢Message from user2 ... ¦¢ ¦¢ ¦¢ ¦¢Yes -- Should we bring our status ¦¢ ¦¢ ¦¢ ¦¢reports? o ¦¢ ¦¢ ¦¢ ¦¢(ÀÀ´ä) ¦¢ ¦¢ ¦¢ ¦¢No, just the documentation we ¦¢ ¦¢ ¦¢ ¦¢discussed earlier. Don't ¦¢ ¦¢ ¦¢ ¦¢forget 1:30 sharp! See you ¦¢ ¦¢ ¦¢ ¦¢there. oo ¦¢ ¦¢(¼ö½Å) ¦¢ ¦¢ ¦¢ ¦¢ No, just the documentation we ¦¢ ¦¢ ¦¢ ¦¢ discussed earlier. Don't ¦¢ ¦¢ ¦¢ ¦¢ forget 1:30 sharp! See you ¦¢ ¦¢ ¦¢ ¦¢ there. oo ¦¢ ¦¢ ¦¢ ¦¢(¼Û½Å) ¦¢ ¦¢ ¦¢ ¦¢ OK -- Later. oo ¦¢ ¦¢(¼ö½Å) ¦¢ ¦¢ ¦¢ ¦¢OK -- Later. oo ¦¢ ¦¢ ¦¢ ¦¢<^d> ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ <^d> ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢$ ¦¢ ¦¢ $ ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ --------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­´Â À¯´Ð½º ÀüÀÚ ¿ìÆí (Mail) ±â´É¿¡ ´ëÇؼ­ ¼³¸íÇØ µå¸®°Ú½À´Ï´Ù. --------------------------------------------------------------------------- #43 À¯´Ï½Ã½º (adunis2 ) ÀüÀÚ ¿ìÆí ¼Û¼ö½Å ±â´É: mail 02/26 14:50 101 line À¯´Ð½º ÀüÀÚ¿ìÆí(mail) ±â´É --------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. --------------------------------------------------------------------- 1. ÀüÀÚ¿ìÆí ±â´É mail ¸ÞÀÏÀ» º¸³»°Å³ª Àд´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ mail [-option] user(s) ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¸ÞÀÏ ¸Þ¼¼ÁöµéÀº /var/mail ¹ØÀÇ »ç¿ëÀÚ¸í(logname)À¸·Î »ý¼ºµÇ´Â »ç¿ëÀÚÀÇ »ç¼­ÇÔ(mail file)¿¡ º¸³»Áø´Ù. ¸ÞÀÏÀÇ ³»¿ëÀº »ç¿ëÀÚ ·Î±×Àνÿ¡ ÀÚµ¿ ½ÇÇàµÇ´Â /etc/profile¿¡ ÀÇÇØ ÀÚµ¿ °Ë»çµÈ´Ù. 1.1 ¸ÞÀÏ º¸³»±â ¸ÞÀÏÀ» º¸³»±â À§Çؼ­´Â mail ¸í·É¾î¿Í ÇÔ²² º¸³¾ »ç¿ëÀÚ¸íÀ» ÁöÁ¤ÇÑ´Ù. ±×ÈÄ mail ¸í·É¾î´Â ¹ß¼ÛÇÒ ³»¿ëÀ» Å°º¸µå·Î ºÎÅÍ ¿©·¯ ¶óÀο¡ °ÉÃļ­ ÀÔ·Â ¹Þ°ÔµÇ´Âµ¥, °¢ ¶óÀÎÀÇ ³¡¿¡¼­ À» ´©¸§À¸·Î½á °è¼ÓµÈ ÀÔ·ÂÀ» ÇàÇÒ ¼ö ÀÖ´Ù. ±×¸®°í ¸Þ¼¼ÁöÀÇ ÀÔ·ÂÀº <^d>¸¦ ´©¸§À¸·Î½á Á¾·áÇÒ ¼ö ÀÖÀ¸¸ç, <^d>¸¦ ´©¸£°Ô µÇ¸é ºñ·Î¼Ò ÁöÁ¤ »ç¿ëÀÚÀÇ »ç¼­ÇÔÀ¸·Î Àü´ÞµÈ´Ù. ¸¸ÀÏ mail ¸í·É¾î°¡ ¸Þ¼¼Áö ÀԷµǴ µ¿¾È ºñÁ¤»óÀûÀ¸·Î Á¾·áÇϰԵǸé Áö±Ý±îÁö ÀÔ·ÂÇß´ø ¸Þ¼¼ÁöµéÀº dead.letter¶ó´Â À̸§À¸·Î »ç¿ëÀÚÀÇ È¨ µð·ºÅ丮¼Ó¿¡ ÀúÀåµÈ´Ù. ¶ÇÇÑ »ç¿ëÀÚ ¿¡·¯°¡ ¸Þ¼¼Áö ÀԷµ¿¾È¿¡ ÀϾ°Ô µÇ¸é, ¿¡·¯¿¡ ´ëÇÑ ¼³¸íÀ» ¼Û½ÅÀÚÂÊ¿¡ º¸³»ÁØ´Ù. ³×Æ®¿÷»óÀÇ ´Ù¸¥ À¯´Ð½º ½Ã½ºÅÛ»óÀÇ »ç¿ëÀÚ¿¡°Ô ¸ÞÀÏÀ» º¸³»±â À§Çؼ­´Â system_name!logname Çü½ÄÀ¸·Î »ç¿ëÀÚ¸íÀ» ÀÔ·ÂÇÑ´Ù. ´Ù¸¥ ½Ã½ºÅÛÀ¸·Î ¸ÞÀÏÀ» º¸³»±â À§Çؼ­´Â ±âº»ÀûÀ¸·Î BNU À¯Æ¿¸®Æ¼µéÀÇ ±¸¼ºÀÌ ¿ä±¸µÈ´Ù. BNU À¯Æ¿¸®Æ¼¿¡ ´ëÇÑ ÀÚ¼¼ÇÑ ¼³¸íÀº Â÷ÈÄ ´Ù½Ã ¼³¸íµÈ´Ù. ¶ÇÇÑ ´Ù¸¥ ½Ã½ºÅÛÀÇ À̸§À» ¾Ë±â À§Çؼ­´Â Â÷ÈÄ¿¡ ¼³¸íµÈ uuname ¸í·É¾î¸¦ »ç¿ëÇÑ´Ù. ( ¿É¼Ç ) -t ¼ö½ÅÀÚ°¡ ¸ÞÀÏÀ» ÀÐÀ»¶§ To: ¶ó´Â Çü½ÄÀÇ Çì´õ¸¦(header) Ç¥½ÃÇÑ´Ù. ( ¿¹Á¦ ) ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ mail ¸í·É¾î´Â ¼Û½ÅÇÒ ¦¢$mail user ¦¢ ¸Þ¼¼Áö¸¦ Å°º¸µå·Î ºÎÅÍ ¦¢There is an unscheduled staff meeting ¦¢ ÀÔ·ÂÀ» ¹Þ´Â´Ù. óÀ½ÀÇ ¦¢this afternoon at 1330 in room 302. ¦¢ ¸í·É¾î´Â Å°º¸µå·ÎºÎÅÍ ¦¢<^d> ¦¢ ¹Þ¾Æ ó¸®ÇÏ´Â ¿¹¸¦ ¦¢$mail user3 user4 < memo ¦¢ º¸¿©ÁØ´Ù. ±×·¯³ª µÎ¹ø° ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¿¹Á¦´Â »çÀü¿¡ »ç¿ëÀÚ°¡ ÆíÁý±â¸¦ ÅëÇØ »ý¼ºÇØ ³õÀº È­ÀÏÀÇ ³»¿ëÀ» Å°º¸µå·ÎºÎÅÍÀÇ ÀÔ·ÂÀ» ´ë½ÅÇؼ­ ¸ÞÀÏ·Î ¹ß¼ÛÇÏ´Â ¹æ½ÄÀ» º¸¿©ÁØ´Ù. 1.2¸ÞÀÏ Àб⠽ýºÅÛÀº »ç¿ëÀÚ°¡ ·Î±×ÀÎ ÀÛ¾÷À» ½ÇÇàÇÒ ¶§ »õ·Î¿î ¸ÞÀÏÀÌ ÀÖÀ» °æ¿ì¿¡ "you have mail"À̶ó´Â ¸Þ¼¼Áö¸¦ Ç¥½ÃÇÑ´Ù. ÀÌ °æ¿ì »õ·Î¿î ¸ÞÀÏÀÇ ³»¿ëÀ» Ç¥½ÃÇϱâ À§Çؼ­´Â mail ¸í·É¾î¿Í À» ÀÔ·ÂÇÑ´Ù. ±×·¯¸é ¼Û½ÅÀÚÀÇ À̸§, ¸ÞÀÏ ¼ö½Å ³¯Â¥¿Í ½Ã°£, ¸Þ¼¼ÁöÀÇ ±æÀ̸¦ ³ªÅ¸³»´Â Ç¥Á¦°¡ Ç¥½ÃµÈ´Ù. À̶§ °¡Àå ÃÖ±Ù¿¡ ¼ö½ÅµÈ ¸Þ¼¼Áö¸¦ ¸ÕÀú Ç¥½ÃÇÑ´Ù. ³»¿ëÀÌ ±ä ¸ÞÀÏÀ» È®ÀÎÇÒ °æ¿ì¿¡´Â ¶Ç´Â <^s>¿Í <^q> Å°¸¦ ÀÌ¿ëÇÏ¿© ½ºÅ©¸°À¸·ÎÀÇ Ãâ·ÂÀ» Á¤Áö¹× °è¼ÓÇÒ ¼ö ÀÖ´Ù. ÇϳªÀÇ ¸ÞÀÏÀÌ ¸ðµÎ Ç¥½ÃµÈÈÄ¿¡´Â ?¶ó´Â ÇÁ·ÒÇÁÆ®°¡ Ç¥½ÃµÈ´Ù. À̶§ ´ÙÀ½ ¸ÞÀÏÀ» Ç¥½ÃÇϱâ À§Çؼ­´Â ? ÇÁ·ÒÇÁÆ®°¡ Ç¥½ÃµÈÈÄ ¸¦ ÀÔ·ÂÇÑ´Ù. mail ÇÁ·Î±×·¥À» ½ÇÇàÇÏ´Â Áß°£¿¡¼­ ¸î°¡ÁöÀÇ ¸í·É¾î¸¦ »ç¿ëÇÒ ¼ö ÀÖ´Ù. ¿¹¸¦µé¸é, ¸Þ¼¼Áö¸¦ »èÁ¦Çϰųª, »èÁ¦µÈ °ÍÀ» º¹±¸Çϰųª, ±âº» »ç¼­ÇÔ¿¡ ÀúÀåÇÏ´Â ÀÛ¾÷À» ÇÒ ¼ö ÀÖ´Ù. ¸ÞÀÏ ÇÁ·ÒÇÁÆ®¿¡¼­ »ç¿ë °¡´ÉÇÑ ¸í·É¾î¸¦ È®ÀÎÇϱâ À§Çؼ­´Â ?¸¦ ÀÔ·ÂÇÑ´Ù. ±×¸®°í º¯°æ »çÇ×À» ÀúÀåÇÏ°í, ¸ÞÀÏÀ» Á¾·áÇϱâ À§Çؼ­´Â q¸¦ ÀÔ·ÂÇÏ°í, º¯°æ »çÇ×À» ÀúÀåÇÏÁö ¾Ê°í Á¾·áÇϱâ À§Çؼ­´Â x¸¦ ÀÔ·ÂÇÑ´Ù. ( ¿É¼Ç ) -p º°µµÀÇ ÇÁ·ÒÇÁÆ® ¾øÀÌ ¸ðµç ¸Þ¼¼ÁöµéÀ» Ç¥½ÃÇÑ´Ù. -r °¡Àå ¿À·¡Àü¿¡ ¼ö½ÅµÈ ¸ÞÀϺÎÅÍ Ç¥½ÃÇÑ´Ù. -e »õ·Î¿î ¸ÞÀÏ ¼ö½Å ¿©ºÎ¸¦ °Ë»çÇÑ´Ù. ¸Þ¼¼Áö°¡ Ç¥½ÃµÇÁö ¾Ê´Â´Ù. -Fuser ¼ö½ÅµÈ ¸ÞÀÏÀ» ÁöÁ¤ÇÑ »ç¿ëÀÚ¿¡ º¸³½´Ù. ( ¿¹Á¦ ) ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢you have mail ¦¢ ¦¢$mail ¦¢ ¦¢1 letters found in /ver/mail/userb, 0 scheduled for deletion, ¦¢ ¦¢0 newly arrived ¦¢ ¦¢> 1 340 userb Thu Aug 27 10:51 EDT 1991 ¦¢ ¦¢? ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ »ç¿ëÀÚ°¡ ·Î±×Àνÿ¡ À¯´Ð½º ½Ã½ºÅÛÀÌ »ç¿ëÀÚÀÇ ½Å±Ô ¸ÞÀÏ ¿©ºÎ¸¦ È®ÀÎÇؼ­, ½Å±Ô ¸ÞÀÏÀÌ ÀÖÀ» °æ¿ì¿¡ "you have mail"À̶ó´Â ¸Þ¼¼Áö¸¦ Ç¥½ÃÇØ ÁØ´Ù. ÀÌ °æ¿ì »ç¿ëÀÚ°¡ ½Å±Ô ¸ÞÀÏÀ» È®ÀÎÄÚÀÚ ÇÒ °æ¿ì¿¡´Â mail ¸í·É¾î¸¦ ÀÌ¿ëÇÑ´Ù. ¸í·É¾î¸¦ ½ÇÇàÇÏ¸é ¿¹Á¦¿Í °°ÀÌ ¼ö½ÅµÈ ¸ÞÀϵéÀÇ ¸ñ·ÏÀ» Ç¥½ÃÇØÁÖ°í, »ç¿ëÀÚ°¡ °è¼ÓµÈ ÀÛ¾÷À» ¼öÇàÇÒ ¼ö ÀÖµµ·Ï ? ÇÁ·ÒÇÁÆ®¸¦ Ç¥½ÃÇØ ÁØ´Ù. --------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­´Â À¯´Ð½º °í¼º´É ÀüÀÚ ¿ìÆí (Mailx) ±â´É¿¡ ´ëÇؼ­ ¼³¸íÇØ µå¸®°Ú½À´Ï´Ù. --------------------------------------------------------------------------- #44 À¯´Ï½Ã½º (adunis2 ) °í¼º´É ÀüÀÚ¿ìÆí ¼Û¼ö½Å ±â´É: mailx 02/27 10:34 184 line °í¼º´É ÀüÀÚ¿ìÆí(mailx) ±â´É --------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. --------------------------------------------------------------------- 1. °í¼º´É ÀüÀÚ¿ìÆí(mailx) ±â´É mailx ¸ÞÀÏÀ» ¼Û½ÅÇÏ°í, ¼ö½ÅÇϱâ À§ÇØ °í¼º´É ÀüÀÚ¿ìÆí À¯Æ¿¸®Æ¼ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ mailx [-option] user(s) ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ mailx¸¦ »ç¿ëÇÏ¿© ¸ÞÀÏÀ» ¼Û¼ö½ÅÇϱâ À§ÇÑ ÀýÂ÷´Â mail ±â´É°ú À¯»çÇÏ´Ù. mailx´Â mail ±â´É¿¡¼­´Â »ç¿ëºÒ°¡´ÉÇÑ º°µµÀÇ ±â´ÉÀ» Á¦°øÇÑ´Ù. ´õ¿ì±â mailx´Â »ç¿ëÀÚ È¯°æÀÇ ÀçÁ¤ÀÇ ±â´ÉÀ» Á¦°øÇÑ´Ù. ½Ã½ºÅÛ °ü¸®ÀÚ´Â ¸ðµç »ç¿ëÀÚ¸¦ À§ÇØ, ½Ã½ºÅÛ È­ÀÏÀÎ /etc/mail/mailx.rc È­ÀÏ¿¡ ¸ÞÀÏ ¸í·É¾î ¶Ç´Â º¯¼öµéÀ» ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù. »ç¿ëÀڴ Ȩ µð·ºÅ丮³»¿¡ ´Ù¸¥ ¸ÞÀÏ º¯¼ö ¶Ç´Â ¸í·É¾î¸¦ ¼±¾ðÇÏ°í ÀÖ´Â .mailrc¶ó ºÒ¸®¿ì´Â È­ÀÏÀ» ¶ÇÇÑ »ý¼ºÇÒ ¼ö ÀÖ´Ù. ¸ÞÀÏÀÇ ¼Û½Å mailx´Â ÀÚµ¿ÀûÀ¸·Î ¸ÞÀÏÀÇ ÁÖÁ¦¸¦ ¹¯´Â ÇÁ·ÒÇÁÆ®¸¦ Ç¥½ÃÇÑ´Ù. mailx´Â ¶ÇÇÑ ¸ÞÀÏÀÇ ¸Þ¼¼Áö¸¦ ÀÔ·ÂÇÏ´Â µ¿¾È »ç¿ëÇÏ´Â tield escapes(~)¶ó ºÒ¸®¿ì´Â ¸î°³ÀÇ ¸í·É¾î¸¦ Á¦°øÇÑ´Ù. ÀÌ·¯ÇÑ ¸í·É¾îµéÀº ¸ÞÀÏÀ» ÀÔ·ÂÇÏ´Â µ¿¾È°ú ¸ÞÀÏÀ» º¸³»±â Àü¿¡ ¸ÞÀÏÀ» ÆíÁýÇÒ¼ö ÀÖµµ·Ï ÇØÁØ´Ù. system_name!lognameÀ̶ó´Â Çü½ÄÀ¸·Î ¸ÞÀÏÀ» ³×Æ®¿÷»óÀÇ ´Ù¸¥ ½Ã½ºÅÛ»óÀÇ »ç¿ëÀÚ¿¡°Ô ¹ß¼ÛÇÒ ¼ö ÀÖ´Ù. mail ±â´É¿¡¼­ ¼³¸íÇßµíÀÌ, ´Ù¸¥ ½Ã½ºÅÛ»óÀÇ »ç¿ëÀÚ¿¡°Ô ¸ÞÀÏÀ» ¹ß¼ÛÇϱâ À§Çؼ­´Â BNU À¯Æ¿¸®Æ¼ÀÇ ±¸¼ºÀÌ ¿ä±¸µÈ´Ù. BNU´Â Â÷ÈÄ¿¡ ´Ù½Ã ¼³¸íµÈ´Ù. ¶ÇÇÑ ³×Æ®¿÷»óÀÇ ½Ã½ºÅÛ¸íÀ» È®ÀÎÇϱâ À§Çؼ­´Â uuname ¸í·É¾î¸¦ »ç¿ëÇÑ´Ù. mailx¸¦ »ç¿ëÇÏ¿© ¸ÞÀÏÀ» º¸³»±â À§ÇÑ ÀýÂ÷´Â ÀÌÈÄ¿¡ ¼³¸íµÈ´Ù. ¸ÞÀÏ Àб⠻õ·Î¿î ¸ÞÀÏÀÌ ¼ö½ÅµÇ¾úÀ» °æ¿ì "you have mail"À̶ó´Â ¸Þ¼¼Áö°¡ Ç¥½ÃµÈ´Ù. mailx´Â ¸ÞÀÏÀ» °ü¸®Çϱâ À§ÇÑ ´Ù¾çÇÑ ¸í·É¾îµéÀ» Á¦°øÇÑ´Ù. mailx¸¦ »ç¿ëÇÏ¿© ¸ÞÀÏÀ» Àбâ À§ÇÑ ¹æ½ÄÀº ÀÌÈÄ¿¡ ¼³¸íµÈ´Ù. 2. mailx - ¸ÞÀÏÀÇ ¼Û½Å mailx¸¦ »ç¿ëÇÏ¿© ¸ÞÀÏÀ» Àü¼ÛÇϱâ À§ÇÑ ¸í·É¾î Çü½ÄÀº ´ÙÀ½°ú °°´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ mailx [-option] user(s) ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ mailx ¸í·ÉÀÌ ¿ä±¸µÇ¸é ÁÖÁ¦¸¦ ¹°¾îº¸´Â subject ÇÁ·ÒÇÁÆ®°¡ Ç¥½ÃµÈ´Ù. ÀÌ·± ÁÖÁ¦´Â -s ¿É¼ÇÀ» ÁöÁ¤ÇÔÀ¸·Î½á ¸í·É¾î ¶óÀλ󿡼­ ¹Ì¸® ÁöÁ¤ÇÒ ¼öµµ ÀÖ´Ù. ¸ÞÀÏÀÇ ÅؽºÆ®¸¦ ÀÔ·ÂÇÏ°í, °¢ ¶óÀÎÀÇ ³¡¿¡¼­ À» ´©¸¥´Ù. ±×¸®°í ÅؽºÆ®ÀÇ ÀÔ·ÂÀ» ³¡³»°í ¸ÞÀÏÀ» ¼Û½ÅÇϱâ À§Çؼ­´Â <^d>¸¦ ´©¸£°Å³ª, ¶óÀÎÀÇ Ã³À½¿¡¼­ ~q¸í·É¾î¸¦ ÀÔ·ÂÇÑ´Ù. tield escape(~)¶ó ºÒ¸®¿ì´Â ´Ù¾çÇÑ mailx ¸í·É¾îµéÀº ¸ÞÀÏÀÇ ÅؽºÆ®¸¦ ÀÔ·ÂÇÏ´Â µ¿¾ÈÀÇ ºÎ°¡ÀûÀÎ ±â´ÉÀ» Á¦°øÇÑ´Ù. ÀÌ·¯ÇÑ mailx ¸í·É¾îµéÀº ¶óÀÎÀÇ Ã³À½¿¡ ÀÔ·ÂÇÑ´Ù. ºó¹øÇÏ°Ô »ç¿ëÇÏ´Â ÀÔ·Â ¸í·É¾î´Â ¾Æ·¡¿Í °°´Ù. ±×¸®°í ÀÛ¾÷Áß »ç¿ë °¡´ÉÇÑ mailxÀÇ tield escape ¸í·É¾îµéÀº ~?¸¦ »ç¿ëÇÏ¿© È®ÀÎÇÒ ¼ö ÀÖ´Ù. tield escape (ÀÔ·Â ¸í·É¾î) ~e ¶Ç´Â ~v ¸ÞÀÏÀÇ ÅؽºÆ®¸¦ ±³Á¤ÇÏ°í, Á¶ÀÛÇϱâ À§ÇØ ÆíÁý±â¸¦ È£ÃâÇÑ´Ù. ~e ¸¦ À§ÇÑ ÆíÁý±â´Â edÀ̸ç, ~v¸¦ À§ÇÑ ÆíÁý±â´Â viÀÌ´Ù. (À̵éÀº .profileÀ̳ª mailx ±âµ¿ È­ÀÏÀÎ .mailrc È­ÀÏ¿¡ ÀÇÇØ ¼öÁ¤µÉ ¼ö ÀÖ´Ù.) ~p ~p ¸í·É¾î¸¦ ÀÔ·ÂÇϱâ Àü±îÁöÀÇ ¸Þ¼¼Áö¸¦ ÇÁ¸°Æ® ¶Ç´Â ¹Ì¸® Ç¥½ÃÇØ º»´Ù. ~r file ÁöÁ¤ÇÑ È­ÀÏÀÇ ³»¿ëÀ» Çö À§Ä¡·Î ÀÐ¾î µéÀδÙ. ~h ¼öÁ¤µÉ¼ö ÀÖ´Â ¸ðµç Ç¥Á¦(header) Á¤º¸¸¦ Ç¥½ÃÇÑ´Ù. ~t user(s) ¹ß¼ÛÀÚ ¸ñ·Ï¿¡ »ç¿ëÀÚ À̸§À» Ãß°¡ÇÑ´Ù. ~c user(s) »çº» º¹»ç(carbon copy) ¸ñ·Ï¿¡ »ç¿ëÀÚ À̸§À» Ãß°¡ÇÑ´Ù. ~b user(s) ¼öÃëÀÎ ºÒ¸í º¹»ç(blind copy) ¸ñ·Ï¿¡ »ç¿ëÀÚ À̸§À» Ãß°¡ÇÑ´Ù. ~!command À¯´Ð½º ¸í·É¾î¸¦ ½ÇÇàÇϱâ À§ÇØ ½©·Î Àá½Ã ºüÁ®³ª°£´Ù. ~q ¸ÞÀÏ ÀÛ¾÷À» ³¡³½´Ù. Áö±Ý±îÁö ÆíÁýÇÑ ¸ÞÀÏÀÇ ³»¿ëÀº »ç¿ëÀÚÀÇ È¨ µð·ºÅ丮¼Ó¿¡ dead.letter¶ó´Â È­ÀÏ¿¡ ÀúÀåµÈ´Ù. ~x ¸ÞÀÏ ÀÛ¾÷À» ³¡³½´Ù. ÆíÁýÇÏ´ø ¸ÞÀÏÀÇ ³»¿ëÀº ÀúÀåµÇÁö ¾Ê´Â´Ù. ~. ÀÛ¾÷ÁßÀÌ´ø ¸ÞÀÏÀ» ¹ß¼ÛÇÏ°í, ¸ÞÀÏ ÀÛ¾÷À» Á¾·áÇÑ´Ù. ( ¿É¼Ç ) -s subject ¸í·É¾î ¶óÀο¡¼­ ¸ÞÀÏÀÇ ÁÖÁ¦¸¦ ÁöÁ¤ÇÑ´Ù. ( ¿¹Á¦ ) ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ÀÌ ¿¹Á¦´Â mailx ±â´ÉÀ» ¦¢$mailx user1 ¦¢ ÀÌ¿ëÇÏ¿© user1À̶ó´Â ¦¢Subject: Staff meeting input ¦¢ »ç¿ëÀÚ¿¡°Ô ¸ÞÀÏÀ» º¸³»°í ¦¢ ¦¢ ÀÖ´Ù. ¦¢I am enclosing the following notes ¦¢ À̶§ mailx ¸í·ÉÀ» ¦¢as input to the meeting scheduled ¦¢ ½ÇÇàÇÏ¸é ¿¹¿Í °°ÀÌ ¦¢for this afternoon ¦¢ Subject¸¦ ¹¯´Â ÇÁ·ÒÇÁÆ®°¡ ¦¢~r admin/notes ¦¢ Ç¥½ÃµÈ´Ù. ¦¢"admin/notes" 14 872 ¦¢ ¶ÇÇÑ ¸ÞÀÏÀ» ÀÔ·ÂÇÏ´Â µµÁß ¦¢ ¦¢ ~r ¸í·ÉÀ» »ç¿ëÇÏ¿© ¦¢Regret missing this meeting. Kindly ¦¢ admin/notes È­ÀÏÀÇ ³»¿ëÀ» ¦¢send a summary of the salient points. ¦¢ Àоî À§Ä¡½ÃÅ°´Â °Íµµ ¦¢~. ¦¢ º¸¿©ÁÖ°í ÀÖ´Ù. ¦¢EOT ¦¢ ¸¶Áö¸·À¸·Î ~.¸í·ÉÀ» »ç¿ëÇØ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¸ÞÀÏÀ» ¹ß¼ÛÇÏ°í ÀÖ´Ù. 3. mailx - ¸ÞÀÏ Àб⠼ö½ÅµÈ ¸ÞÀÏÀº °¢ »ç¿ëÀÚ¿¡ ´ëÇÑ µðÆúÆ® ¸ÞÀÏ »ç¼­ÇÔ È­ÀÏÀÎ /var/mail/logname¿¡ ÀúÀåµÈ´Ù. ¸ÞÀÏÀ» ÀаԵǸé, ¸ÞÀϵéÀº »ç¿ëÀÚ È¨ µð·ºÅ丮³»¿¡ mbox¶ó ºÒ¸®¿ì´Â º¸Á¶ ±â¾ï È­ÀÏ¿¡ À̵¿µÇ¾î¾ß ÇÒ °ÍÀ¸·Î Ç¥½Ã µÈ´Ù. ÀÌ·¸°Ô Ç¥½ÄµÈ ¸ÞÀϵéÀº »ç¿ëÀÚ°¡ q ¸í·É¾î¸¦ ÀÔ·ÂÇÒ °æ¿ì¿¡ mbox È­ÀÏ¿¡ ½ÇÁ¦À̵¿µÈ´Ù. »õ·Î¿î ¸ÞÀÏÀÌ ¼ö½Å µÇ¾úÀ» °æ¿ì¿¡´Â "you have mail"À̶ó´Â ¸Þ¼¼Áö°¡ Ç¥½ÃµÈ´Ù. ¸ÞÀÏÀ» Àбâ À§Çؼ­´Â mailx ¸í·É¾î¿Í À» ´©¸¥´Ù. ±×·¯¸é mailxÀÇ ¹öÀü ¹øÈ£¿Í ÇÔ²² µµ¿ò ¸Þ¼¼Áö°¡ Ç¥½ÃµÈ´Ù. ±× ´ÙÀ½ ¶óÀο¡´Â »ç¿ëÀÚ ¸ÞÀÏ È­ÀÏÀÇ À̸§, ¸ÞÀÏÀÇ °¹¼ö¿Í »óÅ Á¤º¸°¡ ÇÁ¸°Æ® µÇ°í, ¸Þ¼¼ÁöÀÇ ¸ñ·Ï°ú ¸ÞÀÏÀÇ ¼­¼úÀûÀÎ Á¤º¸°¡ µÚµû¸¥´Ù. ÇöÀç ÀÛ¾÷ ´ë»óÀÌ µÇ´Â ¸ÞÀÏÀÇ ¸ñ·Ï ¾Õ¿¡ > Ç¥½Ã°¡ ³ªÅ¸³­´Ù. ±×¸®°í ¿¬À̾î N ¶Ç´Â U¶ó´Â ¹®ÀÚ°¡ °¢ ¸ÞÀÏÀÇ »óŸ¦ Ç¥½ÃÇϴµ¥, À̶§ NÀº new, U´Â unread¶ó´Â Àǹ̸¦ ³ªÅ¸³½´Ù. ÀÌ ¹®Àڵ鿡 ¿¬ÀÌ¾î ¼Û½ÅÀÚ ¸í, ¼Û½Å ³¯Â¥¹× ½Ã°£, ¸ÞÀÏÀÇ ¶óÀμö¿Í ¹®ÀÚ¼ö¿¡ ´ëÇÑ Á¤º¸µîÀÌ °¢ ¸ÞÀϺ°·Î Ç¥½ÃµÈ´Ù. ÀÌ·± Á¤º¸µéÀ» Ç¥½ÃÇÑÈÄ, ?¸ð¾çÀÇ ¸ÞÀÏ ÇÁ·ÒÇÁÆ®°¡ ÀÚµ¿ÀûÀ¸·Î Ç¥½ÃµÈ´Ù. ¸ÞÀÏÀÇ ³»¿ëÀº À» ´©¸£°Å³ª, ¸ÞÀÏ ¸í·É¾î¸¦ »ç¿ëÇÏ¿© Ç¥½ÃÇÒ ¼ö ÀÖ´Ù. mailx ±â´ÉÀº ¼ö½ÅµÈ ¸ÞÀÏÀ» °ü¸®Çϱâ À§ÇÑ ´Ù¾çÇÑ ¸í·É¾î¸¦ Á¦°øÇÑ´Ù. ¸í·É¾îÀÇ ¸ñ·ÏÀº ¸ÞÀÏ ÇÁ·ÒÇÁÆ®¿¡¼­ ?(¹°À½Ç¥)¸¦ ÀÔ·ÂÇÔ¿¡ ÀÇÇؼ­ È®ÀÎÇÒ ¼ö ÀÖ´Ù. mailx ¸í·ÉÀ» Á¾·áÇϱâ À§Çؼ­´Â µÎ°¡Áö Ç¥ÁØ Çü½ÄÀÌ ÀÖ´Ù. q ¸í·É¾î´Â »ç¿ëÀÚÀÇ mbox È­ÀÏ·Î ÀÐÀº ¸ÞÀÏÀ» À̵¿ÇÑ´Ù. ¸ðµç ´Ù¸¥ ¸ÞÀÏ ¸í·É¾î´Â ¿µÇâÀ» ¹Þ°ÔµÈ´Ù. x ¸í·É¾î´Â ¾Æ¹«·± ¿µÇâÀ» ÁÖÁö¾Ê°í ¸ÞÀϵéÀ» »ç¼­ÇÔ¿¡ ³²°ÜµÐä ¸ÞÀÏÀ» Á¾·áÇÏ°í, º¯°æ »çÇ×À» ¹«½ÃÇÑ´Ù. ( ¿É¼Ç ) -e ¼ö½ÅµÈ ¸ÞÀÏÀÌ Àִ°¡¸¦ °Ë»çÇÑ´Ù. ¾Æ¹«·± ¸Þ¼¼Áöµµ Ç¥½ÃµÇÁö ¾Ê´Â´Ù. -f file ´ëü ¸ÞÀÏ È­ÀϷκÎÅÍ ¸ÞÀÏÀ» ÀоîµéÀδÙ. ( ´ëü ¸ÞÀÏ È­ÀÏÀº »ç¿ëÀÚ°¡ ÀÚ½ÅÀÇ ¸ÞÀÏÀ» º¸Á¸Çϱâ À§ÇØ ½Ã½ºÅÛ¿¡¼­ Á¦°øÇÏ´Â »ç¼­ÇÔÀÌ ¾Æ´Ñ ´Ù¸¥ È­ÀÏÀ» ÁöÁ¤ÇÒ ¼ö Àִµ¥, ÀÌ È­ÀÏÀ» ´ëü ¸ÞÀÏ È­ÀÏÀ̶ó ÇÑ´Ù. ) -H Ç¥Á¦(Header) ¿ä¾à Á¤º¸¸¸À» Ç¥½ÃÇÑ´Ù. -N Ç¥Á¦(Header) ¿ä¾à Á¤º¸¸¦ Ç¥½ÃÇÏÁö ¾Ê´Â´Ù. ( ¿¹Á¦ ) ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$mailx ¦¢ ¦¢mailx version 4.0 Type ? for help. ¦¢ ¦¢"/var/mail/userb": 1 message 1 new ¦¢ ¦¢>N 1 userb Thu Aug 27 10:51 10/340 ¦¢ ¦¢ ¦¢ ¦¢? ? ¦¢ ¦¢alias,group user ... declare alias for the user name ¦¢ ¦¢alternates user declare alternate names for your login ¦¢ ¦¢cd,chdir [directory] chdir to directory or home if nonegiven ¦¢ ¦¢!command shell escape ¦¢ ¦¢copy [msglist] file save messages to file without marking as saved¦¢ ¦¢delete [msglist] delete messages ¦¢ ¦¢discard,ignore header discard header field when ¦¢ ¦¢ ¦¢ ¦¢[msglist] is optional and specifies message by number, author, ¦¢ ¦¢subject or type. The default is the current message. ¦¢ ¦¢?h ¦¢ ¦¢>N 1 userb Tue Aug 27 10:51 10/340 ¦¢ ¦¢ ¦¢ ¦¢?q ¦¢ ¦¢Held 1 message in /var/mail/userb ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ À§ÀÇ ¿¹Á¦´Â mailx ¸í·ÉÀ» ÀÌ¿ëÇؼ­ ¸ÞÀÏÀ» Àд ¹æ½ÄÀ» º¸¿©ÁØ´Ù. ÇöÀç ¸ÞÀÏÀÇ »óÅ Á¤º¸°¡ mailx ¸í·É¾î¸¦ ¿ä±¸ÇÑ ½ËÁ¡¿¡¼­ ÀÚµ¿ÀûÀ¸·Î Ç¥½ÃµÈ´Ù. À§ÀÇ ¿¹¿¡¼­´Â mailx¿¡¼­ Á¦°øÇÏ´Â ³»ºÎ ¸í·É¾îµéÀ» È®ÀÎ Çϱâ À§ÇØ ? ¸í·ÉÀ» »ç¿ëÇØ Ç¥½ÃÇÏ°í ÀÖ´Ù. ¶ÇÇÑ h ¸í·É¾î¸¦ ÅëÇØ Ç¥Á¦(header) ¸¸À» Ç¥½ÃÇÏ´Â °ÍÀ» º¸¿©ÁÖ°í ÀÖÀ¸¸ç, q ¸í·É¾î¸¦ ÅëÇØ mailx¸¦ Á¾·áÇÏ´Â °ÍÀ» º¸¿©ÁØ´Ù. ±×·¯³ª ÀÌ ¿¹¿¡¼­´Â ¸ÞÀÏÀÇ ³»¿ëÀ» ÀÐÁö ¾Ê¾Ò±â ¶§¹®¿¡ °íÀ¯ÀÇ »ç¿ëÀÚ »ç¼­ÇÔ È­ÀÏ¿¡ ÀúÀåµÇ´Â °ÍÀ» º¼¼öÀÖ´Ù. --------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­´Â ÀüÀÚ¿ìÆíÀÇ º¸Á¶ ±â´Éµé¿¡ ´ëÇؼ­ ¼³¸íÇØ µå¸®°Ú½À´Ï´Ù. --------------------------------------------------------------------------- #45 À¯´Ï½Ã½º (adunis2 ) ÀüÀÚ¿ìÆí º¸Á¶ ±â´É: notify, vacation 02/27 12:14 97 line ÀüÀÚ¿ìÆí º¸Á¶ ±â´É: notify,vacation --------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. --------------------------------------------------------------------- 1. ¼ö½Å ¸ÞÀÏÀÇ ÅëÁö¹× ´Ù¸¥ È­ÀÏ·ÎÀÇ ÀúÀå ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ notify [-option] ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÀÌ ¸í·É¾î´Â »õ·Î¿î ¸ÞÀÏÀÌ ¼ö½ÅµÉ¶§ »ç¿ëÀÚ¿¡°Ô ÅëÁöÇÏ°í, ¼ö½ÅµÈ ¸ÞÀÏÀ» ÁöÁ¤ÇÑ È­ÀÏ¿¡ ÀúÀåÇÑ´Ù. ÀÌ¹Ì ¼³¸íÇÑ mesg ¸í·ÉÀÇ ¼³Á¤Àº ÅëÁö ¸Þ¼¼ÁöÀÇ Ç¥½Ã¸¦ Çã¿ëÇϰųª, ºÒ°¡´ÉÇÏ°Ô ÇÑ´Ù. notify ¸í·ÉÀº ¸ÞÀÏÀ» ´Ù¸¥ È­ÀÏ·Î º¸³»±â À§Çؼ­µµ »ç¿ëµÉ ¼ö ÀÖ´Ù. ÀÌ °æ¿ì notify ¸í·É¾î¸¦ ½ÇÇà½Ã -m ¿É¼ÇÀ» ÅëÇØ ±× È­ÀÏÀ» ÁöÁ¤ÇØ¾ß Çϴµ¥, ¸¸ÀÏ ÁöÁ¤ÇÏÁö ¾ÊÀ» °æ¿ì¿¡ »õ·Î¿î ¸ÞÀÏÀº »ç¿ëÀÚ È¨ µð·ºÅ丮 ¼ÓÀÇ .mailfile·Î º¸³»Áö°Ô µÈ´Ù. ¸í·É¾î¸¦ ½ÇÇàÇÒ ¶§¿¡ -y ¿É¼ÇÀ» ÁöÁ¤ÇÔ¿¡ ÀÇÇØ ÅëÁö ±â´ÉÀÌ ±âµ¿µÈ´Ù. -n ¿É¼ÇÀº ÅëÁö ±â´ÉÀ» ÁßÁöÇÑ´Ù. ±×¸®°í ÀÎÀÚ¾øÀÌ notify ¸í·É¾î¸¦ ½ÇÇàÇÒ °æ¿ì¿¡´Â ÇöÀçÀÇ ÅëÁö±â´É ¼³Á¤»óŸ¦ Ç¥½ÃÇÑ´Ù. ¸ÞÀÏ ¸í·É¾îÀÎ mail -F ""À» »ç¿ëÇÏ¿© ¼ö½ÅµÈ ¸ÞÀÏÀÇ ´Ù¸¥ È­ÀÏ·ÎÀÇ ÀúÀåÀ» Á¾·áÇÒ ¼ö ÀÖ´Ù. À̶§ ""´Â null ¹®ÀÚÀÌ´Ù. ( ¿É¼Ç ) -y ÅëÁö ±â´ÉÀ» ±âµ¿ÇÑ´Ù. -n ÅëÁö ±â´ÉÀ» ÁßÁöÇÑ´Ù. -m ÁöÁ¤ÇÑ È­ÀÏ¿¡ ¸ÞÀÏÀ» ÀúÀåÇÑ´Ù. ( ¿¹Á¦ ) ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$notify ¦¢ ¦¢/usr/bin/notify: Mail notification not active ¦¢ ¦¢$notify -y ¦¢ ¦¢$notify ¦¢ ¦¢/usr/bin/notify: Mail notification active ¦¢ ¦¢/usr/bin/notify: New mail message will go to '/home/user2/.mailfile' ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ À§ÀÇ ¿¹¿¡¼­ ù¹ø° notify´Â ÅëÁö ±â´É ¼³Á¤ »óŸ¦ º¸¿©ÁØ´Ù. µÎ¹ø° notify ¸í·É¾î´Â -y ¿É¼ÇÀ» »ç¿ëÇÏ¿© ÅëÁö ±â´ÉÀ» ±âµ¿ÇÏ°í ÀÖ´Ù. ±âµ¿ ¿©ºÎ´Â óÀ½ ¿¹¿Í °°ÀÌ ÇöÀç ¼³Á¤Ä¡¸¦ Ç¥½ÃÇÔÀ¸·Î½á È®ÀÎÇÒ ¼ö ÀÖ´Ù. À̶§ Ç¥½ÃµÇ´Â ¸Þ¼¼ÁöÁß µÎ¹ø° ¶óÀÎÀÌ ¼ö½ÅµÈ ¸ÞÀÏÀÌ ÀúÀåµÉ È­ÀÏÀÇ À§Ä¡¸¦ ³ªÅ¸³½´Ù´Â °ÍÀ» ÁÖ¸ñÇϱ⠹ٶõ´Ù. 2. ¼ö½ÅµÈ ¸ÞÀÏ¿¡´ëÇÑ ÀÚµ¿ ÀÀ´ä ±â´É vacation - ÀÚµ¿À¸·Î ¼ö½ÅµÈ ¸ÞÀÏ¿¡ ´ëÇÑ ÀÀ´äÀ» º¸³»°í, ¼ö½ÅµÈ ¸ÞÀÏÀ» ´Ù¸¥ È­ÀÏ¿¡ ÀúÀåÇÑ´Ù. vacation ¸í·ÉÀº ¼ö½ÅÇÑ ¸ÞÀÏÀ» ÁöÁ¤ÇÑ È­ÀÏ·Î º¸³»°í, ÀÚµ¿ÀûÀ¸·Î ¸ÞÀÏ¿¡ ´ëÇÑ ÀÀ´äÀ» ÇÑ´Ù. ¼ö½ÅµÈ ¸ÞÀÏÀº -m ¿É¼ÇÀ» »ç¿ëÇÏ¿© ƯÁ¤ È­ÀÏÀ» ÁöÁ¤ÇÑ °æ¿ì¸¦ Á¦¿ÜÇÏ°í´Â, »ç¿ëÀÚÀÇ È¨ µð·ºÅ丮¼ÓÀÇ .mailfile¿¡ ÀúÀåÇÑ´Ù. »ç¿ëÀÚÀÇ .mailfile·Î ÀúÀåÇϴµ¥ À־ÀÇ ¹®Á¦°¡ ¹ß»ýÇϸé, ¼Û½ÅÀÚ¿¡°Ô ¸ÞÀÏÀ» µÇµ¹·ÁÁÖ´Â °ÍÀ» ´ë½Å¿¡, -F ¿É¼ÇÀ» »ç¿ëÇÏ¿© ´Ù¸¥ »ç¿ëÀÚÀÇ »ç¼­ÇÔÀ¸·Î º¸³¾¼ö ÀÖ´Ù. µðÆúÆ® ÀÀ´ä ¸ÞÀÏÀº ¸í·É¾î»ó¿¡ -M ¿É¼ÇÀ» ÁöÁ¤ÇÔ¿¡ÀÇÇØ ¸ÞÀÏÀ» º¸³½ »ç¿ëÀÚ¿¡°Ô º¸³»Áø´Ù. À̸¦´ë½ÅÇØ »ç¿ëÀÚ´Â ÆíÁý±â¸¦ »ç¿ëÇÏ¿© ÀÀ´ä ¸ÞÀÏÀ» »ý¼ºÇÒ ¼ö Àִµ¥, »ç¿ëÀÚ°¡ ÀÛ¼ºÇÑ ÀÀ´ä È­ÀÏÀº ¸í·É¾î ¶óÀÎ»ó¿¡ -M ¿É¼Ç°ú ÇÔ²² ÁöÁ¤ÇÑ´Ù. »ç¿ëÀÚ È¨ µð·ºÅ丮³»ÀÇ .maillog È­ÀÏ¿¡´Â ÀÀ´ä ¸Þ¼¼Áö¸¦ º¸³½ »ç¿ëÀڵ鿡 ´ëÇÑ ±â·ÏµéÀÌ º¸Á¸µÈ´Ù. »ç¿ëÀÚ ÁöÁ¤ ¸ÞÀÏ È­ÀÏ ¼³Á¤Àº mail -F "" ¸í·ÉÀ» »ç¿ëÇÏ¿© ÁßÁöÇÒ ¼ö ÀÖ´Ù. À̶§ ""´Â nullÀ» ÀǹÌÇÑ´Ù. ( ¿É¼Ç ) -F user ¼ö½ÅµÈ ¸ÞÀÏÀ» ³Ñ°ÜÁÙ »ç¿ëÀÚ¸¦ ÁöÁ¤ÇÑ´Ù. -l log_file ÀÀ´ä ¸Þ¼¼Áö¸¦ ¹ß¼ÛÇÑ »ç¿ëÀÚÀÇ ±â·ÏÀ» ÀúÀåÇÒ È­ÀÏÀ» ÁöÁ¤ÇÑ´Ù. -m mail_file ¼ö½ÅµÈ ¸ÞÀÏÀ» ÀúÀåÇÒ ¸ÞÀÏ È­ÀÏÀ» ÁöÁ¤ÇÑ´Ù. -M reply_file »ç¿ëÀÚ°¡ ÀÛ¼ºÇÑ ÀÀ´ä È­ÀÏÀ» ÁöÁ¤ÇÑ´Ù. ( µðÆúÆ® ÀÀ´ä È­ÀÏ ¿¹Á¦ ) ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢From user2 Mon Oct 7 15:59 1991 ¦¢ ¦¢Subject: AUTOANSWERED!!! ¦¢ ¦¢Content-Type: text ¦¢ ¦¢Content-Length: 238 ¦¢ ¦¢ ¦¢ ¦¢I am on vacation. I will read (and answer if necessary) ¦¢ ¦¢your e-mail message when I return. ¦¢ ¦¢ ¦¢ ¦¢This message was generated automatically and will ¦¢ ¦¢receive it only once, although all the messages you send ¦¢ ¦¢me while I am away WILL be saved. ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ --------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­´Â À¯´Ð½º ½Ã½ºÅÛ Ç¥ÁØ µð·ºÅ丮¿Í È­ÀÏÀ» ¼Ò°³ÇÏ°Ú½À´Ï´Ù. --------------------------------------------------------------------------- #46 À¯´Ï½Ã½º (adunis2 ) À¯´Ð½º Ç¥ÁØ µð·ºÅ丮¹× È­Àϵé 02/28 08:59 107 line À¯´Ð½º ½Ã½ºÅÛ Ç¥ÁØ µð·ºÅ丮¹× È­ÀÏ --------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. --------------------------------------------------------------------- 1. Ç¥ÁØ µð·ºÅ丮 /bin /usr/bin µð·ºÅ丮·Î ½Éº¼¸¯ ¸µÅ©µÇ¾î ÀÖ´Ù. ÀÌ µð·ºÅ丮´Â ÀÌÀü ¹öÀüÀÇ À¯´Ð½º¿ÍÀÇ È£È¯À» À§Çؼ­»ý¼ºµÇ´Â µð·ºÅ丮ÀÌ´Ù. /etc ºÎÆà ÀýÂ÷, ½Ã½ºÅÛ ±âµ¿, ½Ã½ºÅÛ Á¾·á¿Í µðÆúÆ® ·Î±×Àο¡ °ü·ÃµÈ µð·ºÅ丮µé°ú È­ÀϵéÀÌ µé¾îÀÖ´Â ½Ã½ºÅÛ °ü¸®ÀÚ¿ë µð·ºÅ丮ÀÌ´Ù. ÀÌ µð·ºÅ丮»óÀÇ È­ÀϵéÀº º¸Åë ¾Æ½ºÅ°(ASCII) È­ÀϵéÀ̸ç, ÄÄÇ»ÅÍ ¸ðµ¨ÀÇ Á¾·ù¿¡ Á¾¼ÓµÈ´Ù. ´ë´Ù¼öÀÇ È­ÀϵéÀº °³°³ÀÇ ÄÄÇ»ÅÍ¿¡ ´ëÇؼ­ À籸¼ºÇÒ ¼ö ÀÖ´Ù. /dev Ư¼öÇÑ ÀÔÃâ·Â(I/O) È­ÀϵéÀÌ µé¾î ÀÖ´Ù. ÇÏµå µð½ºÅ©, µð½ºÄÏ, Å͹̳Î, ÇÁ¸°ÅÍ¿Í ÀÚ±â Å×ÀÌÇÁ¸¦ Æ÷ÇÔÇÑ °¢Á¾ÀÇ ÀÔÃâ·Â ÀåÄ¡·Î ¶Ç´Â ÀÔÃâ·Â ÀåÄ¡·Î ºÎÅÍ µ¥ÀÌŸ¸¦ Àü¼Û, ¼ö½ÅÇϱâ À§ÇØ ¿ä±¸µÇ´Â ºí·° È­ÀÏ°ú ¹®ÀÚ È­ÀϵéÀÌ´Ù. /hinv Çϵå¿þ¾î ±¸¼º È­ÀÏÀÌ´Ù. /hinv µð·ºÅ丮´Â À¯´Ï½Ã½º °íÀ¯ÀÇ È­ÀÏ ½Ã½ºÅÛ¿¡ ´ëÇÑ ¸¶¿îÆ®Æ÷ÀÎÆ®(mount point)ÀÌ´Ù. Çϵå¿þ¾î ¸ñ·Ï È­ÀϵéÀÌ (Hardware Inventory File) µé¾î ÀÖ´Ù. /home »ç¿ëÀÚÀÇ È¨ µð·ºÅ丮µéÀÌ À§Ä¡ÇÏ´Â µðÆúÆ® µð·ºÅ丮ÀÌ´Ù. /install ¼ÒÇÁÆ®¿þ¾îÀÇ ¼³Ä¡¿Í »èÁ¦¸¦ À§ÇÑ À¯Æ¿¸®Æ¼ ÆåÅ°ÁöµéÀ» žÀçÇϱâ À§Çؼ­ °ü¸®ÀÚ¿ë À¯Æ¿¸®Æ¼ÀÎ sysadm À¯Æ¿¸®Æ¼¿¡ ÀÇÇØ »ç¿ëµÇ´Â, µð·ºÅ丮ÀÌ´Ù. /lib /usr/lib µð·ºÅ丮·Î ½Éº¼¸¯ ¸µÅ©µÇ¾î ÀÖ´Ù. ÀÌ µð·ºÅ丮´Â ÀÌÀü ¹öÀüÀÇ À¯´Ð½º¿ÍÀÇ È£È¯À» À§Çؼ­ »ý¼ºµÇ´Â µð·ºÅ丮ÀÌ´Ù. /mls audit trailing°ú °ü·ÃµÈ ¸í·É¾îµé°ú À¯Æ¿¸®Æ¼µéÀÌ µé¾îÀÖ´Â ´Ù´Ü°è º¸¾È µð·ºÅ丮ÀÌ´Ù. (Multi Level Security directory) 2. Ç¥ÁØ È­ÀÏ /etc/cron.d/at.allow at °ú batch ¸í·É¾î¸¦ »ç¿ë °¡´ÉÇÑ »ç¿ëÀÚÀÇ ¸ñ·ÏÀÌ µé¾î ÀÖ´Â È­ÀÏÀÌ´Ù. /etc/group »ç¿ëÀÚ ±×·ìÀ» Á¦¾îÇϱâ À§ÇÑ È­ÀÏ. /etc/inittab °³°³ÀÇ ½Ã½ºÅÛ ·¹º§¿¡ Á¤ÀÇµÈ ÇÁ·Î¼¼½º¸¦ ½ÇÇàÇϱâ À§ÇÑ ½© ½ºÅ©¸³Æ® È­ÀÏ. /etc/issue ·Î±×ÀÎ Á÷Àü¿¡ Ç¥½ÃµÉ ¸Þ¼¼ÁöµéÀ» ¼±¾ðÇÏ°í ÀÖ´Â È­ÀÏ. /etc/motd ·Î±×ÀÎ Á÷ÈÄ¿¡ Ç¥½ÃµÉ ¸Þ¼¼ÁöµéÀ» ¼±¾ðÇÏ°í ÀÖ´Â È­ÀÏ. /etc/passwd ½Ã½ºÅÛ »ç¿ëÀÚ¸¦ Á¦¾îÇϱâ À§ÇÑ È­ÀÏ /etc/profile ½Ã½ºÅÛ Â÷¿øÀÇ »ç¿ë ȯ°æÀ» Á¤ÀÇÇÏ°í ÀÖ´Â È­ÀÏ. /etc/shadow »ç¿ëÀÚ°¡ ¿î¿µÇÏ°í ÀÖ´Â Æнº¿öµå¸¦ Á¦¾îÇϱâ À§ÇÑ È­ÀÏ. /etc/ttydefs Å͹̳ÎÀ» Á¢¼ÓÇÏ°í ÀÖ´Â Åë½Å ¶óÀÎÀ» Á¦¾îÇϱâ À§ÇÑ È­ÀÏ. /usr/lib/saf/ttymon Å͹̳ΠÆ÷Æ®µé¿¡ ´ëÇÑ °ü¸®¿ë ÇÁ·Î±×·¥ È­ÀÏ(Æ÷Æ® ¸ð´ÏÅÍ). /usr/lib/saf/sac Æ÷Æ® ¸ð´ÏÅ͵éÀ» ±âµ¿¹× Á¦¾îÇϱâ À§ÇÑ °ü¸®¿ë ÇÁ·Î±×·¥ È­ÀÏ. ( À̸¦ Service Access Controller¶ó ÇÑ´Ù. ) /usr/lib/terminfo Å͹̳Π¼Ó¼ºµéÀ» ¼±¾ðÇÏ°í ÀÖ´Â È­ÀÏ. ## ±âŸÀÇ ½Ã½ºÅÛ µð·ºÅ丮¹× ½Ã½ºÅÛ È­ÀϵéÀº ±×µé¿¡ »óÀÀÇÏ´Â °­Àǽÿ¡ ÀÚ¼¼È÷ ¼³¸íµÉ °ÍÀÌ´Ù. ## --------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­´Â À¯´Ð½º ±âº» ³×Æ®¿÷ À¯Æ¿¸®Æ¼µé¿¡ ´ëÇؼ­ ¼Ò°³ÇÏ°Ú½À´Ï´Ù. ( Áï; Basic Networking Utilities ) --------------------------------------------------------------------------- #47 À¯´Ï½Ã½º (adunis2 ) BNU(Basic Networking Utility) ÀÏ¹Ý °³¿ä 02/28 13:41 198 line BNU(Basic Networking Utilities)ÀÇ ÀÏ¹Ý °³¿ä --------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. --------------------------------------------------------------------- À̹ø °­ÀÇ¿¡¼­´Â Basic Networking Utilities(BNU)¿¡ °üÇÑ °ü¸® ¸í·É ¼öÁØÀÇ ÀÎÅÍÆäÀ̽º¿¡ ´ëÇؼ­ ¼³¸íÇÑ´Ù. BNU´Â À¯´Ð½º ¿î¿µÃ¼Á¦¸¦ ÀÌ¿ëÇÏ´Â ÄÄÇ»ÅÍ°£ÀÇ ±×¸®°í ¿ø°ÝÁö ´Ü¸»°úÀÇ Åë½ÅÀ» Çã¿ëÇÑ´Ù. BNU´Â ÄÄÇ»Å͵鰣ÀÇ È­ÀÏÀÇ º¹»ç(uucp,uuto), ¿ø°ÝÁö ½Ã½ºÅÛÀ¸·ÎÀÇ ·Î±×ÀÎ¹× ¿ø°ÝÁö ½Ã½ºÅÛ»ó¿¡¼­ÀÇ ¸í·É¾î ½ÇÇà(cu,ct,uux)µîÀ» ÇÒ¼öÀÖ°Ô ÇØÁØ´Ù. 1. ±âº»ÀûÀÎ ³×Æ®¿öÅ· °úÁ¤ BNU ÆÑÅ°Áö¸¦ ÀûÀýÈ÷ ¼³Ä¡¹× ±¸¼ºÀ» ÇÏ°í³ª¸é, À¯´Ð½º ¿î¿µÃ¼Á¦Á¦¸¦ »ç¿ëÇÏ´Â ½Ã½ºÅ۵鰣¿¡ Åë½ÅÀÌ °¡´ÉÇÏ°Ô µÈ´Ù. ¿ì¼±Àº BNU°¡ ½Ã½ºÅÛ°£ÀÇ Åë½ÅÀ» ¼öÇàÇÏ´Â °úÁ¤¿¡ ´ëÇÑ ÀϹÝÀûÀÎ °³¿ä¿¡ ´ëÇØ ¼³¸íÇÑ´Ù. 1) ½Ã½ºÅÛ»óÀÇ »ç¿ëÀÚ°¡ ¿ø°ÝÁö ½Ã½ºÅÛ°ú È­ÀÏ Àü¼Û ¶Ç´Â ¿ø°ÝÁö ½Ã½ºÅÛ»óÀÇ ¸í·É¾î ½ÇÇà ¿ä±¸¸¦ ³»¸°´Ù (´Ü°è 1). ±×·¯¸é ¿ø°ÝÁö ½Ã½ºÅÛ¿¡ ´ëÇÑ ¾ï¼¼½º °¡´É ¿©ºÎ¸¦ È®ÀÎÇϱâ À§Çؼ­ ÀÚü ½Ã½ºÅÛ»óÀÇ ¿©·¯°¡Áö BNU µ¥ÀÌŸº£À̽º Áö¿ø È­ÀÏÀ» ÂüÁ¶ÇÑ´Ù. ÀÌ ´Ü°è´Â »ç¿ëÀÚ ¿äûÀ» ÀÚü ½Ã½ºÅÛ»óÀÇ ½ºÇ® ¿µ¿ª¿¡ ´ëÇÑ Å¥(queue) 󸮸¦ ¼öÇàÇÏ°í ´ÙÀ½ ´Ü°è¸¦ ¼öÇàÇÑ´Ù. 2) uucico ·çƾÀÌ ÀÚµ¿À¸·Î ½ÇÇàµÈ´Ù (´Ü°è 2). À̶§ ¿ø°ÝÁö ½Ã½ºÅÛÀ¸·ÎÀÇ µµ´Þ½Ã±â, ¿ø°ÝÁö ½Ã½ºÅÛ°úÀÇ ¸µÅ© ±¸Ãà ¹æ½Ä, ÀÚü¹× ¿ø°ÝÁö ½Ã½ºÅÛ°£ÀÇ µ¥ÀÌŸ È帧 ó¸® ¹æ½Ä¹× ¿ø°ÝÁö ½Ã½ºÅÛÀ¸·ÎÀÇ Åë½ÅÀ» À§ÇÑ ÃÖ´ë µ¿½Ã ¿äû °¹¼öÀÇ µµ´Þ ¿©ºÎµîÀ» °áÁ¤Çϱâ À§ÇØ ¿©·¯°¡Áö BNU µ¥ÀÌŸº£À̽º Áö¿ø È­ÀÏÀ» Àд´Ù. 3) Åë½ÅÀ» ¿ä±¸Çϴ ȣÃâ½ÅÈ£°¡ ¿ø°ÝÁö ½Ã½ºÅÛ¿¡ ¼ö½ÅµÇ¸é, ¿ø°ÝÁö ½Ã½ºÅÛ»óÀÇ uucico ·çƾÀÌ ÀÚµ¿À¸·Î ½ÃÀ۵ȴÙ(´Ü°è 3). ±âµ¿µÈ ¿ø°ÝÁö ½Ã½ºÅÛ»óÀÇ uucico ·çƾÀº ½Ã½ºÅÛ ¾ï¼¼½º Çã¿ë ¿©ºÎ¹× Çã¿ë½ÃÀÇ Á¶Ä¡»çÇ׵ ´ëÇÑ Á¤º¸¸¦ È®ÀÎÇϱâ À§ÇØ, ÀÚ½ÅÀÇ BNU µ¥ÀÌŸº£À̽º Áö¿ø È­ÀÏÀ» Àд´Ù. 4) ¼ö½ÅµÈ ³»¿ëµéÀ» ó¸®Çϱâ À§ÇØ ÀÚüÀÇ ½ºÇ® ¿µ¿ª¿¡ ÀúÀåÇÑ´Ù. ¼ö½ÅµÈ ³»¿ëÀ» ó¸®Çϱâ À§ÇØ, uuxqt ·çƾÀÌ ±âµ¿µÇ¾î 󸮸¦ ¼öÇàÇÑ´Ù. ´ÙÀ½Àº À§¿¡¼­ ¼³¸íÇÑ BNU ó¸® °úÁ¤À» ±×¸²À¸·Î º¸¿©ÁÖ´Â °ÍÀÌ´Ù. < »ç¿ëÀÚ°¡ ¼Ò¼ÓµÈ ½Ã½ºÅÛ > < ¿ø°ÝÁö ½Ã½ºÅÛ > BNU ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦£¦¡¦¡¦¡¦¡¦¡¦¤ µ¥ÀÌŸº£À̽º¦¡¦© uucp/uux ¦¢ ¦¢ uuxqt ¦¢ È­ÀÏµé ¦¦¦¡¦¡¦¡¦½¦¡¦¡¦¥ (´Ü°è1) ¦¦¦¡¦¡¦½¦¡¦¡¦¥ (´Ü°è4) ¦­ ¦­ ¦£¦¡¦¡¦¡¦¡¦¿¦¡¦¡¦¡¦¤ ¦£¦¡¦¡¦¡¦¿¦¡¦¡¦¡¦¤ ¦¢ spool/request ¦¢ ¦¢ spool/request¦¢ ¦¦¦¡¦¡¦¡¦¡¦½¦¡¦¡¦¡¦¥ ¦¦¦¡¦¡¦¡¦½¦¡¦¡¦¡¦¥ ¦­ ¦­ ¦­ ¦­ ¦­ ¦­ (´Ü°è2) ¦­ ¦­ (´Ü°è3) BNU ¦£¦¡¦¡¦¿¦¡¦¡¦¤ ¦£¦¡¦¡¦¿¦¡¦¤ BNU µ¥ÀÌŸº£À̽º< ¦¡¦© uucico ¦§¢Æ¢Æ¢Æ¢Æ¢Æ¢Æ¢Æ¢Æ¦© uucico ¦§¦¡> µ¥ÀÌŸº£À̽º È­ÀÏµé ¦¦¦¡¦¡¦¡¦¡¦¡¦¥ ¦¦¦¡¦¡¦¡¦¡¦¥ È­Àϵé 1.1 °ü¸® ÇÁ·Î±×·¥ ´ëºÎºÐÀÇ °ü¸® ÇÁ·Î±×·¥Àº ±âº»ÀûÀÎ ³×Æ®¿öÅ· ½©½ºÅ©¸³Æ®(ÀÏÁ¾ÀÇ ½©ÇÁ·Î±×·¥) °ú ÇÔ²² /usr/bin/uucp µð·ºÅ丮³»¿¡ À§Ä¡ÇÑ´Ù. ±×·¯³ª uulog¶ó´Â È­ÀÏÀº /usr/bin µð·ºÅ丮 ¼Ó¿¡ À§Ä¡ÇÑ´Ù. 1.2 ³×Æ®¿öÅ· ÇÁ·Î±×·¥(À̸¦ ³×Æ®¿öÅ· DaemonÀ̶ó ÇÑ´Ù. ) BNU´Â ¼¼°³ÀÇ DaemonÀ» °¡Áö°í ÀÖ´Ù. DaemonÀº ½Ã½ºÅÛ»ó¿¡¼­ º¸ÆíÈ­µÈ ÀÛ¾÷À» °è¼ÓÀûÀ¸·Î ¼öÇàÇϱâ À§ÇÑ ÇÁ·Î±×·¥ ÇüŸ¦ ¸»Çϸç, ¹é±×¶ó¿îµå ó¸® ¹æ½ÄÀ¸·Î ¼öÇàµÈ´Ù. uucico DaemonÀº ³×Æ®¿÷ Á¢¼ÓÀ» À§ÇØ ÀÌ¿ëµÇ´Â ÀåºñÀÇ ¼±ÅÃ, ¿ø°ÝÁö ÄÄÇ»ÅÍ·ÎÀÇ ¿¬°á ±¸Ãà¹× ÇÊ¿ä ·Î±×ÀÏ ÀýÂ÷¹× Á¢±Ù±ÇÇÑ Á¡°Ë ¼öÇà, È­ÀÏ Àü¼Û, ½ÇÇà °á°ú ±â·Ï, ¸ÞÀÏÀ»ÅëÇÑ »ç¿ëÀÚ·ÎÀÇ ÀÛ¾÷ ¿Ï·á Å뺸µîÀ» ¼öÇàÇÑ´Ù. ¿ø°ÝÁö ½ÇÇà ¿ä±¸¸¦ ½ÇÇàÇÑ´Ù. uuxqt DaemonÀº ¿ø°ÝÁö ½Ã½ºÅÛÀ¸·Î ºÎÅÍ ¼ö½ÅµÈ X.fileÀ̶ó´Â ½ÇÇà È­ÀÏÀÇ Á¸À縦 È®ÀÎÇϱâ À§ÇØ ½ºÇ® µð·ºÅ丮¸¦ °Ë»öÇÑ´Ù. À̶§ ÀÌ È­ÀÏÀÌ ¹ß°ßµÇ¸é, uuxqt DaemonÀº ÀÌ ½ÇÇà¿ä±¸¸¦ ½ÇÇàÇϱâ À§ÇØ, µ¥ÀÌŸ È­ÀÏÀÇ ÀÌ¿ë¹× ¾ï¼¼½º °¡´É ¿©ºÎ¸¦ È®ÀÎÇϱâ À§ÇÑ Á¡°ËÀ» ¼öÇàÇÑ ÈÄ ÇØ´ç È­ÀÏÀ» ¼öÇàÇÑ´Ù. ½ºÇ® µð·ºÅ丮³»¿¡ Àִ ť(queue)ó¸®µÈ ÀÛ¾÷À» ½ºÄÉÁìÇÑ´Ù. 1.3 ³×Æ®¿öÅ· Áö¿ø È­ÀÏ BNU´Â 3°¡Áö À¯ÇüÀÇ Áö¿ø È­ÀÏÀ» °¡Áö°í ÀÖ´Ù. µ¥ÀÌŸº£À̽º µ¥ÀÌŸº£À̽º È­ÀÏÀº BNU ÆåÅ°Áö¿Í °ü·ÃµÈ ¸¹Àº ½ÇÁ¦ ³×Æ®¿öÅ· È°µ¿¿¡ ´ëÇÑ Ã¥ÀÓÀ» Áø´Ù. ÀÌµé µ¥ÀÌŸº£À̽º´Â /etc/uucp µð·ºÅ丮³»¿¡ À§Ä¡ÇÏ°í ÀÖÀ¸¸ç, ÀϹÝÀûÀ¸·Î ±×µéÀº ÀÚü ÄÄÇ»ÅÍ¿ÍÀÇ Åë½Å ´ë»ó, Åë½ÅÀ» Áö¿øÇÏ´Â Àü¼Û ÀåÄ¡¹× ¿ø°ÝÁö ÄÄÇ»ÅÍ¿ÍÀÇ Åë½ÅÀ» À§ÇÑ ÇÁ·ÎÅäÄݵîÀ» °áÁ¤ÇÏ´Â Á¤º¸µéÀ» °®°í ÀÖ´Ù. ±× È­ÀϵéÀº ´ÙÀ½°ú °°´Ù. (Config) BNU³»¿¡ ÀÖ´Â º¯µ¿ °¡´ÉÇÑ ÆĶó¸ÞÅ͵éÀÇ ¸®½ºÆ®¸¦ Æ÷ÇÔÇÑ´Ù. °ü¸®ÀÚ´Â ³×Æ®¿÷À» ¼öÀÛ¾÷À¸·Î ±¸¼ºÇϱâ À§ÇØ À̵é ÆĶó¸ÞÅ͸¦ ¼³Á¤ÇÒ ¼ö ÀÖ´Ù. (Devconfig) ÀÌ È­ÀÏÀº TCP/IP ³×Æ®¿÷ ¶Ç´Â ´Ù¸¥ Streams¿¡ ±Ù°ÅÇÑ BNUÀÇ ³×Æ®¿÷ ¿¬°áÀ» ±¸¼ºÇÑ´Ù. (Devices) ÀÚµ¿ È£Ãâ±â, Á÷Á¢ ¿¬°á¹× ³×Æ®¿÷ ÀåÄ¡µéÀÇ À§Ä¡¹× ȸ¼± ¼Óµµ¿¡ °üÇÑ Á¤º¸¸¦ Æ÷ÇÔÇÑ´Ù. (Dialers) ³×Æ®¿÷ ÀåÄ¡¹× ÀÚµ¿ È£Ãâ±â¹× Á÷Á¢ ¿¬°á°úÀÇ Åë½ÅÀ» À§ÇØ ÇÊ¿äÇÑ ¹®ÀÚ¿­À» Æ÷ÇÔÇÑ´Ù. (Grades) ÀÌ È­ÀÏÀº ÀÛ¾÷ µî±Þ(ÀÛ¾÷ÀÇ ¿ì¼± ó¸® ¼øÀ§)°ú »ç¿ëÀÚ°¡ ¿ø°ÝÁö ÄÄÇ»ÅÍ¿¡ ÀÛ¾÷À» Å¥(queue) ó¸®Çϱâ À§ÇØ ÁöÁ¤ÇÏ´Â °¢ ÀÛ¾÷ µî±Þ¿¡ °ü·ÃµÈ »çÇ×À» Á¤ÀÇÇÑ´Ù. (Limits) ÀÌ È­ÀÏÀº ½Ã½ºÅÛ»ó¿¡¼­ Çã¿ëµÇ´Â , , ÀÇ ÃÖ´ë µ¿½Ã ½ÇÇà °¹¼ö¸¦ Á¤ÀÇÇÑ´Ù. (Permissions) ÀÌ È­ÀÏÀº ÀÚü ÄÄÇ»ÅÍ »ó¿¡¼­ È­ÀÏÀ» Àü¼ÛÇϰųª ¿ø°ÝÁö ¸í·ÉÀÇ ½ÇÇàÀ» ½ÃµµÇÒ¶§ ÄÄÇ»ÅÍ¿¡ Çã¿ëµÈ Çã¿ë ±ÇÇÑÀ» Á¤ÀÇÇÑ´Ù. (Poll) ÀÌ È­ÀÏÀº ÀÚü ½Ã½ºÅÛ¿¡ ÀÇÇØ È£ÃâµÉ ÄÄÇ»ÅÍ¹× È£Ãâ½Ã±â¸¦ Á¤ÀÇÇÏ°í ÀÖ´Ù. Áï ¿ø°ÝÁö ÄÄÇ»Å͸¦ Æú¸µÇÒ Á¤º¸¸¦ °®°í ÀÖ´Ù. (Sysfiles) ÀÌ È­ÀÏÀº ¹× ¿¡ÀÇÇØ ÀÌ¿ëµÉ ´Ù¸¥ ¶Ç´Â º¹¼ö°³ÀÇ È­ÀÏÀ» , ¹× È­ÀÏ·Î ÁöÁ¤ÇÑ´Ù. (Systems) ¿ø°ÝÁö ÄÄÇ»ÅÍ¿ÍÀÇ ¿¬°áÀ» ±¸ÃàÇϱâ À§ÇØ Daemon¹× ÇÁ·Î±×·¥¿¡ ÀÇÇØ ¿ä±¸µÇ´Â ¿ø°ÝÁö ÄÄÇ»ÅÍ¿Í ¿¬°üµÈ ¿ø°ÝÁö ÄÄÇ»ÅÍ ¸í, ¿¬°á ÀåÄ¡¸í, ÀüÈ­ ¹øÈ£ ¶Ç´Â ³×Æ®¿÷ ¾îµå·¹½º, login ID¹× ¾ÏÈ£µîÀÇ Á¤º¸¸¦ Æ÷ÇÔÇÑ´Ù. °ü¸® °ü¸® È­ÀÏÀº ÀåÄ¡ Àá±Ý, Àӽà µ¥ÀÌŸ ÀúÀå, ¿ø°ÝÁö Àü¼Û ¶Ç´Â ¸í·É ½ÇÇà¿¡ °üÇÑ Á¤º¸¸¦ º¸°üÇϱâ À§ÇØ ½ºÇ® µð·ºÅ丮 ³»¿¡ ³×Æ®¿÷ ÇÁ·Î¼¼½º¿¡ ÀÇÇØ »ý¼ºµÈ´Ù. (TM) ÀÌµé µ¥ÀÌŸ È­ÀÏÀº ´Ù¸¥ ÄÄÇ»ÅͷκÎÅÍ È­ÀÏÀÌ ¼ö½ÅµÉ ¶§ ½ºÇ®(spool) µð·ºÅ丮¹Ø¿¡ ±âº»ÀûÀÎ ³×Æ®¿öÅ· ÇÁ·Î¼¼½ºµé¿¡ ÀÇÇØ »ý¼ºµÈ´Ù. ÀÌ È­ÀϵéÀº /var/spool/uucp/X ¹Ø¿¡ »ý¼º µÈ´Ù. X´Â È­ÀÏÀ» Àü¼ÛÇÏ´Â ¿ø°ÝÁö ½Ã½ºÅÛ¸íÀ¸·Î ¸í¸íµÇ´Â µð·ºÅ丮ÀÌ´Ù. ÀÌ µð·ºÅ丮µé¿¡ »ý¼ºµÇ´Â È­ÀÏÀÇ ¸íĪÀº ´ÙÀ½ ¾ç½ÄÀ» °®´Â´Ù. TM.pid.ddd ¿©±â¼­ pid´Â ÇÁ·Î¼¼½º ½Äº°ÀÚÀÌ°í, ddd´Â 0ºÎÅÍ ½ÃÀÛÇÏ´Â ¼¼ÀÚ¸®ÀÇ ¼ýÀÚÀÌ´Ù. (Lock) À̵é Lock È­ÀÏÀº ÀÌÁßÀûÀÎ ´ëÈ­¹× Àü¼ÛÀ» ¸·¾ÆÁØ´Ù. ÀÌ È­ÀϵéÀÇ À̸§Àº LCK.system.grade¶ó´Â Çü½ÄÀ» °®´Â´Ù. systemÀº ¿ø°ÝÁö ½Ã½ºÅÛÀÇ ¸íĪÀ̸ç, grade´Â ó¸®µÉ system_job_gradeÀÌ´Ù. (LK) À̵é lock È­ÀÏÀº È£ÃâÇÏ´Â ÀåÄ¡ÀÇ Áߺ¹µÈ ÀÌ¿ëÀ» ¹æÁöÇÑ´Ù. ¸íĪÀÇ Çü½ÄÀº LK.MAJ.maj.minÀ¸·Î ±¸¼ºµÈ´Ù. ¿©±â¼­ MAJ´Â µð·ºÅ丮 ¿£Æ®¸®¸¦ Æ÷ÇÔÇÏ´Â ÀåÄ¡ÀÇ ¸ÞÀÌÀú ¹øÈ£À̸ç, maj¹× minÀº °¢°¢ÀÇ ÀåÄ¡ ÀÚüÀÇ ¸ÞÀÌÀú¹× ¸¶ÀÌ³Ê ¹øÈ£ÀÌ´Ù. (C.) ÀÌ È­ÀϵéÀº È­ÀÏÀü¼Û ¶Ç´Â ¿ø°ÝÁö ¸í·É ½ÇÇàµî°ú °°Àº ÀÛ¾÷ÀÌ ¿ø°ÝÁö ½Ã½ºÅÛ¿¡¼­ Å¥(queue) 󸮵ɶ§, spool µð·ºÅ丮³»¿¡ »ý¼ºµÈ´Ù. °¢ È­ÀÏÀÇ À̸§Àº ´ÙÀ½°ú °°Àº Çü½ÄÀ» °®´Â´Ù. C.sysnxxxx ¿©±â¼­ sys´Â ¿ø°ÝÁö ½Ã½ºÅÛ ¸íÀ̸ç, nÀº ÀÛ¾÷ µî±Þ, xxxx´Â uucp¿¡ÀÇÇØ ÁöÁ¤µÇ´Â 4ÀÚ¸® ¼ýÀÚÀÇ ÀϷùøÈ£ÀÌ´Ù. (D) ÀÌ È­ÀÏÀº ¿ø½Ã È­ÀÏÀ» spool µð·ºÅ丮·Î º¹Á¦Çϱâ À§ÇÑ ¸í·ÉÀÌ ¼öÇàµÉ¶§ »ý¼ºµÈ´Ù. ÀÌµé µ¥ÀÌŸ È­ÀÏÀÇ ¸íĪÀº ´ÙÀ½°ú °°´Ù. D.systmxxxxyyy ¿©±â¼­ systmÀº ¿ø°ÝÁö ½Ã½ºÅÛ ¸íĪÁß 5ÀÚÀ̸ç, xxxx´Â uucp¿¡ÀÇÇØ ºÎ¿©µÇ´Â 4ÀÚ¸®ÀÇ ÀϷùøÈ£À̸ç, yyy´Â ÇÑ ÀÛ¾÷¿¡ ÀÇÇØ º¹¼ö°³ÀÇ µ¥ÀÌŸ È­ÀÏÀÌ »ý¼ºµÉ °æ¿ì À̸¦ ±¸ºÐÇÒ º¸Á¶ ÀϷùøÈ£ÀÌ´Ù. (P) ÀÌ È­ÀϵéÀº üũÆ÷ÀÎÆ® È­ÀϷμ­, 󸮰¡ µ¹¹ßÀûÀ¸·Î Á¾·áµÉ ¶§ »ý¼ºµÈ´Ù. ÀÌ È­ÀÏÀ» ÀÌ¿ëÇÏ¿© ºñÁ¤»óÀûÀ¸·Î Àü¼ÛÀÌ Á¾·áµÈ ÀÛ¾÷À» Àç°³½ÃÇÒ ¶§ óÀ½ºÎÅÍ È­ÀÏÀ» ÀçÀü¼ÛÇÏ´Â °ÍÀÌ ¾Æ´Ï¶ó, Àü¼ÛµÇÀÚ ¾ÊÀº ºÎºÐºÎÅÍ ÀçÀü¼ÛÀ» ¼öÇàÇÑ´Ù. üũ Æ÷ÀÎÆ® È­ÀÏÀº ´ÙÀ½ ¸íĪÀ» °®´Â´Ù. P.systmxxxxyyy ÀÌ È­ÀÏÀÇ ¸íĪ ºÎ¿© Çü½ÄÀº D È­ÀÏ°ú °°´Ù. (X) ÀÌ·± ½ÇÇà È­ÀÏÀº ¸í·É ½ÇÇà¿¡ ¾Õ¼­ spool µð·ºÅ丮¿¡ »ý¼ºµÈ´Ù. À̵é È­ÀÏÀÇ ¸íĪ ±¸¼ºÀº ´ÙÀ½°ú °°´Ù. X.systmxxxxÀÌ´Ù. ·Î±× ·Î±× È­ÀÏÀº ÄÄÇ»ÅÍÀÇ Àü¹ÝÀûÀÎ, ƯÈ÷ ±â¹Ð¹× °èÁ¤ Á¤º¸µéÀ» º¸Á¸ÇÑ´Ù. --------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­µµ À¯´Ð½º ±âº» ³×Æ®¿÷ À¯Æ¿¸®Æ¼µé¿¡ ´ëÇؼ­ °è¼ÓÇÏ¿© ¼Ò°³ÇÏ°Ú½À´Ï´Ù. ( Áï; Basic Networking Utilities ) --------------------------------------------------------------------------- #48 À¯´Ï½Ã½º (adunis2 ) BNU ³×Æ®¿÷ À¯Æ¼¸®Æ¼: uucp 02/28 17:35 110 line BNU(Basic Networking Utilities): uucp --------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. --------------------------------------------------------------------- Á÷ÀüÀÇ °­ÀÇ¿¡¼­´Â BNUÀÇ ÀϹݰ³¿ä¿¡ ´ëÇØ ¼³¸íµÆ´Ù. À̹ø °­ÀǺÎÅÍ´Â BNU¸¦ ±¸¼ºÇÏ°í ÀÖ´Â À¯Æ¿¸®Æ¼µé¿¡ ´ëÇؼ­ Çϳª¾¿ ¼³¸íµÈ´Ù. 1. uucp uucp À¯Æ¿¸®Æ¼´Â À¯´Ð½º ½Ã½ºÅ۵鰣ÀÇ ÅؽºÆ® È­ÀÏ°ú ¹ÙÀ̳ʸ® È­ÀÏÀ» º¹»çÇÒ ¼ö ÀÖ´Â ±â´ÉÀ» Á¦°øÇÑ´Ù. ¶ÇÇÑ uucp´Â µ¥ÀÌŸÀÇ Á¤È®¼ºÀ» ±âÇϱâ À§ÇÑ ¿¡·¯ °Ë»ç ±â´ÉÀ» Æ÷ÇÔÇÑ È­ÀÏ Àü¼Û, uucplog¸¦ ÅëÇÏ¿© »ç¿ëÅë°è¸¦ º¼¼ö ÀÖ´Â ±â´É, ½Ã½ºÅÛ »óÈ£°£ÀÇ ¸ÞÀÏ ºÐ¹è¹× º¸¾È ±â´ÉµîÀ» Á¦°øÇÑ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ uucp [-option] source_file destination_file ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ uucp´Â source_file·ÎÁöÁ¤µÈ È­ÀÏÀ» destination_file·Î ÁöÁ¤µÈ È­ÀÏ·Î º¹»çÇÑ´Ù. ¿©±â¿¡¼­ source_file¸íÀº ´ÙÀ½°ú °°ÀÌ Æ¯Á¤ ½Ã½ºÅÛ»óÀÇ È­ÀÏÀ» ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù. system_name!pathname ±×·¯³ª system_nameÀ» ÁöÁ¤ÇÏÁö ¾ÊÀ» °æ¿ì¿¡´Â ÇöÀç ¸í·É¾î¸¦ ÀÔ·ÂÇÏ°í ÀÖ´Â ½Ã½ºÅÛÀ¸·Î °¡Á¤µÈ´Ù. ±×¸®°í system_nameÀº uucp°¡ ÀνÄÇÏ°í ÀÖ´Â ½Ã½ºÅÛ ¸íÀ̾î¾ß ÇÑ´Ù. ÀÌ¿Í ¸¶Âù°¡Áö·Î destination_file¸íµµ ´ÙÀ½°ú °°ÀÌ ½Ã½ºÅÛ ¸íÀ» ÇÔ²² ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù. system_name!system_name!...!system_name!pathname ÀÌ °æ¿ì¿¡, È­ÀÏÀ» ¸ñÀûÁö·Î ÁöÁ¤ÇÑ system_nameµéÀ» °æÀ¯ÇÏ¿© º¸³»Áö°Ô µÈ´Ù. ¸í·É¾î »ó¿¡¼­ ½© Ư¼ö¹®ÀÚÀÎ ?,*,[]¿Í °°Àº °ÍµéÀ» ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù. pathnameÀº ´ÙÀ½°ú °°Àº Çü½ÄÀ¸·Î ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù. 1) Àý´ë °æ·Î¸í 2) ~user°¡ ¼±ÇàÇÏ´Â °æ·Î¸í À̶§ÀÇ user´Â ÁöÁ¤ÇÑ ½Ã½ºÅÛ»óÀÇ ·Î±×ÀÎ ½Äº°¸íÀÌ´Ù. ÀÌ´Â uucp¸í·É¾î¿¡ ÀÇÇØ ÇØ´ç »ç¿ëÀÚÀÇ È¨ µð·ºÅ丮·Î ´ëÄ¡µÈ´Ù. 3) ~/destinationÀÌ ¼±ÇàÇÏ´Â °æ·Î¸í À̶§ÀÇ destinationÀº /var/spool/uucppublic µð·ºÅ丮¿¡ Ãß°¡µÉ °æ·Î¸íÀ» Ç¥½ÃÇÑ´Ù. ÁÖÀÇÇÒ °ÍÀº Çϳª ÀÌ»óÀÇ È­ÀÏÀÌ ÀÌ ¿ä±¸¿¡ ÀÇÇؼ­ Àü¼ÛµÈ´Ù ÇÏ´õ¶óµµ ¶Ç´Â destinationÀÌ ÀÌ¹Ì Á¸ÀçÇÏ´Â µð·ºÅ丮¶ó°í ÇÏ´õ¶óµµ destinationÀº È­ÀϸíÀ¸·Î¼­ °£ÁֵȴÙ. ÁöÁ¤ÇÑ destinationÀÌ µð·ºÅ丮¶ó´Â °ÍÀ» º¸ÁõÇϱâ À§Çؼ­´Â /¸¦ ¸¶Áö¸·¿¡ ÁöÁ¤ÇØ ÁØ´Ù. ¿¹¸¦µé¸é ~/dan/ ¶ó°í ÁöÁ¤Çϸé /var/spool/uucpublic µð·ºÅ丮³»¿¡ danÀ̶ó´Â ¼­ºê µð·ºÅ丮°¡ ¾ø´Ù¸é /var/spool/uucppublic/danÀ̶ó´Â ¼­ºê µð·ºÅ丮¸¦ »ý¼ºÇÏ°í, ±× µð·ºÅ丮¿¡ ¿ä±¸µÈ È­ÀÏÀ» ÀúÀåÇÑ´Ù. 4) ¾Æ¹«°Íµµ ÁöÁ¤ÇÏÁö ¾ÊÀº °æ¿ì »ç¿ëÀÚ°¡ ÀÛ¾÷ÇÏ°í ÀÖ´Â µð·ºÅ丮ÀÇ °æ·Î¸íÀÌ °¡Á¤µÈ´Ù. ¸¸ÀÏ ¿ø°ÝÁö ½Ã½ºÅÛ¿¡ ´ëÇؼ­ À߸øµÈ °æ·Î¸íÀ» ÁöÁ¤Çϸé, º¹»ç ÀÛ¾÷Àº ½ÇÆÐÇÑ´Ù. ¶ÇÇÑ destination_fileÀÌ µð·ºÅ丮ÀÏ °æ¿ì¿¡´Â, source_fileÀÇ ¸¶Áö¸· ºÎºÐÀÌ È­ÀϸíÀ¸·Î »ç¿ëµÈ´Ù. uucp´Â Àü¼Û °úÁ¤¿¡¼­ ½ÇÇà ±ÇÇÑÀÌ »èÁ¦ÇÏ°í, Àбâ¹× ¾²±â ±ÇÇÑÀ» 0666À¸·Î ºÎ¿©ÇÑ´Ù. [ chmod ¸í·ÉÀ» ÂüÁ¶Çϱ⠹ٶõ´Ù. ] ´ÙÀ½Àº uucp ¸í·É¿¡¼­ »ç¿ë°¡´ÉÇÑ ¿É¼Çµé¿¡ ´ëÇÑ ¼³¸íÀÌ´Ù. -c ¿ø°ÝÁö ½Ã½ºÅÛ¿¡ Àü¼ÛÀ» ÇϱâÀ§ÇÏ¿© ½ºÇ®(spool) µð·ºÅ丮¿¡ º¹»ç¸¦ ÇÏÁö¸¶¶ó. -C Àü¼ÛÀ» À§ÇØ ½ºÇ® µð·ºÅ丮¿¡ È­ÀÏÀ» ¹«Á¶°Ç º¹»çÇÑ´Ù. -d È­ÀÏ º¹»ç½Ã ÇÊ¿ä·ÎÇÏ´Â ¸ðµç µð·ºÅ丮µéÀ» ¸¸µç´Ù. -f È­ÀÏ º¹»ç¸¦ À§ÇØ Áß°£ÀÇ µð·ºÅ丮µéÀ» ¸¸µéÁö ¾Ê´Â´Ù. -ggrade grade´Â ¼­ºñ½º µî±ÞÀ» Á¤ÀÇÇÏ´Â ¼­ºñ½º µî±ÞÀ» Á¤ÀÇÇÏ´Â ´ÜÀÏ ¹®ÀÚ/¼ýÀÚ ¶Ç´Â ¿µ¼ýÀÚÀÇ ¹®ÀÚ¿­Àϼö ÀÖ´Ù. ¼­ºñ½º µî±ÞÀ¸·Î½á ´ÜÀÏ ¹®ÀÚ/¼ýÀÚ ¶Ç´Â ¿µ¼ýÀÚÀÇ ¹®ÀÚ¿­À» »ç¿ëÇÏ´Â °ÍÀÌ Àû´çÇÑ °ÍÀÎÁö¸¦ uuglist ¸í·É¾î¸¦ ÅëÇØ È®ÀÎÇÒ ¼ö ÀÖ´Ù. uuglist ¸í·É¾î¸¦ ½ÇÇàÇϸé ÁöÁ¤ °¡´ÉÇÑ ¼­ºñ½º µî±ÞµéÀ» ³ªÅ¸³»´Â ÇʵåµéÀÌ Ç¥½ÃµÈ´Ù. -j Ç¥ÁØ Ãâ·Â»ó¿¡ uucp ÀÛ¾÷ ½Äº° ¹®ÀÚ¿­À» Ãâ·ÂÇÑ´Ù. ÀÌ·± ÀÛ¾÷ ½Äº°ÀÚ´Â uucp ÀÛ¾÷ÀÇ »óųª uucp ÀÛ¾÷À» Á¾·áÇϱâ À§Çؼ­ uustat ¸í·É¾î¿¡ ÀÇÇØ »ç¿ëµÉ ¼ö ÀÖ´Ù. ÀÌ ½Äº°ÀÚ´Â ÀÚü ½Ã½ºÅÛ»ó¿¡ ÀÛ¾÷ÀÌ Å¥(queue)µÇ¾î ÀÖ´Â µ¿¾È¿¡¸¸ À¯È¿ÇÏ´Ù. -m º¹»ç°¡ ¿Ï·áµÇ¸é ¸í·É¾î ½ÇÇàÀÚ¿¡°Ô ¿Ï·á Å뺸 ¸ÞÀÏÀ» º¸³½´Ù. -nuser È­ÀÏÀ» º¸³½ ¿ø°ÝÁö ½Ã½ºÅÛ»óÀÇ »ç¿ëÀÚ¿¡°Ô Å뺸ÇÑ´Ù. -r È­ÀÏ Àü¼ÛÀ» ½ÃÀÛÇÏÁö ¾Ê°í, ÀÛ¾÷À» Å¥¿¡ µî·Ï¸¸ ÇÑ´Ù. -sfile ÁöÁ¤ÇÑ È­ÀÏ¿¡ Àü¼Û»óŸ¦ º¸°íÇÑ´Ù. ÀÌ ¿É¼ÇÀº -m ¿É¼Ç¿¡ ¿ì¼±ÇÑ´Ù. -xdebug_level Ç¥ÁØ Ãâ·Â»ó¿¡ µð¹ö±ë Ãâ·Â(debugging output)À» »ý¼ºÇÑ´Ù. °ËÁõ ·¹º§Àº 0°ú 9»çÀÌÀÇ ¼ýÀÚÀÌ´Ù. º¸´Ù ÀÚ¼¼ÇÑ °ËÁõÀ» ¼öÇàÇϱâ À§Çؼ­´Â 9¿¡ °¡±î¿î ¼ýÀÚ¸¦ ÁöÁ¤ÇÑ´Ù. ±×·¯³ª ÀÌ ¿É¼ÇÀº ÀϺΠ½Ã½ºÅÛÀº Çã¿ëÇÏÁö ¾Ê´Â´Ù. --------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­µµ BNU À¯Æ¼¸±Æ¼¿¡ ´ëÇØ °è¼Ó ¼³¸í µå¸®°Ú½À´Ï´Ù. --------------------------------------------------------------------------- #49 À¯´Ï½Ã½º (adunis2 ) BNU ³×Æ®¿÷ À¯Æ¿¸®Æ¼: uname,uuname,uulog 02/29 09:26 113 line BNU(Basic Networking Utilities): uname, uuname, uulog --------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. --------------------------------------------------------------------- 1. uname uname ÇöÀç ÀÛ¾÷ÁßÀÎ À¯´Ð½º ½Ã½ºÅÛÀÇ À̸§À» ÇÁ¸°Æ®ÇÑ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ uname [-option] ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ uname ¸í·ÉÀº À¯´Ð½º ½Ã½ºÅÛ À̸§À» Ç¥ÁØ Ãâ·Â ÀåÄ¡(½ºÅ©¸°)»ó¿¡ ÇÁ¸°Æ® ÇÑ´Ù. ÀÌ ¸í·ÉÀº »ç¿ëÁßÀÎ ½Ã½ºÅÛÀ» È®ÀÎÇϱâ À§ÇØ ÁÖ·Î »ç¿ëÇÑ´Ù. uname ¸í·É¿¡¼­ »ç¿ë °¡´ÉÇÑ ¿É¼ÇÀº ´ÙÀ½°ú °°´Ù. -a ¸ðµç Á¤º¸¸¦ ÇÁ¸°Æ®ÇÑ´Ù. ÀÌ ¿É¼Ç¿¡ ÀÇÇÑ Ãâ·ÂÀº ´ÙÀ½°ú °°ÀÌ ±¸¼ºµÈ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢system_name nodename release version machine hostprocessor¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ -m ½Ã½ºÅÛ Çϵå¿þ¾î À̸§À» ÇÁ¸°Æ® ÇÑ´Ù. -n nodenameÀ» ÇÁ¸°Æ® ÇÑ´Ù. (nodenameÀº Åë½Å ³×Æ®¿÷»ó¿¡ µî·ÏµÈ ½Ã½ºÅÛ À̸§ÀÌ´Ù.) -p ÇöÀç ÀÛ¾÷ÁßÀÎ ½Ã½ºÅÛÀÇ ÇÁ·Î¼¼¼­ Á¾·ù¸¦ ÇÁ¸°Æ® ÇÑ´Ù. -r ¿î¿µÃ¼Á¦ ¸±¸®Áî(release)¸¦ ÇÁ¸°Æ® ÇÑ´Ù. -s ¿î¿µÃ¼Á¦ÀÇ À̸§À» ÇÁ¸°Æ® ÇÑ´Ù. ( ¿¹¸¦µé¸é UNIX System V ) ÀÌ ¿É¼ÇÀº µðÆúÆ® ¿É¼ÇÀÌ´Ù. -v ¿î¿µÃ¼Á¦ ¹öÀüÀ» ÇÁ¸°Æ® ÇÑ´Ù. -S nodenameÀ» ÇÁ¸°Æ® ÇÑ´Ù. nodenameÀº SYS_NMLN ¹®ÀÚµé·Î Á¦ÇѵȴÙ. SYS_NMLNÀº sys/utsname.h¿¡ Á¤ÀÇµÈ ÇÑÁ¤µÈ °ªÀÌ´Ù. Ư±ÇÀÌ ºÎ¿©µÈ »ç¿ëÀÚ¸¸ÀÌ ÀÌ ±â´ÉÀ» ¼öÇàÇÒ ¼ö ÀÖ´Ù. -S ¿É¼ÇÀ» »ç¿ëÇÏ¿© ¿î¿µÃ¼Á¦ÀÇ À̸§À» ¶ÇÇÑ º¯°æÇÒ ¼ö ÀÖ´Ù. ( ¿¹Á¦ ) ¦£¦¡¦¡¦¡¦¡¦¡¦¤ ¦£¦¡¦¡¦¡¦¡¦¡¦¤ ¦£¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$uname -a ¦¢ ¦¢$uname -n ¦¢ ¦¢$uname -s ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¥ ¦¦¦¡¦¡¦¡¦¡¦¡¦¥ ¦¦¦¡¦¡¦¡¦¡¦¡¦¥ 2. uuname ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ uuname [-option] ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ uuname ¸í·ÉÀº uucp¿¡ µî·ÏµÈ ½Ã½ºÅÛ À̸§µéÀ» Ãâ·ÂÇØ ÁØ´Ù. uuname ¸í·É¿¡ »ç¿ë °¡´ÉÇÑ ¿É¼ÇÀº ´ÙÀ½°ú °°´Ù. -c cu À¯Æ¿¸®Æ¼¿¡ µî·ÏµÈ ½Ã½ºÅÛÀÇ À̸§µéÀ» µ¹·ÁÁØ´Ù. ( ½Ã½ºÅÛÀÌ cu¿Í uucp À¯Æ¿¸®Æ¼¿¡ ´ëÇÏ¿© ´Ù¸¥ Systems È­ÀÏÀ» »ç¿ëÇÏ´Â °æ¿ì¸¦ »ç¿ëÁßÀÎ °æ¿ì¸¦ Á¦¿ÜÇÏ°í´Â ÀÌµé µÎ°¡ÁöÀÇ Ãâ·ÂÀÌ µ¿ÀÏÇÏ´Ù. ) -l ÇöÀç ½Ã½ºÅÛ À̸§À» Ç¥½ÃÇØ ÁØ´Ù. ( ¿¹Á¦ ) ¦£¦¡¦¡¦¡¦¡¦¡¦¤ ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $uuname ¦¢ ¦¢ $uuname -l ¦¢ ¦¢ mart ¦¢ ¦¢ wjnr ¦¢ ¦¢ wopper ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¦¢ tower ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¥ 3. uulog ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ uulog [-option] ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ uulog ¸í·É¾î´Â /var/uucp/.Log/uucico/system È­ÀÏÀ̳ª /var/uucp/.Log/uuxqt/system È­ÀÏ¿¡¼­ uucp ¶Ç´Â uuxqt Æ®·»Á§¼ÇÀÇ ·Î±×È­ÀÏ (ÀÛ¾÷ ³»·ÂµîÀ» ÀúÀåÇÏ°í ÀÖ´Â È­ÀÏ) ³»¿ëÀ» È®ÀÎÇÑ´Ù. uulog ¸í·É¾î¿¡¼­´Â ·Î±× Á¤º¸¸¦ ÇÁ¸°Æ®Çϱâ À§ÇØ ´ÙÀ½°ú °°Àº ¿É¼ÇÀ» »ç¿ë °¡´ÉÇÏ´Ù. -ssys ½Ã½ºÅÛ sys¸¦ ¼ö¹ÝÇÑ È­ÀÏ Àü¼Û ÀÛ¾÷¿¡ °üÇÑ Á¤º¸¸¦ ÇÁ¸°Æ®ÇÑ´Ù. -fsystem ÁöÁ¤ÇÑ system¿¡ ´ëÇÑ È­ÀÏ Àü¼Û ·Î±×¿¡´ëÇØ tail -f ¸í·ÉÀ» ½ÇÇàÇÑ´Ù. ( ÀÌ ¸í·ÉÀ» Á¾·áÇϱâ À§Çؼ­´Â Break Å°¸¦ »ç¿ëÇÑ´Ù. ) ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢< tail ¸í·É¾î > ¦¢ ¦¢ ¦¢ ¦¢ È­ÀÏÀÇ Æ¯Á¤ ³»¿ëÀ» È­¸é»ó¿¡ Ãâ·ÂÇϱâ À§ÇÑ ¸í·É¾î·Î ¦¢ ¦¢ ±× Çü½ÄÀº ´ÙÀ½°ú °°´Ù. ¦¢ ¦¢ ¦¢ ¦¢ $tail [+-[¼ýÀÚ]] [È­Àϸí] ¦¢ ¦¢ ¦¢ ¦¢ ¿©±â¿¡¼­ +´Â óÀ½ºÎÅÍ ¸î ¶óÀÎÀ» ¦¢ ¦¢ -´Â ³¡ºÎÅÍ ¸î ¶óÀÎÀ» ÀǹÌÇÑ´Ù. ¦¢ ¦¢ ¶ÇÇÑ ¼ýÀڴ ǥ½ÃÇÒ ¶óÀμö¸¦ ÀǹÌÇÑ´Ù. ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¶ÇÇÑ À§ÀÇ ¿É¼Ç°ú Á¢¼ÓÇؼ­ »ç¿ëÇÒ ¼ö ÀÖ´Â ¾Æ·¡¿Í °°Àº ´Ù¸¥ ¿É¼Çµµ ÀÖ´Ù. -x ÁÖ¾îÁø ½Ã½ºÅÛ¿¡ ´ëÇÑ uuxqt ·Î±× È­ÀÏÀÇ ³»¿ëÀ» Á¶»çÇÑ´Ù. -number ½ÇÇàÇؾßÇÒ tail ¸í·É¾îÀÇ ¶óÀÎ ¼ö¸¦ ÁöÁ¤ÇÑ´Ù. --------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­µµ BNU À¯Æ¼¸±Æ¼¿¡ ´ëÇØ °è¼Ó ¼³¸í µå¸®°Ú½À´Ï´Ù. --------------------------------------------------------------------------- #50 À¯´Ï½Ã½º (adunis2 ) BNU ³×Æ®¿÷ À¯Æ¿¸®Æ¼: uuto,uupick 02/29 11:16 94 line BNU(Basic Networking Utilities): uuto, uupick --------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. --------------------------------------------------------------------- 1. uuto ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ uuto [-option] source destination ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ uuto À¯Æ¿¸®Æ¼´Â source È­ÀÏÀ» destination¿¡ Àü¼ÛÇÑ´Ù. uuto´Â È­ÀÏÀ» Àü¼ÛÇϱâ À§ÇØ uucp ±â´ÉµéÀ» ÀÌ¿ëÇÏÁö¸¸, local ½Ã½ºÅÛÀÌ È­ÀÏ ¾ï¼¼½º¸¦ Á¦¾îÇÏ´Â °ÍÀ» Çã¿ëÇÑ´Ù. source´Â ½Ã½ºÅÛ»óÀÇ °æ·Î¸íÀÌ´Ù. ±×¸®°í destinationÀº ´ÙÀ½ Çü½ÄÀ» °®´Â´Ù. system[!system]...!user ¿©±â¿¡¼­ systemÀº uucp¿¡ µî·ÏµÇ¾î ÀÖ´Â ½Ã½ºÅÛ ¸íµéÀ» ÁöÁ¤ÇÑ´Ù. (uunameÀ¸·Î È®ÀÎ °¡´ÉÇÏ´Ù.) ±×¸®°í user´Â ÁöÁ¤ÇÑ ½Ã½ºÅÛ»ó¿¡ µî·ÏµÈ »ç¿ëÀÚÀÇ ·Î±×ÀÎ ¸íÀÌ´Ù. uuto¿¡´Â ´ÙÀ½ ¿É¼ÇÀÌ »ç¿ë °¡´ÉÇÏ´Ù. -p Àü¼ÛÀ» ÇϱâÀü¿¡ ½ºÇ®(spool) µð·ºÅ丮¿¡ source È­ÀÏÀ» º¹»çÇÑ´Ù. -m º¹»ç°¡ ¿Ï·áµÇ¸é, ¼Û½ÅÀÚ¿¡°Ô ¼Û½Å ¿Ï·á ÅëÁö ¸ÞÀÏÀ» º¸³½´Ù. ¼Û½ÅµÈ È­ÀϵéÀº ½Ã½ºÅÛ»ó¿¡¼­ uucpÀÇ °øÀ¯ µð·ºÅ丮ÀÎ PUBDIR¿¡ º¸³»Áø´Ù. ±âº»ÀûÀÎ ÀÌ µð·ºÅ丮´Â /var/spool/uucppublicÀÌ´Ù. Á¤È®ÇÏ°Ô ¸»ÇÏÀÚ¸é ¼Û½ÅµÈ È­ÀϵéÀº PUBDIR/receive/user/mysystem/files¶ó´Â Çü½ÄÀ¸·Î »ý¼ºµÈ´Ù. È­ÀÏÀ» ¼ö½Å ¿Ï·áÇϸé È­ÀÏÀÇ µµÂøÀ» ¸ÞÀÏÀ» ÅëÇØ ÇØ´ç »ç¿ëÀÚ¿¡°Ô ¾Ë·ÁÁØ´Ù. ( ¿¹Á¦ ) $uuto -m employees sys4!user 2. uupick ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢uupick [-s system] ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ uupick ¸í·É¾î´Â »ç¿ëÀÚ¿¡°Ô Àü¼ÛµÈ È­ÀÏÀ» ¹Þ¾ÆµéÀ̰ųª °ÅÀýÇÑ´Ù. ÀÚ¼¼È÷ ¼³¸íÇÏÀÚ¸é, uupick ¸í·É¾î´Â »ç¿ëÀÚ¿¡°Ô µµÂøÇÑ È­ÀÏÀ» PUBDIR µð·ºÅ丮µéÀ» °Ë»öÇÑ´Ù. »ç¿ëÀÚ¿¡ ¼ö½ÅµÈ È­ÀÏ ¶Ç´Â µð·ºÅ丮°¡ ¹ß°ßµÇ¸é, ´ÙÀ½°ú °°Àº ¸Þ¼¼Áö°¡ È­¸é»ó¿¡ Ç¥½ÃµÈ´Ù. from system sysname: [file file_name] [dir dirname] ? uupick´Â ±×¶§ È­ÀÏÀÇ ¹èÄ¡¸¦ °áÁ¤Çϱâ À§ÇØ ´Ü¸»·Î ºÎÅÍ ¶óÀÎÀ» ÀÔ·Â ¹Þ´Â´Ù. ´ÙÀ½ ¿£Æ®¸®·Î À̵¿ÇÑ´Ù. d ¿£Æ®¸®¸¦ »èÁ¦ÇÑ´Ù. m [dir] ÁöÁ¤ÇÑ µð·ºÅ丮 dir¿¡ ¿£Æ®¸®¸¦ À̵¿ÇÑ´Ù. ¸¸ÀÏ dirÀ» ÁöÁ¤ÇÒ¶§ Àý´ë °æ·Î¸íÀ» ÁöÁ¤ÇÏÁö ¾ÊÀ» °æ¿ì¿¡´Â ÇöÀçÀÇ ÀÛ¾÷ µð·ºÅ丮°¡ °¡Á¤µÈ´Ù. ( $HOME ½© º¯¼öµµ »ç¿ë °¡´ÉÇÏ´Ù.) ¶ÇÇÑ destination ÀÚü¸¦ ÁöÁ¤ÇÏÁö ¾Ê¾ÒÀ» °æ¿ì¿¡µµ ÇöÀçÀÇ ÀÛ¾÷ µð·ºÅ丮°¡ °¡Á¤µÈ´Ù. a [dir] ½Ã½ºÅÛÀ¸·ÎºÎÅÍ º¸³»¿Â ¸ðµç È­ÀÏÀ» À̵¿ÇÏ´Â °ÍÀ» Á¦¿ÜÇÏ°í´Â m [dir]°ú °°´Ù. p È­ÀÏÀÇ ³»¿ëÀ» ÇÁ¸°Æ® ÇÑ´Ù. q ÀÛ¾÷À» ÁßÁöÇÑ´Ù. EOT (CTRL-d) q¿Í µ¿ÀÏÇÏ´Ù. !command ¸í·É¾î¸¦ ½ÇÇàÇϱâ À§ÇØ ½©·Î ÀϽÃÀûÀ¸·Î ºüÁ®³ª°£´Ù. * »ç¿ë°¡´ÉÇÑ ¸í·É¾îÀÇ ¿ä¾à »çÇ×À» ÇÁ¸°Æ® ÇÑ´Ù. ƯÁ¤ ½Ã½ºÅÛÀ¸·Î ºÎÅÍ º¸³»Áø È­ÀÏ¿¡ ´ëÇÑ PUBDIRÀ» °Ë»öÇÏ´Â °æ¿ì¿¡¸¸ -s system ¿É¼ÇÀ» »ç¿ëÇÑ´Ù. ÁÖÀÇ »çÇ×) .À¸·Î ½ÃÀÛÇÏ´Â È­ÀÏÀ» Àü¼ÛÇϱâ À§Çؼ­´Â È­ÀÏ¸í¿¡ ¹Ýµå½Ã .À» ÁöÁ¤Çؾ߸¸ ÇÑ´Ù. ¿¹¸¦µé¸é ´ÙÀ½°ú °°´Ù. .profile .prof* .profil?¶ó´Â Çü½ÄÀ¸·Î ÁöÁ¤ÇØ¾ß ÇÑ´Ù. ±×·¯³ª ´ÙÀ½°ú °°Àº Çü½ÄÀÇ ÁöÁ¤Àº À߸øµÈ °ÍÀÌ´Ù. *prof* ?profile ( ¿¹Á¦ ) $uupick -ssys2 --------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­µµ BNU À¯Æ¼¸±Æ¼¿¡ ´ëÇØ °è¼Ó ¼³¸í µå¸®°Ú½À´Ï´Ù. --------------------------------------------------------------------------- #51 À¯´Ï½Ã½º (adunis2 ) BNU ³×Æ®¿÷ À¯Æ¿¸®Æ¼: uustat 02/29 23:47 104 line BNU(Basic Networking Utilities): uustat --------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. --------------------------------------------------------------------- 1. uustat uustat uucp ÀÛ¾÷»óÅ Á¶È¸¹× ÀÛ¾÷ÀÇ Á¦¾î ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ uustat [-q] or [-m] or [-kjobid [-n]] or [-rjobid [-n]] or [-p] ¦¢ ¦¢ uustat [-a [-j]] [-user] [-Sqric] ¦¢ ¦¢ uustat [ssystem [-j]] [-user] [-Sqric] ¦¢ ¦¢ uustat -tsystem [-dnumber] [-c] ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ uustat À¯Æ¿¸®Æ¼´Â ´ÙÀ½°ú °°Àº 3°¡Áö ÇüÅÂÀÇ ÀÛ¾÷À» ¼öÇàÇÑ´Ù. . ÀÌÀü¿¡ Áö½ÃµÈ ¸í·É¾îÀÇ ÀÛ¾÷»óÅÂÀÇ Ç¥½Ã ¶Ç´Â Ãë¼Ò . Æò±Õ Àü¼Ûºñ ¶Ç´Â Æò±ÕÀûÀΠť(queue)¿¡ ÀúÀåµÇ´Â ½Ã°£¿¡ °üÇÑ ¿ø°ÝÁö ½Ã½ºÅÛ È¿À²¼º Á¤º¸¸¦ Á¦°ø . ´Ù¸¥ ½Ã½ºÅÛÀ¸·ÎÀÇ Àü¹ÝÀûÀÎ ¿ø°ÝÁö ½Ã½ºÅÛ Ãø¸é°ú »ç¿ëÀÚ Ãø¸éÀÇ uucp Á¢¼ÓÀÇ »óŸ¦ Á¦°ø uustat ¸í·É¾î´Â ÀÌÀüÀÇ uucp ¸í·É¾îµéÀÇ »óÅ ¶Ç´Â Ãë¼Ò¸¦ ¼öÇàÇϱâ À§ÇÑ ´ÙÀ½°ú °°Àº ¿É¼ÇÀ» Á¦°øÇÑ´Ù. uustat´Â °¢°¢ÀÇ uustat ¸í·É¾î ½ÇÇà½Ã ¿ÀÁ÷ ÇϳªÀÇ ¿É¼Ç¸¸À» ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù. -a Å¥(queue)¿¡ ÀÖ´Â ¸ðµç ÀÛ¾÷À» Ç¥½ÃÇÑ´Ù. -j Ãâ·ÂµÇ´Â ÀÛ¾÷ÀÇ ÃÑ°¹¼ö¸¦ Ç¥½ÃÇÑ´Ù. -j ¿É¼ÇÀº -a ¶Ç´Â -s ¿É¼ÇÀÇ Á¶ÇÕ¿¡ ÀÌ¿ëµÉ ¼ö ÀÖ´Ù. -kjobid ÀÛ¾÷ ½Äº°ÀÚ°¡ jobidÀÎ uucp ÀÛ¾÷ ¿ä±¸¸¦ »èÁ¦ÇÑ´Ù. ½Ã½ºÅÛ °ü¸®ÀÚ³ª uucp °ü¸®ÀÚ¸¦ Á¦¿ÜÇÏ°í´Â »èÁ¦µÇ´Â uucp ÀÛ¾÷ ¿ä±¸´Â uustat ¸í·É¾î¸¦ ¼öÇàÇÑ »ç¿ëÀÚÀÇ ¼ÒÀ¯À̾î¾ß ÇÑ´Ù. ¸¸ÀÏ ÀÛ¾÷ÀÌ °ü¸®ÀÚ³ª uucp °ü¸®ÀÚ¿¡ ÀÇÇØ »èÁ¦µÇ¸é, ¸ÞÀÏÀÌ ÀÛ¾÷À» ¼öÇàÇÑ »ç¿ëÀÚ¿¡°Ô µ¹·ÁÁø´Ù. -m ¸ðµç ½Ã½ºÅÛµéÀÇ ¾ï¼¼½º °¡´É ÇöȲÀ» Ç¥½ÃÇÑ´Ù. -n ¸ðµç Ç¥ÁØ Ãâ·Â Á¤º¸µéÀ» »ý·«ÇÑ´Ù. ´Ü, Ç¥ÁØ ¿¡·¯ Á¤º¸´Â Ç¥½ÃµÈ´Ù. -n ¿É¼ÇÀº -k¿Í -r ¿É¼Ç°ú Á¶ÇÕµÇ¾î »ç¿ëµÉ ¼ö ÀÖ´Ù. -p Lock È­Àϳ»ÀÇ ¸ðµç ÇÁ·Î¼¼½º¿¡ ´ëÇÏ¿© ps -flp¸í·ÉÀ» ½ÇÇàÇÑ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ ps ÇöÀçÀÇ ÇÁ·Î¼¼½ºµé¿¡ ´ëÇÑ Á¤º¸¸¦ Ç¥½ÃÇÑ´Ù. ¦¢ ¦¢ ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ ¦¢ ¦¢ ps [-option] ¦¢ ¦¢ ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¦¢ ¦¢ ( ¿É¼Ç ) ¦¢ ¦¢ -f ÇÁ·Î¼¼½º¿¡ °ü·ÃµÈ Á¤º¸Áß ¸ðµç ÇʵåµéÀ» Ãâ·ÂÇÑ´Ù. ¦¢ ¦¢ -l ÀÚ¼¼ÇÑ Á¤º¸¸¦ Ãâ·ÂÇÑ´Ù. ¦¢ ¦¢ -p ÁöÁ¤ÇÑ È­Àϳ»¿¡ µé¾î ÀÖ´Â ÇÁ·Î¼¼½ºµé¿¡ ´ëÇÑ Ãâ·Â¸¸À» ¦¢ ¦¢ »ý¼ºÇÑ´Ù. ( À§¿¡¼­´Â Lock È­ÀÏÀÌ ÀÌ¿¡ ÇØ´çµÈ´Ù.) ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ -q °¢ ½Ã½ºÅÛÀÇ Å¥(queue)¿¡ ÀúÀåµÇ¾î ÀÖ´Â ÀÛ¾÷µéÀ» Ãâ·ÂÇÑ´Ù. ½Ã½ºÅÛ¿¡ status fileÀÌ Á¸ÀçÇÒ °æ¿ì¿¡´Â ÀÛ¾÷°ú °ü·ÃµÈ ³¯Â¥, ½Ã°£, »óÅ Á¤º¸¸¦ Ãâ·ÂÇÑ´Ù. -rjobid ÁöÁ¤ÇÑ jobid¸¦ ´Ù½Ã È°¼ºÈ­ ½ÃŲ´Ù. Æò±Õ Àü¼Ûºñ ¶Ç´Â Æò±ÕÀûÀΠť(queue)¿¡ ÀúÀåµÇ´Â ½Ã°£¿¡ °üÇÑ ¿ø°ÝÁö ½Ã½ºÅÛ È¿À²¼º Á¤º¸¸¦ Á¦°øÇÏ´Â ¾Æ·¡ÀÇ ¿É¼ÇµîÀ» Á¦°øÇÑ´Ù. ÀÌÁß -c ¿Í -d ¿É¼ÇÀº -t¿É¼Ç°ú Á¶ÇÕÀ»ÅëÇؼ­¸¸ »ç¿ëÇÒ ¼ö ÀÖ´Ù. -tsystem ¿ø°ÝÁö ½Ã½ºÅÛ¿¡ ´ëÇÑ Áö³ª 60ºÐµ¿¾ÈÀÇ Æò±Õ Àü¼Ûºñ ¶Ç´Â Æò±Õ Å¥(Queue)¿¡ ÀúÀåµÈ ½Ã°£À» Ãâ·ÂÇÑ´Ù. -dnumber number´Â ºÐ(minute)À» ÀǹÌÇÑ´Ù. ÀÌ ¿É¼ÇÀº ÁöÁ¤ÇÑ ½Ã°£(Áï; ºÐ´ÜÀ§ÀÇ ½Ã°£)µ¿¾ÈÀÇ È¿À²¼ºÀ» °Ë»çÇÑ´Ù. -c ÀÌ ¿É¼ÇÀÌ ÁöÁ¤µÉ °æ¿ì¿¡´Â Æò±Õ Å¥(Queue)¿¡ ÀúÀåµÇ´Â ½Ã°£À» Ãâ·ÂÇÑ´Ù. ¹ÌÁöÁ¤½Ã¿¡´Â Æò±Õ Àü¼Ûºñ°¡ Ãâ·ÂµÈ´Ù. ´Ù¸¥ ½Ã½ºÅÛÀ¸·ÎÀÇ Àü¹ÝÀûÀÎ ¿ø°ÝÁö ½Ã½ºÅÛ Ãø¸é°ú »ç¿ëÀÚ Ãø¸éÀÇ uucp Á¢¼Ó »óŸ¦ Á¦°øÇÏ´Â ¿É¼Çµµ Á¦°øµÈ´Ù. -ssytem ¿ø°ÝÁö ½Ã½ºÅÛ¿¡ ´ëÇÑ ¸ðµç uucp ÀÛ¾÷ ¿ä±¸ÀÇ »óŸ¦ Ãâ·ÂÇÑ´Ù. -uuser ÁöÁ¤ÇÑ user¿¡ÀÇÇØ ¿ä±¸µÈ ¸ðµç uucp ÀÛ¾÷ ¿ä±¸ÀÇ »óŸ¦ Ãâ·ÂÇÑ´Ù. -Sqric ÀÛ¾÷ÀÇ »óŸ¦ Ç¥½ÃÇÑ´Ù. Áï; Å¥(queue)¿¡ ÀúÀåµÈ ÀÛ¾÷À» À§ÇØ q, ½ÇÇàÁßÀÎ ÀÛ¾÷À» À§ÇØ r, °¡·Îä±âµÈ(interrupted) ÀÛ¾÷À» À§ÇØ i, ¿Ï¼ºµÈ ÀÛ¾÷À» À§ÇØ c¸¦ ÁöÁ¤ÇÑ´Ù. uucp ¸í·É¾î»ó¿¡ ¾Æ¹« ¿É¼Çµµ ÁöÁ¤ÇÏÁö ¾ÊÀ» °æ¿ì¿¡´Â ÇöÀç ¸í·É¾î¸¦ ½ÇÇàÇÏ°í ÀÖ´Â ¸ðµç uucp ÀÛ¾÷ ¿ä±¸ÀÇ »óŸ¦ Ãâ·ÂÇÑ´Ù. --------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­µµ BNU À¯Æ¼¸±Æ¼¿¡ ´ëÇØ °è¼Ó ¼³¸í µå¸®°Ú½À´Ï´Ù. --------------------------------------------------------------------------- #52 À¯´Ï½Ã½º (adunis2 ) BNU ³×Æ®¿÷ À¯Æ¿¸®Æ¼: cu 03/03 13:37 207 line BNU(Basic Networking Utilities): cu --------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. --------------------------------------------------------------------- 1. cu(call unix) cu cu ¸í·ÉÀº »ç¿ëÀÚ°¡ ¶Ç´Ù¸¥ ½Ã½ºÅÛÀ¸·ÎÀÇ ¿¬°á, Áï, ·Î±×ÀÎÇÏ¿© ¿ø·¡ÀÇ ½Ã½ºÅÛ¿¡¼­ ·Î±×ÀÎ »óÅ·Π´Ù¸¥ ½Ã½ºÅÛÀÇ ±â´ÉÀ» »ç¿ëÇÏ°Ô ÇØ ÁØ´Ù. ÀÌ cu ±â´ÉÀ¸·Î local system¿¡ Á¢¼ÓµÈ ´Ü¸»±â¸¦ ÅëÇÏ¿© remote systemÀÇ ÀÀ¿ë ÇÁ·Î±×·¥À» »ç¿ëÇÒ ¼ö ÀÖ°Ô µÈ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ cu [options] [destination] ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ cu´Â ´Ù¸¥ À¯´Ð½º ½Ã½ºÅÛ, Å͹̳Î, ºñ À¯´Ð½º ½Ã½ºÅÛÀ» È£ÃâÇÑ´Ù. cu´Â È­ÀÏÀÇ Àü¼Û¿¡ ´ëÇÏ¿© ´ëÈ­ Çü½ÄÀ¸·Î °ü¸®ÇÑ´Ù. cu ¸í·É¾îÀÇ ½ÇÇàÀº 2 ´Ü°è·Î °í·ÁÇÒ ¼ö ÀÖ´Ù. ù¹ø° ´Ü°è´Â Á¢¼ÓÀÌ È®¸³µÇ´Â Á¢¼Ó ´Ü°è(Connection Phase)ÀÌ´Ù. Á¢¼ÓÀÌ ¼öÇàµÇ¸é ´ëÈ­ ´Ü°è°¡(Conversation Phase) ½ÃÀ۵ȴÙ. -d ¿É¼ÇÀº ÀÌµé µÎ ´Ü°è¿¡¼­ ÁöÁ¤ °¡´ÉÇÑ À¯ÀÏÇÑ ¿É¼ÇÀÌ´Ù. -d ÇÁ¸°Æ® µÇ¾îÁú Diagnostic traces(ÇÁ·Î±×·¥ ½ÇÇàÀ» °¨½Ã ÃßÀûÇÏ´Â ±â´É)À» ¼öÇàÇÑ´Ù. Á¢¼Ó ´Ü°è(Connection phase) cu´Â uucp°¡ Á¢¼ÓÀ» È®¸³Çϱâ À§ÇØ ¼öÇàÇÏ´Â °Í°ú µ¿ÀÏÇÑ ¸ÞÄ«´ÏÁòÀ» ÀÌ¿ëÇÑ´Ù. ÀÌ°ÍÀº uucp Á¦¾î È­ÀÏÀÎ /etc/uucp/Devices¿Í /etc/uucp/Systems¸¦ ÀÌ¿ëÇÑ´Ù´Â °ÍÀ» ÀǹÌÇÑ´Ù. ÀÌ·¯ÇÑ Æ¯¼ºÀº Á¢¼ÓÀ» È®¸³Çϱâ À§ÇØ ¿©·¯°³ÀÇ ´Ù¸¥ ¸Åü(media)Áß¿¡ ¼±ÅÃÇÒ ¼ö ÀÖ´Â ´É·ÂÀ» cu¿¡°Ô ºÎ¿©ÇÑ´Ù. ¿©±â¼­ ¸Åü(media)¶ó ÇÔÀº ÀüÈ­¶óÀÎ (Telephone line), Á÷Á¢Á¢¼Ó(Direct connection), LAN(Local Area Network)À» ÀǹÌÇÑ´Ù. Device È­ÀÏÀÌ ½Ã½ºÅÛ¿¡¼­ »ç¿ë °¡´ÉÇÑ ¸ÅüÀÇ ¸ñ·ÏÀ» °¡Áö°í ÀÖ´Ù. Systems È­ÀÏÀº ÀϹÝÀûÀ¸·Î Àб⠺Ұ¡´ÉÇÑ ÇüÅ·Π¿ø°ÝÁö ½Ã½ºÅÛÀ¸·Î Á¢¼ÓÇϱâ À§ÇÑ Á¤º¸¸¦ °®°í ÀÖ´Ù. cu ¸í·É¾î ¶óÀλóÀÇ destination ÆĶó¸ÞÅÍ´Â cu¿¡°Ô Á¢¼ÓÇÒ ½Ã½ºÅÛÀÌ ¹«¾ùÀΰ¡¸¦ ¾Ë·ÁÁÖ±âÀ§ÇØ »ç¿ëµÈ´Ù. destinationÀº ¹ÌÁöÁ¤ ¶Ç´Â ÀüÈ­ ¹øÈ£, ½Ã½ºÅÛ ¸í, ±×¸®°í LAN ¾îµå·¹½º¸¦ ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù. ÀüÈ­ ¹øÈ£´Â ´ÙÀÌ¾ó ¹®ÀÚ (0¿¡¼­ 9±îÁöÀÇ ¼ýÀÚ, * ¿Í #)µé°ú Ư¼ö¹®ÀÚÀÎ =°ú -·Î ±¸¼ºµÈ ¹®ÀÚ¿­ÀÌ´Ù. = Ç¥½Ã´Â º¸Á¶ÀûÀÎ ´ÙÀÌ¾ó ¹®ÀÚÀÌ°í, - ¹®ÀÚ´Â 4ÃÊ°£ÀÇ Áö¿¬À» ÀǹÌÇÑ´Ù. ½Ã½ºÅÛ ¸íÀº uucp°¡ È£ÃâÇÒ ¼ö ÀÖ´Â ÄÄÇ»ÅÍÀÇ À̸§ÀÌ´Ù. uuname ¸í·É¾î´Â ½Ã½ºÅÛ ¸íµéÀÇ ¸ñ·ÏÀ» ÇÁ¸°Æ® ÇÑ´Ù. LAN ¾îµå·¹½º´Â ½Ã½ºÅÛ¿¡ ±¸ÃàµÈ LAN ¹®¼­¸¦ ÅëÇØ È®ÀÎÇÒ ¼ö ÀÖ´Ù. ÀÌÈÄ ¼³¸íÇÒ -c ¶Ç´Â -l ¿É¼ÇÀÌ »ç¿ëµÇÁö ¾ÊÀº °æ¿ì, cu´Â »ç¿ëÇØ¾ß ÇÒ ¸Åü¸¦ °áÁ¤Çϱâ À§ÇØ destinationÀ» »ç¿ëÇÏ°Ô µÈ´Ù. ¸¸ÀÏ destinationÀÌ ÀüÈ­¹øÈ£À̸é, cu´Â ÀüÈ­¶óÀÎ ¸Åü¸¦ ÀÌ¿ëÇÏ·Á´Â °ÍÀ¸·Î °¡Á¤ÇÏ°í, ACU(Automatic Call Unit)À» ¼±ÅÃÇÑ´Ù. ¸¸ÀÏ destinationÀÌ ÀüÈ­¹øÈ£°¡ ¾Æ´Ï¸é cu´Â ½Ã½ºÅÛ ¸íÀ¸·Î °¡Á¤ÇÑ´Ù. cu´Â uucp È£Ãâ ¸ÞÄ«´ÏÁòÀ» µû¸£°ÔµÇ°í, ÃÖ¼±ÀÇ À¯¿ëÇÑ Á¢¼ÓÀ» ¾ò±â À§ÇØ Systems °ú Devices È­ÀÏÀ» »ç¿ëÇÑ´Ù. cu°¡ ¼±ÅÃµÈ ¸Åü¿¡ »óÀÀÇÏ´Â Àü¼Û¼Óµµ¸¦ ¼±ÅÃÇÑ ÀÌÈÄ¿¡´Â, destinationÀÌ ½Ã½ºÅÛ ¸íÀÏ °æ¿ì¿¡ -s ¿É¼ÇÀ» »ç¿ëÇÒ ¼ö ¾ø´Ù. -c¿Í -l ¿É¼ÇÀº ÀÌ·¯ÇÑ µðÆúÆ® ÀÛ¾÷ ó¸® ÇüŸ¦ ¼öÁ¤ÇÒ ¼ö ÀÖ´Ù. -c ¿É¼ÇÀº Device È­ÀÏÀÇ Type Çʵ带 ÁöÁ¤ÇÔÀ¸·Î½á LANÀ» ¼±ÅÃÇϱâ À§Çؼ­ ¾ÆÁÖ ºó¹øÈ÷ »ç¿ëµÈ´Ù. ÀÌ ¶§¿¡ destinationÀº system nameÀÎ °ÍÀ¸·Î °¡Á¤µÈ´Ù. system nameÀ¸·ÎÀÇ Á¢¼ÓÀÌ ½ÇÆÐÇϸé, LAN ¾îµå·¹½ºÃ³·³ destinationÀ» ÀÌ¿ëÇÏ¿© Á¢¼ÓÀÌ ½ÃµµµÇ¾î Áø´Ù. -l ¿É¼ÇÀº Á÷Á¢ Á¢¼Ó (Direct connection)°ú °ü·ÃµÈ ÀåÄ¡¸¦ ÁöÁ¤Çϱâ À§ÇÏ¿© »ç¿ëµÈ´Ù. ¸¸ÀÏ Á¢¼ÓÀÌ ¿ø°ÝÁö ½Ã½ºÅÛÀ¸·Î Á¤È®ÇÑ Á÷Á¢Á¢¼ÓÀ̸é, ±×¶§´Â destinationÀ» ÁöÁ¤ÇÒ ÇÊ¿ä°¡ ¾ø´Ù. ÀÌ °ÍÀÌ destinationÀ» ÁöÁ¤ÇÏÁö ¾Ê¾Æµµ µÇ´Â À¯ÀÏÇÑ °æ¿ìÀÌ´Ù. ´Ù¸¥ ÇÑÆíÀ¸·Î´Â ÁöÁ¤ÇÑ ÀåÄ¡°¡ ´ÙÀ̾ó·¯(dialer)·Î Á¢¼ÓµÇ´Â °æ¿ì°¡ ÀÖÀ» ¼ö ÀÖ´Ù. ±×·¡¼­ destinationÀ¸·Î½á ÀüÈ­¹øÈ£¸¦ ÁöÁ¤ÇÏ´Â °ÍÀÌ Àû´çÇÏ´Ù. -c ¿Í -l ¿É¼ÇÀº µ¿ÀÏ ¸í·É¾î ¶óÀÎ»ó¿¡ ÁöÁ¤ÇÒ ¼ö ¾ø´Ù. cu ¸í·É¾î´Â ¸¹Àº ¿É¼ÇÀ» °®°í ÀÖ´Ù. -c, -l, -s ¿É¼ÇÀº ¸Åü¸¦ ¼±ÅÃÇÏ´Â ºÎºÐ¿¡¼­ »ç¿ëµÇ¸ç, ³ª¸ÓÁö ¿É¼ÇÀº Åë½Å ¶óÀÎÀ» ±¸¼ºÇϴµ¥¿¡ »ç¿ëµÈ´Ù. -sspeed 300, 1200, 2400, 4800, 9600°ú °°Àº Àü¼Û¼Óµµ¸¦ ÁöÁ¤ÇÏ´Â ¿É¼ÇÀÌ´Ù. ¹ÌÁöÁ¤½Ã¿¡ °¡Á¤µÇ´Â Àü¼Û¼Óµµ´Â /etc/uucp/Devices È­ÀÏÀÇ ¶óÀÎ Á¾·ù¿¡ µû¸¥ °ªÀÌ Àû¿ëµÈ´Ù. ´ëºÎºÐÀÇ ¸ðµ©Àº 300, 1200, 2400À̸ç, Á÷Á¢ Á¢¼Ó ¶óÀÎÀº 2400 ÀÌ»óÀ¸·Î ¼³Á¤µÉ ¼ö ÀÖ´Ù. -ctype Device È­ÀÏÀÇ Ã¹¹ø° Çʵå´Â Type ÇʵåÀÌ´Ù. -c ¿É¼ÇÀº cu ¸í·É¾î¿¡°Ô »ç¿ëÀÚ°¡ ÁöÁ¤ÇÑ type°ú ÀÏÄ¡ÇÏ´Â Type Çʵ峻ÀÇ ¿£Æ®¸®¸¸À» ÀÌ¿ëÇϵµ·Ï ÇÑ´Ù. »ç¿ëÀÚ°¡ ÁöÁ¤ÇÏ´Â typeÀº Åë»ó LANÀÇ À̸§ÀÌ´Ù. -lline Åë½Å ¶óÀÎÀ¸·Î½á »ç¿ëÇÏ´Â ÀåÄ¡¸íÀ» ÁöÁ¤ÇÑ´Ù. -bn nÀ» ¶óÀλ󿡼­ 󸮵Ǵ ºñÆ®(bit)ÀÇ ¼ö·Î ÁöÁ¤ÇÑ´Ù. -e Even(¦¼ö) Æ丮Ƽ¸¦ ¼³Á¤ÇÑ´Ù. -h Åë½Å ¸ðµå¸¦ half-duplex·Î ¼³Á¤ÇÑ´Ù. -n ÀüÈ­¹øÈ£¿¡ ´ëÇÑ »ç¿ëÀÚÇÁ·ÒÇÁÆ®¸¦ ¿ä±¸ÇÑ´Ù. -o Odd(Ȧ¼ö) Æ丮Ƽ¸¦ ¼³Á¤ÇÑ´Ù. -t ÀÚµ¿ ÀÀ´äÀ¸·Î ¼³Á¤µÇ¾î ÀÖ´Â Å͹̳ÎÀ» Á¶Á¤Çϱâ À§ÇØ »ç¿ëÇÑ´Ù. ´ëÈ­ ´Ü°è(Coversation Pharse) Á¢¼ÓÀ» ¼öÇàÇÑ ÀÌÈÄ, cu À¯Æ¿¸®Æ¼´Â µÎ°¡Áö 󸮸¦ ¼öÇàÇÑ´Ù. Àü¼Û 󸮴 ǥÁØ ÀÔ·ÂÀ¸·Î ºÎÅÍ(Å°º¸µå) µ¥ÀÌŸ¸¦ Àаí, ´Ü, ~·Î ½ÃÀÛÇÏ´Â ¶óÀÎÀº Á¦¿ÜÇÑ´Ù., ¿ø°ÝÁö ½Ã½ºÅÛ¿¡ µ¥ÀÌŸ¸¦ Àü´ÞÇÑ´Ù. ¼ö½Å 󸮴 ¿ø°ÝÁö ½Ã½ºÅÛÀ¸·Î ºÎÅÍ µ¥ÀÌŸ¸¦ ¹Þ¾ÆµéÀÌ°í, ´Ü, ~·Î ½ÃÀÛÇÏ´Â ¶óÀÎÀº Á¦¿ÜµÈ´Ù., Ç¥ÁØ Ãâ·Â ÀåÄ¡¿¡ µ¥ÀÌŸ¸¦ Àü´ÞÇÑ´Ù. ÀϹÝÀûÀ¸·Î DC3/DC1 ÇÁ·ÎÅäÄÝÀÌ ¹öÆÛ°¡ ÃÊ°úÇÏÁö ¾Êµµ·Ï ÇϱâÀ§ÇØ, ¿ø°ÝÁö ½Ã½ºÅÛÀ¸·Î ºÎÅÍ ÀÔ·ÂÀ» Á¦¾îÇϱâ À§ÇØ »ç¿ëµÈ´Ù. ~·Î ½ÃÀÛÇÏ´Â ¶óÀÎÀº Ư¼öÇÑ Àǹ̸¦ °®°í ÀÖ´Ù. Àü¼Û 󸮴 ´ÙÀ½°ú °°Àº »ç¿ëÀÚ°¡ ÁöÁ¤ÇÑ ¸í·É¾îµéÀ» Çص¶ÇÑ´Ù. ~. ´ëÈ­½Ä 󸮸¦ Á¾·áÇÑ´Ù. ~! ½© ¸í·É¾îµéÀ» ¼öÇàÇϱâ À§ÇØ Local System»óÀÇ ½©·Î ÀϽÃÀûÀ¸·Î ºüÁ® ³ª°£´Ù. ~!cmd Local System¿¡¼­ ÁöÁ¤ÇÑ cmd¸¦ ½ÇÇàÇÑ´Ù. ~$cmd Local System¿¡¼­ cmd¸¦ ½ÇÇàÇÏ°í, ¿ø°ÝÁö ½Ã½ºÅÛ¿¡ ±× Ãâ·ÂÀ» º¸³½´Ù. ~cd Local System»ó¿¡ µð·ºÅ丮¸¦ º¯°æÇÑ´Ù. ~take from [to] Remote System»óÀÇ È­ÀÏÀ» Local System»óÀÇ È­ÀÏ·Î º¹»çÇÑ´Ù. ~put from [to] Local System»óÀÇ È­ÀÏÀ» Remote System»óÀÇ È­ÀÏ·Î º¹»çÇÑ´Ù. ~~line ~lineÀ» Remote System¿¡ Àü´ÞÇÑ´Ù. ~%break Remote System¿¡ BREAK¸¦ Àü¼ÛÇÑ´Ù. ~debug µð¹ö±ë ¿É¼ÇÀ» on ¶Ç´Â offÇÑ´Ù. ~t »ç¿ëÀÚ ´Ü¸»¿¡ ´ëÇÑ termio ±¸Á¶ º¯¼öµéÀÇ °ªÀ» ÇÁ¸°Æ® ÇÑ´Ù. ~l ¿ø°Ý Åë½Å ¶óÀο¡ ´ëÇÑ termio ±¸Á¶ º¯¼öÀÇ °ªÀ» ÇÁ¸°Æ® ÇÑ´Ù. ~ifc DC3/DC1 ÀÔ·Â Á¦¾î ÇÁ·ÎÅäÄÝ°ú ÀÔ·Â Á¦¾î ¹Ì¼öÇà»çÀ̸¦ ¼­·Î ¹Ù²Ù¾î Àû¿ëÇÑ´Ù. ~ofc Ãâ·Â Á¦¾î ¼³Á¤À» °¡´É ¶Ç´Â ºÒ°¡´ÉÇÏ°Ô ÇÑ´Ù. ~divert ÀÚ¹ßÀû Àüȯ(unsolicited diversions)À» Çã¿ë ¶Ç´Â Çã¿ëÇÏÁö ¾Ê´Â´Ù. ~old ¼ö½ÅµÇ´Â Àüȯ¿¡ ´ëÇؼ­ ±¸¹öÀüÀÇ ¹®¹ýÀ» Çã¿ë ¶Ç´Â Çã¿ëÇÏÁö ¾Ê´Â´Ù. cu ¸í·É¾î°¡ ½Ã½ºÅÛ X¿¡¼­ ½Ã½ºÅÛ Y·Î Á¢¼ÓÇϱâ À§ÇØ »ç¿ëµÇ°í, ¿¬ÀÌ¾î ½Ã½ºÅÛ Y¿¡¼­ ½Ã½ºÅÛ Z·Î Á¢¼ÓÇÏ·Á°í »ç¿ëµÉ¶§, ½Ã½ºÅÛ Y¿¡¼­ ~~¸¦ »ç¿ëÇÏ¿© ¸í·É¾î¸¦ ½ÇÇàÇÒ ¼ö ÀÖ´Ù. ´ÙÀ½Àº Á¢¼ÓµÇ´Â ½Ã½ºÅÛ»ó¿¡¼­ÀÇ uname ¸í·É¾îÀÇ ½ÇÇàÀ» º¸¿©ÁÖ°í ÀÖ´Ù. uname Z <--- uname ¸í·ÉÀÇ ½ÇÇà °á°ú ~[X] !uname X <--- uname ¸í·ÉÀÇ ½ÇÇà °á°ú ~~[Y] !uname Y <--- uname ¸í·ÉÀÇ ½ÇÇà °á°ú ¿¹¸¦µé¾î cu ¸í·É¾îÀÇ ½ÇÇàÀ» È®ÀÎÇØ º¸ÀÚ. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ cu -s1200 9=12015551234 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ À§ÀÇ ¿¹´Â 1200ÀÇ Àü¼Û¼Óµµ·Î 9 1 201 555 1234¶ó´Â ÀüÈ­¶óÀÎÀ¸·Î ½Ã½ºÅÛÀ» Á¢¼ÓÇÏ·Á°í ÇÏ´Â ¿¹ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ cu -c DK address ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ À§ÀÇ ¿¹´Â DK¶ó´Â LAN ³×Æ®¿÷»óÀÇ address·Î ÁöÁ¤µÇ´Â ½Ã½ºÅÛÀ¸·ÎÀÇ ·Î±×ÀÎÀ» ¼öÇàÇÏ´Â ¿¹ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ cu -l /dev/term/XX ¦¢ ¦¢ cu -l term/XX ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ Á÷Á¢ Á¢¼Ó ¶óÀÎÀ» ÅëÇØ Æ¯Á¤ ½Ã½ºÅÛÀ¸·Î ·Î±×ÀÎÀ» ¼öÇàÇÏ·Á´Â ¿¹ÀÌ´Ù. ( Direct Connect Line ) ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ cu -s1200 -l term/XX ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÁöÁ¤ÇÑ Àü¼Û ¼Óµµ¸¦ °®°í, ƯÁ¤ ½Ã½ºÅÛ¿¡ ·Î±×ÀÎ ÇÏ·Á´Â ¿¹ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ cu -l culXX 9=12015551234 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ Auto dialer¸¦ ÅëÇØ Æ¯Á¤ ¶óÀÎÀ» »ç¿ëÇÏ¿© ½Ã½ºÅÛÀ» È£ÃâÇÏ´Â ¿¹ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ cu systemname ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ½Ã½ºÅÛ À̸§À» »ç¿ëÇÏ¿© Á¢¼ÓÇÏ´Â ¿¹ÀÌ´Ù. --------------------------------------------------------------------------- ´ÙÀ½¿¡´Â BNU À¯Æ¿¸®Æ¼ÀÇ ÃÖÁ¾ °­ÀÇ°¡ ½Ç½ÃµË´Ï´Ù. --------------------------------------------------------------------------- #53 À¯´Ï½Ã½º (adunis2 ) BNU ³×Æ®¿÷ À¯Æ¿¸®Æ¼: uux,uuxqt 03/03 19:37 98 line BNU(Basic Networking Utilities): uux, uuxqt --------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. --------------------------------------------------------------------- 1. uux ( Unix to Unix system command execution ) ÀÌ ¸í·ÉÀº Remote System»ó¿¡¼­ ƯÁ¤ ¸í·É¾îÀÇ ½ÇÇàÀ» Çã¿ëÇÑ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ uux [option] command-string ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ uux´Â °³°³ÀÇ ½Ã½ºÅÛÀ¸·ÎºÎÅÍ ¿©·¯ È­ÀϵéÀ» ¸ðÀ¸°í, ƯÁ¤ÀÇ ½Ã½ºÅÛ¿¡¼­ ¸í·É¾î¸¦ ½ÇÇàÇÏ°í, Ç¥ÁØ Ãâ·ÂÀ» È­ÀÏ·Î º¸³½´Ù. (ÁÖÀÇ) º¸¾È À¯Áö Ãø¸é¿¡¼­, uux·ÎºÎÅÍ ¹Þ¾ÆµéÀÎ ¿ä±¸µéÀ» ´ëÇؼ­, ´ëºÎºÐÀÇ ½Ã½ºÅÛÀº ½ÇÇà °¡´ÉÇÑ ¸í·É¾îµéÀ» Á¦ÇÑÇÑ´Ù. ( ¿ø°Ý ½ÇÇà½ÃÀÇ Á¢±Ù ±ÇÇÑÀº /etc/uucp/Permmissions¿¡ Á¤ÀǵǾî ÀÖ´Ù. ) ¸í·É¾î ¹®ÀÚ¿­Àº ¸í·É¾î¿Í È­ÀϸíÀÌ system-name!ÀÌ ¼±ÇàµÇ´Â Á¡À» Á¦¿ÜÇÏ°í´Â, ¸í·É¾î ¶óÀΰú À¯»çÇÑ Çϳª ¶Ç´Â ±×ÀÌ»óÀÇ ÀÎÀÚ(Arguments)·Î ±¸¼ºµÈ´Ù. Null ½Ã½ºÅÛ ¸íÀº Local systemÀ¸·Î °£ÁֵȴÙ. È­ÀϸíÀº ´ÙÀ½°ú °°Àº Çü½ÄÀ¸·Î ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù. 1) Àý´ë °æ·Î¸í 2) ~xxx°¡ ¼±ÇàÇÏ´Â °æ·Î¸í xxx´Â ½Ã½ºÅÛ¿¡ µî·ÏµÈ ·Î±×ÀÎ ¸íÀ̸ç, ½ÇÇà½Ã ÇØ´ç »ç¿ëÀÚÀÇ È¨ µð·ºÅ丮·Î ´ëÄ¡µÈ´Ù. 3) ¾Æ¹«°Íµµ ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é ÇöÀçÀÇ ÀÛ¾÷ µð·ºÅ丮°¡ Àû¿ëµÈ´Ù. ¿¹¸¦µé¸é ´ÙÀ½°ú °°´Ù. uux "!diff sys1!/home/dan/file1 sys2!/a4/dan/file2 > !~/dan/file.diff" ÀÌ ¿¹´Â sys1°ú sys2¶ó´Â ½Ã½ºÅÛÀÇ file1°ú file2¸¦ diff ¸í·É¾î¸¦ ÅëÇØ º´ÇÕÇÑÈÄ ±× °á°ú¸¦ Local system»óÀÇ PUBDIRµð·ºÅ丮 ¹ØÀÇ dan µð·ºÅ丮³»¿¡ file.diff¶ó´Â È­ÀÏ¿¡ ÀúÀåÇÏ´Â ¸í·É¾î ¶óÀÎÀ» º¸¿©ÁÖ°í ÀÖ´Ù. ¿©±â¼­ PUBDIRÀ̶ó´Â µð·ºÅ丮´Â uucp ÆåÅ°Áö¿¡ Á¤ÀÇµÈ °ø°ø µð·ºÅ丮À̸ç, Åë»ó /var/spool/uucppublic µð·ºÅ丮ÀÌ´Ù. <,>,;,|¿Í °°Àº ½© Ư¼ö¹®ÀÚ¸¦ ¸í·É¾î»ó¿¡ ÁöÁ¤ÇϱâÀ§Çؼ­´Â »çÀü¿¡ quoting µÇ¾î¾ß ÇÑ´Ù. uux "a!cut -f1 b!/usr/file > c!/usr/file" À§ÀÇ ¿¹´Â ½Ã½ºÅÛ b·ÎºÎÅÍ /usr/file È­ÀÏÀ» ¹Þ¾Æ¼­, ½Ã½ºÅÛ a¿¡ º¸³½´Ù. ±×¸®°í ¹ÞÀº È­ÀÏ¿¡ ´ëÇØ a ½Ã½ºÅÛ»ó¿¡¼­ cut ¸í·É¾î¸¦ ½ÇÇàÇÏ°í, ±× °á°ú¸¦ c ½Ã½ºÅÛÀÇ /usr/file¿¡ ÀúÀåÇÑ´Ù. uux´Â ¿ä±¸ÇÑ ¸í·É¾îÀÇ ½ÇÇàÀÌ Remote system»ó¿¡¼­ Çã¿ëµÇÁö ¾ÊÀ¸¸é Å뺸ÇØ ÁØ´Ù. ÀÌ·¯ÇÑ ÅëÁö ±â´ÉÀº -n ¿É¼Ç¿¡ ÀÇÇØ ¸·À»¼ö ÀÖ´Ù. ÀÌ °æ¿ì ÀÀ´äÀº Remote systemÀ¸·Î ºÎÅÍ ¸ÞÀÏ·Î º¸³»Áø´Ù. uux¿¡¼­ »ç¿ëµÇ´Â ¿É¼ÇÀº ¿Â¶óÀÎ ÂüÁ¶ ¸Þ´º¾óÀ» ÂüÁ¶ ¹Ù¶õ´Ù. 2. uuxqt ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ /usr/lib/uucp/uuxqt [option] ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ uuxqt´Â uux ¸í·É¾î¸¦ »ç¿ëÇÔ¿¡ ÀÇÇØ »ý¼ºµÈ Remote systemÀ¸·Î ºÎÅÍÀÇ ¿ø°Ý ÀÛ¾÷ ó¸® ¿ä±¸¸¦ ½ÇÇàÇÏ´Â ÇÁ·Î±×·¥ÀÌ´Ù.uuxqt ÇÁ·Î±×·¥Àº ½ÇÇà ¿ä±¸¸¦ ã±â À§ÇØ ½ºÇ® µð·ºÅ丮(Spool Directory)¸¦ °Ë»öÇÑ´Ù. °¢°¢ÀÇ ¿ä±¸¿¡ ´ëÇØ, uuxqt´Â ¿ä±¸µÈ µ¥ÀÌŸ È­ÀÏÀÇ °¡¿ë¼º, ¾ï¼¼½º °¡´É ¿©ºÎ, ¿ä±¸µÈ ¸í·ÉÀÌ ¿ä±¸ ½Ã½ºÅÛ¿¡¼­ ¿ä±¸ °¡´ÉÇÑÁö¸¦ °Ë»çÇÑ´Ù. Permissions È­ÀÏÀº ÇØ´ç È­ÀÏÀÇ ¾ï¼¼½º °¡´É ¿©ºÎ¹× ¸í·É¾î ½ÇÇà Á¢±Ù ±ÇÇÑÀ» °ËÁõÇϱâ À§ÇØ »ç¿ëµÈ´Ù. uuxqt ¸í·É¾î¸¦ ½ÇÇàµÇ±â Àü¿¡ ¼³Á¤µÇ´Â µÎ°¡Áö ȯ°æ º¯¼ö°¡ ÀÖ´Ù. - UU_MACHINEÀº ÀÛ¾÷À» º¸³½ ½Ã½ºÅÛ ¸íÀÌ ¼³Á¤µÈ´Ù. - UU_USER´Â ÀÛ¾÷À» º¸³½ »ç¿ëÀÚ ¸íÀÌ ¼³Á¤µÈ´Ù. ÀÌ·¯ÇÑ º¯¼öµéÀº ½ÇÇàµÇ´Â ¿ä±¸¿¡ ´ëÇÑ Á¤º¸¹× Åë°è Á¤º¸¹× Á¦ÇÑÀ» °¡ÇÏ´Â ÇÁ·Î±×·¥À» ÀÛ¼ºÇϴµ¥ »ç¿ëµÇ¾îÁú ¼ö ÀÖ´Ù. uuxqt¸í·É¾î´Â ´ÙÀ½°ú °°Àº ¿É¼ÇÀ» °®´Â´Ù. -ssystem Remote system ¸íÀ» ÁöÁ¤ÇÑ´Ù. -xdebug_level ¸í·É¾î ½ÇÇà °ËÁõ ·¹º§À» 0ºÎÅÍ 9±îÁöÀÇ ¼ýÀÚ·Î ÁöÁ¤ÇÑ´Ù. 9°¡ °¡Àå ³ôÀº ·¹º§À̸ç, ÀÚ¼¼ÇÑ °ËÁõ Á¤º¸µéÀÌ Ç¥½ÃµÈ´Ù. --------------------------------------------------------------------------- Áö±Ý±îÁöÀÇ À¯´Ð½º ±âº»ÀûÀÎ È°¿ë ¹æ½Ä¿¡ ´ëÇÑ °­ÀǸ¦ º¸¾ÆÁֽŠ¿©·¯ºÐ²² ±íÀº °¨»ç¸¦ µå¸³´Ï´Ù. ¿©·¯ºÐÀÇ È£ÀÀ¿¡ ÈûÀÔ¾î Áö±Ý±îÁö °­ÀǸ¦ °è¼ÓÇÒ ¼ö ÀÖ¾ú´ÙÇصµ °ú¾ðÀº ¾Æ´Ò °ÍÀÔ´Ï´Ù. µ¶ÀÚ ¿©·¯ºÐ²² °¨»ç¸¦ µå¸®´Â ¸¶À½À¸·Î ÀÌÈĺÎÅÍ´Â À¯´Ð½ºÀÇ ÀÀ¿ëÀ̶õ ÁÖÁ¦·Î °­ÀǸ¦ °è¼Ó ÇÏ°Ú½À´Ï´Ù. ÀÌ °­ÀÇ°¡ ºñ·Ï ¼ÒÁÖÁ¦º°·Î ÁøÇàµÇ´Â °­ÀÇÀ̱ä ÇÏÁö¸¸, ¿©·¯ºÐÀÌ ²ÙÁØÈ÷ °¢°¢ÀÇ °­ÀÇ ³»¿ëÀ» ÀÍÇô ³ª°¡½Å´Ù¸é, ¿©·¯ºÐµµ À¯´Ð½º Àü¹®°¡°¡ µÇ½Ç¼ö ÀÖÀ» °ÍÀÔ´Ï´Ù. °¨»çÇÕ´Ï´Ù. --------------------------------------------------------------------------- #54 À¯´Ï½Ã½º (adunis2 ) ÀÔÃâ·Â ¹æÇâÀüȯÀÇ ÀÏ¹Ý °³¿ä 03/04 21:35 128 line ¸í·É¾î ÀÔÃâ·Â ¹æÇâÀüȯ(Command Input/Output Redirection) --------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. --------------------------------------------------------------------- 1. Ç¥ÁØ ÀÔ·Â, Ç¥ÁØ Ãâ·Â, Ç¥ÁØ ¿¡·¯ ´ëºÎºÐÀÇ ¸í·É¾îµéÀº Ç¥ÁØ ÀÔ·Â(Standard input)À̶ó ºÒ¸®¿ì´Â Á¤º¸¿ø(Source)À¸·ÎºÎÅÍ ÀÔ·ÂÀ» ¹Þ´Â´Ù. ´Ù¸¥¹æ½ÄÀ¸·Î ÁöÁ¤ÇÑ °æ¿ì¸¦ Á¦¿ÜÇÏ°í´Â, ¹ÌÁöÁ¤½ÃÀÇ Á¤º¸¿øÀº Å͹̳Π½ºÅ©¸°ÀÌ´Ù. ¸¶Âù°¡Áö·Î ¸í·É¾î´Â Ç¥ÁØÃâ·Â(Standard output)À̶ó ºÒ¸®¿ì´Â ¸ñÀûÁö(destination)¿¡ Ãâ·ÂÀ» º¸³½´Ù. ¸í·É¾î»ó¿¡ ¸ñÀûÁö¸¦ ¹ÌÁöÁ¤ÇßÀ» °æ¿ì¿¡´Â ±âº»ÀûÀ¸·Î Å͹̳Π½ºÅ©¸°ÀÌ Àû¿ëµÈ´Ù. ¶ÇÇÑ ¸í·É¾î¿¡ ÀÇÇØ »ý¼ºµÈ ¿¡·¯ ¸Þ¼¼ÁöµéÀº, ¹ÌÁöÁ¤½Ã Å͹̳Π½ºÅ©¸°ÀÎ, Ç¥ÁØ ¿¡·¯(Standard error)·Î º¸³»Áø´Ù. À¯´Ð½º ½©Àº ¸í·É¾î ÇÁ·Î±×·¥ÀÇ Ç¥ÁØ ÀÔ·Â, Ç¥ÁØ Ãâ·Â, ±×¸®°í Ç¥ÁØ ¿¡·¯ÀÇ Á¤º¸¿ø°ú ¸ñÀûÁö¸¦ °ü¸®ÇÑ´Ù. ´ÙÀ½Àº À̸¦ º¸¿©ÁÖ´Â ±×¸²ÀÌ´Ù. ¦®¦¬¦¬¦¬¦¬¦¬¦¬¦¯ ¦®¦¬¦° ¦±¦¬¦¯ ¦­ UNIX Shell ¦­ ¦±¦¬¦¯ ¦®¦¬¦° ¦±¦¬¦¬¦¬¦¬¦¬¦¬¦° ¢Æ ¸í·É¾îÀÇ ÀÔÃâ·Â ¹æÇâÀ» °ü¸® ¢Æ ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢Shell Command ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¡ã Standard Output ¢Æ ¢Æ Standard Input Standard Error ¢Æ ¢Æ ¡å ¦®¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¯ ¦­ Screen ¦­ ¦±¦¬¦¬¦¬¦³¦¬¦¬¦¬¦° ¦¬¦¬¦¬¦¬¦µ¦¬¦¬¦¬¦¬ ½ÇÁúÀûÀ¸·Î ¸í·É¾î ÇÁ·Î±×·¥Àº Ç¥ÁØ ÀÔ·ÂÀÌ ½ÇÁ¦·Î Å͹̳ΠŰº¸µå·Î ºÎÅÍ ÀÎÁö ¶Ç´Â È­ÀÏ·Î ºÎÅÍÀÎÁö¸¦ ¾ËÁö ¸øÇÑ´Ù. ¸¶Âù°¡Áö·Î ¸í·É¾î ÇÁ·Î±×·¥Àº Ç¥ÁØ Ãâ·ÂÀÌ Å͹̳Π½ºÅ©¸°À¸·Î °¡´ÂÁö, È­ÀÏ·Î °¡´ÂÁö, ´Ù¸¥ ¸í·É¾î·Î °¡´ÂÁö ¶Ç´Â º¹¼ö°³ÀÇ ¸ñÀûÁö·Î °¡´ÂÁö¸¦ ¾ËÁö ¸øÇÑ´Ù. ÀÌ´Â ÀÌ·¯ÇÑ Ç¥ÁØ ÀÔÃâ·Â¹× ¿¡·¯ÀÇ ¹æÇâ Á¦¾î´Â ½©ÀÌ ¼öÇàÇÔÀ» ÀǹÌÇÑ´Ù. ½©ÀÌ ¸í·É¾î ÇÁ·Î±×·¥ÀÇ Ç¥ÁØ ÀÔ·Â, Ç¥ÁØ Ãâ·Â ±×¸®°í Ç¥ÁØ ¿¡·¯¸¦ ¹æÇâ Àüȯ Çϵµ·Ï Áö½ÃÇÒ ¼ö ÀÖ´Ù. ÀÌ ±â´ÉÀº À¯´Ð½º ½©ÀÇ ¸Å¿ì À¯¿ëÇÑ ±â´ÉÀÌ´Ù. cat ¸í·É¾î´Â Å͹̳ÎÀÌ ¾î¶»°Ô Ç¥ÁØ ÀÔ·Â ±×¸®°í Ç¥ÁØ Ãâ·ÂÀ¸·Î½á »ç¿ëµÇ´ÂÁö¸¦ º¸¿©ÁØ´Ù. cat ¸í·É¾î´Â ¸í·É¾î ¶óÀÎ»ó¿¡ ÁöÁ¤µÈ È­ÀÏ·Î ºÎÅÍ ÀÔ·ÂÀ» ¹Þ¾ÆµéÀÌ°í, È­ÀÏÀÇ ³»¿ëÀ» ½©¿¡ ÀÇÇØ Å͹̳Π½ºÅ©¸°À¸·Î ÁöÁ¤µÈ Ç¥ÁØ Ãâ·ÂÀ¸·Î º¹»çÇÑ´Ù. cat ¸í·É¾î»ó¿¡ È­ÀϸíÀ» ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é, cat ¸í·É¾î´Â Å͹̳ΠŰº¸µåÀΠǥÁØ ÀÔ·ÂÀ¸·Î ºÎÅÍ ÀÔ·ÂÀ» ÃëÇÑ´Ù. ´ÙÀ½Àº cat ¸í·É¾î¸¦ »ç¿ëÇÏ´Â ¿¹¸¦ º¸¿©ÁÖ°í ÀÖ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ÀÌ¿¹´Â cat ¸í·É¾î°¡ ÀÎÀڷνá È­ÀϸíÀ» ¦¢ $cat ¦¢ ÁöÁ¤ÇÏÁö ¾Ê¾ÒÀ» °æ¿ìÀÇ Ã³¸®ÇÏ´Â ÇüŸ¦ º¸¿© ¦¢ _ ¦¢ ÁÖ°í ÀÖ´Ù. cat ¸í·É¾î´Â ÀÌ °æ¿ì Å°º¸µå·Î ºÎÅÍ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÀÔ·ÂÀ» ¹Þ¾Æ À̸¦ ó¸®Çϱâ À§ÇØ, ÀÔ·ÂÀ» ±â´Ù¸°´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $cat ¦¢ ÀÌ¿¹¿¡¼­´Â Ç¥ÁØ ÀԷ ó¸®µÈ ¦¢ Entering a line of text. ¦¢ cat ¸í·É¾î°¡ ¼öÇàµÇ´Â °úÁ¤À» ¦¢ Entering a line of text. ¦¢ º¸¿©ÁØ´Ù. ¶È°°Àº ¶óÀÎÀÌ µÎ¹ø ¦¢ cat continues to copy text ¦¢ Ç¥½ÃµÇ´Â °ÍÀ» º¼¼ö Àִµ¥, ¦¢ cat continues to copy text ¦¢ óÀ½ÀÇ °ÍÀº »ç¿ëÀÚÀÇ ÀÔ·ÂÀÌ°í, ¦¢ until Ctrl-d is pressed ¦¢ µÎ¹ø°ÀÇ °ÍÀº cat ¸í·ÉÀÇ ¦¢ until Ctrl-d is pressed ¦¢ Ç¥ÁØ Ãâ·ÂÀÌ´Ù. ¦¢ on a line by itself ¦¢ cat ¸í·É¾îÀÇ ½ÇÇàÀº ¦¢ on a line by itself ¦¢ ^d¸¦ ´©¸¦¶§±îÁö °è¼ÓµÈ´Ù. ¦¢ <^d> ¦¢ ¦¢ $ ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ 2. Ç¥ÁØ ÀÔÃâ·Â ¹æÇâ Àüȯ Ư¼ö ¹®ÀÚ. ¹æÇâÀüȯ(Redirection) Ư¼ö¹®ÀÚµéÀº ½©ÀÌ Ç¥ÁØÀÔ·ÂÀÇ Á¤º¸¿ø°ú Ç¥ÁØÃâ·Â°ú Ç¥ÁØ¿¡·¯ÀÇ ¸ñÀûÁö¸¦ º¯°æÇÏ´Â ´Ù¾çÇÑ ¹æ½ÄÀ» Á¦°øÇÑ´Ù. ½©·Î ÇÏ¿©±Ý ÇÁ·Î±×·¥ÀÇ ÀÔ·Â, Ãâ·Â, ¶Ç´Â ¿¡·¯ÀÇ ¹æÇâÀ» ÀüȯÇϵµ·Ï Çϱâ À§ÇØ ¸í·É¾î ¶óÀλ󿡼­ »ç¿ëµÇ´Â Ư¼ö¹®ÀÚµéÀº ´ÙÀ½°ú °°´Ù. ¦£¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ ´ë»ó ¦¢ ½Éº¼ ¦¢ ó¸® ³»¿ë ¦¢ ¦¼¦¬¦¬¦¬¦¬¦»¦¬¦¬¦¬¦»¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¾ ¦¢ ÀÔ·Â ¦¢ < ¦¢ ÁöÁ¤ÇÑ È­ÀϷκÎÅÍÀÔ·ÂÀ» ¹Þ¾ÆµéÀδÙ. ¦¢ ¦§¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ ¦¢ > ¦¢ ÁöÁ¤ÇÑ È­ÀÏ¿¡ Ãâ·ÂÀ» ÀúÀåÇÑ´Ù. ¦¢ ¦¢ ¦§¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ Ãâ·Â ¦¢ >> ¦¢ ÁöÁ¤ÇÑ È­ÀÏ¿¡ Ãâ·ÂÀ» Ãß°¡ÇÑ´Ù. (Append) ¦¢ ¦¢ ¦§¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ ¦¢ | ¦¢ ÁöÁ¤ÇÑ ¸í·É¾î·Î Ãâ·ÂÀ» ³Ñ°ÜÁØ´Ù. ¦¢ ¦¢ ¦§¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ ¦¢ tee ¦¢ ¿©·¯°÷ÀÇ ¸ñÀûÁö·Î Ãâ·ÂÀ» º¸³½´Ù. ¦¢ ¦¦¦¡¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¸í·É¾î ¶óÀÎ»ó¿¡ »ó±â¿Í °°Àº Ư¼ö ¹®ÀÚµéÀÌ ÁöÁ¤µÇ¾î ÀÖÀ» °æ¿ì¿¡, ½©Àº ¸í·É¾î°¡ Ä¿³Î¿¡ ÀÇÇØ ½ÇÇàµÇ±â ÀÌÀü¿¡ ÀÌ ¹®ÀÚµéÀ» ¹ø¿ªÇÑ´Ù. 1) ÀÔ·Â ¹æÇâ Àüȯ < ½Éº¼Àº ÁöÁ¤ÇÑ È­ÀϷκÎÅÍ ÀÔ·ÂÀ» ÇÁ·Î±×·¥¿¡ Àü´ÞÇϵµ·Ï ½©¿¡°Ô Áö½ÃÇÑ´Ù. 2) Ãâ·Â ¹æÇâ Àüȯ Ãâ·Â ¹æÇâ ÀüȯÀº Å͹̳Π½ºÅ©¸°°ú ´Ù¸¥ ¸ñÀûÁö·Î ¸í·É¾îÀÇ Ãâ·ÂÀ» ÀüȯÇÑ´Ù. ¸í·É¾î ÇÁ·Î±×·¥ÀÇ Ãâ·ÂÀº È­ÀÏ , ´Ù¸¥ ¸í·É¾î ¶Ç´Â È­ÀÏ°ú ´Ù¸¥ ¸í·É¾î ¾çÂÊÀ¸·Î º¸³¾ ¼ö ÀÖ´Ù. > ½Éº¼Àº ÁöÁ¤ÇÑ È­ÀÏ·Î ÇÁ·Î±×·¥ÀÇ Ãâ·ÂÀ» º¸³»µµ·Ï ½©¿¡°Ô Áö½ÃÇÑ´Ù. >> ½Éº¼Àº ¸í·É¾î·ÎºÎÅÍÀÇ Ç¥ÁØ Ãâ·ÂÀ» ÁöÁ¤ÇÑ È­ÀÏ¿¡ Ãß°¡Çϵµ·Ï ÇÑ´Ù. | ½Éº¼Àº µÑ ¶Ç´Â ±× ÀÌ»óÀÇ ¸í·É¾î¸¦ ¿¬°á½ÃÄÑ ÁØ´Ù. ÀÌ ½Éº¼Àº ÇϳªÀÇ ¸í·É¾îÀÇ Ãâ·ÂÀ» ´ÙÀ½ ¸í·É¾îÀÇ ÀÔ·ÂÀ¸·Î½á ÆÄÀÌÇÁ ¸¦ ÅëÇÏµí ±×´ë·Î Àü´ÞÇØÁֱ⠶§¹®¿¡ Åë»ó ÆÄÀÌÇÁ¶ó ÇÑ´Ù. tee ¸í·É¾î´Â ¸í·É¾îÀÇ Ãâ·ÂÀ» ºÐ¹èÇÏ°í, ÁöÁ¤ÇÑ È­ÀÏ°ú ÆÄÀÌÇÁ»óÀÇ ´ÙÀ½ ¸í·É¾î¿Í °°Àº º¹¼ö°³ÀÇ ¸ñÀûÁö·Î Ãâ·ÂÀ» ÀüȯÇÑ´Ù. --------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­´Â ¹æÇâÀüȯ Ư¼ö¹®ÀÚÀÇ È°¿ë¿¡ ´ëÇØ °­Àǵ˴ϴÙ. --------------------------------------------------------------------------- #55 À¯´Ï½Ã½º (adunis2 ) ÀÔÃâ·ÂÀÇ È­ÀÏ·ÎÀÇ ¹æÇâÀüȯ(Redirection) 03/05 11:02 142 line ¸í·É¾î ÀÔ·Â ¹æÇâÀüȯ(Command Input Redirection) --------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. --------------------------------------------------------------------- 1. ÀÔ·Â ¹æÇâÀüȯ(Input Redirection) ÀÔ·Â ¹æÇâÀüȯÀ» »ç¿ëÇÏ´Â ¸í·É¾î ¶óÀο¡ ´ëÇÑ Çü½ÄÀº ´ÙÀ½°ú °°´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ command [-option] [arguments] < input_file ¦¢ ¦¢ < ½Éº¼Àº È­ÀÏ·ÎÀÇ Ãâ·Â ¹æÇâÀüȯÀ» ³ªÅ¸³½´Ù. ÀÌ ½Éº¼Àº Ç¥ÁØ Ãâ·ÂÀ» Á¦°øÇÏ´Â ¸í·É¾îµé°ú ÇÔ²² »ç¿ëÇÒ ¼ö ÀÖ´Ù. Ãâ·Â ¹æÇâÀüȯ ½Éº¼À» Æ÷ÇÔÇÏ°í ÀÖ´Â ¸í·É¾î ±¸Á¶´Â ´ÙÀ½°ú °°´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ command [-option] [arguments] > output_file ¦¢ ¦¢ >> output_file ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ´Ù½Ã¸»ÇÏÀÚ¸é > ½Éº¼ ÁÖÀ§ÀÇ °ø¹éÀº ²À »ç¿ëÇØ¾ß µÇ´Â °ÍÀº ¾Æ´Ï³ª, °ü½À»óÀ¸·Î °ø¹éÀ» »ç¿ëÇÑ´Ù. ´ÙÀ½Àº Ãâ·Â ¹æÇâÀüȯÀ» º¸¿©ÁÖ´Â ¿¹ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $cat > text ¦¢ ¦¢ Text is not echoed to the screen because ¦¢ ¦¢ it is redirected to the named file. ¦¢ ¦¢ <^d> ¦¢ ¦¢ $cat text ¦¢ ¦¢ Text is not echoed to the screen because ¦¢ ¦¢ it is redirected to the named file. ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÀÌ ¿¹´Â Ç¥ÁØ Ãâ·ÂÀÌ text¶ó´Â È­ÀÏ·Î ¹æÇâÀüȯ µÈ´Ù. cat ¸í·É¾î¿¡ ÀÔ·Â È­ÀÏÀ» ÁöÁ¤ÇÏÁö ¾Ê¾Ò±â ¶§¹®¿¡, ½©Àº <^d>¸¦ ´©¸¦¶§±îÁö Å°º¸µå·ÎºÎÅÍ ÀÔ·ÂÀ» ¹Þ¾Æ cat ¸í·É¾î¿¡ Àü´ÞÇÑ´Ù. À̶§ »ç¿ëÀÚ°¡ ÀÔ·ÂÇÑ ÅؽºÆ®°¡ Ãâ·Â ¹æÇâÀüȯ ½Éº¼¿¡ÀÇÇØ text¶ó´Â È­ÀÏ¿¡ ÀúÀåµÊÀ¸·Î ÀÎÇØ È­¸é»ó¿¡ ¶ÇÇѹø Ç¥½ÃµÇÁö ¾ÊÀ½À» ÁÖ¸ñÇϱ⠹ٶõ´Ù. ÀÚ ±×·³ ¿©±â¿¡¼­ ÇÑ°¡Áö »ý°¢ÇØ º¼ ¹®Á¦°¡ ÀÖ´Ù. cat ¸í·É¾î»ó¿¡ ÁöÁ¤ÇÑ È­ÀÏÀÌ ±âÁ¸¿¡ Á¸ÀçÇÏ´Â È­ÀÏÀÏ °æ¿ì¿¡´Â ¾î¶»°Ô 󸮵ɱî? ´ÙÀ½¿¹´Â ÀÌ Àǹ®¿¡ ´ëÇÑ ´äÀ» º¸¿©ÁØ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $cat > text ¦¢ ¦¢ This text replace the orginal text. ¦¢ ¦¢ <^d> ¦¢ ¦¢ $cat text ¦¢ ¦¢ This text replaces the original text. ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÀÌÀü ¿¹¿¡¼­ text¶ó´Â È­ÀÏ¿¡ 2 ¶óÀÎÀÇ ÅؽºÆ®°¡ ÀÌ¹Ì ÀúÀå µÇ¾ú¾ú´Ù. ±×·±µ¥ µ¿ÀÏÇÑ È­ÀÏÀ» ¶Ç´Ù¸¥ cat ¸í·É¾î»ó¿¡ ÁöÁ¤ÇÏ¿´´Ù. ÀÌ°æ¿ì ±âÁ¸¿¡ Á¸ÀçÇÏ´Â ³»¿ëÀ» µ¤¾î ¾º¿ì°Ô µÈ´Ù. (À̸¦ overwrite¶ó ÇÑ´Ù. ) Bourne shellÀº cat ¸í·É¾îÀÇ Ãâ·Â¿¡ ´ëÇÑ Áغñ¸¦ ÇϱâÀ§ÇØ ±âÁ¸ÀÇ È­ÀÏ ³»¿ëÀ» Áö¿îÈÄ »õ·Î¿î ÀúÀåÀ» ÀúÀåÇÏ°Ô µÈ´Ù. ÀÌ¿Í °°ÀÌ ±âÁ¸¿¡ Á¸ÀçÇÏ´Â È­ÀÏ ³»¿ëÀÇ ¼Ò½ÇÀ» ¹æÁöÇϱâ À§ÇØ, >> ½Éº¼À» »ç¿ëÇÏ¿© »õ·Î¿î ³»¿ëÀ» ±âÁ¸ÀÇ ³»¿ëÀÇ ³¡¿¡ Ãß°¡Çϵµ·Ï ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù. ´ÙÀ½ ¿¹Á¦´Â ±× ¿¹¸¦ º¸¿©ÁÖ°í ÀÖ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $cat >> text ¦¢ ¦¢ Adding more text to the file. ¦¢ ¦¢ $cat text ¦¢ ¦¢ This text replaces the original text. ¦¢ ¦¢ Adding more text to the file. ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ >> ½Éº¼À» »ç¿ëÇÏ¿© ±âÁ¸ÀÇ È­ÀÏ¿¡ »õ·Î¿î ³»¿ëÀ» Ãß°¡ÇÏ´Â °ÍÀ» º¸¿©ÁÖ°í ÀÖ´Ù. ¸í·É¾î»ó¿¡¼­ µ¿ÀÏ È­ÀϸíÀÌ ÀԷ°ú Ãâ·Â¿¡ ´ëÇØ »ç¿ëµÇ¸é, ±âÁ¸ÀÇ È­ÀÏ ³»¿ëÀÌ µ¤¾î ¾º¿öÁö°Ô µÈ´Ù. ¿¹¸¦µé¸é, cat names morenames > names¶ó°í ÁöÁ¤ÇßÀ» °æ¿ì, names È­ÀÏÀº morenames È­ÀÏÀÇ ³»¿ë¸¸À» °®°Ô µÈ´Ù. ÀÌ´Â ½©ÀÌ ¿ì¼± ¹æÇâÀüȯ ½Éº¼ÀÇ ¿ìÃø¿¡ ÁöÁ¤µÈ È­ÀÏÀ» ºñ¿îÈÄ ¸í·ÉÀ» ½ÇÇàÇϱ⠶§¹®ÀÌ´Ù. names È­ÀÏÀÌ ºñ¾îÁ³±â ¶§¹®¿¡, cat ¸í·É¾î¿¡ Àü´ÞµÇ´Â ÀÔ·ÂÀº mornames È­ÀÏÀÇ ³»¿ë»ÓÀÌ´Ù. Áï µ¤¾î¾²±â°¡(overwrite) ¼öÇàµÈ °ÍÀÌ´Ù. ÀÌ·¯ÇÑ »ç°í·Î ÀÎÇÑ È­ÀÏ ³»¿ëÀÇ ¼Ò½ÇÀ» ¸·±â À§Çؼ­ ÀԷ°ú Ãâ·Â È­ÀϸíÀº ´Ù¸£°Ô ÁöÁ¤ÇØ¾ß ÇÑ´Ù. --------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­´Â ¸í·É¾î Ãâ·ÂÀ» ´Ù¸¥ ¸í·É¾îÀ¸·ÎÀÇ ¹æÇâÀüȯ ÇÏ´Â ¹æ½Ä¿¡ ´ëÇØ °­ÀÇÇÕ´Ï´Ù. --------------------------------------------------------------------------- #56 À¯´Ï½Ã½º (adunis2 ) Pipe¿Í Tee¸¦ ÅëÇÑ ¹æÇâÀüȯ(Redirection) 03/06 09:52 115 line ÆÄÀÌÇÁ¸¦ ÀÌ¿ëÇÑ Ãâ·Â ¹æÇâÀüȯ --------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. --------------------------------------------------------------------- 1. ¸í·É¾î·ÎÀÇ Ãâ·Â ¹æÇâÀüȯ(Pipeline) À¯´Ð½ºÀÇ ÆÄÀÌÇÁ(Pipe)´Â µÎ°³ ¶Ç´Â ±× ÀÌ»óÀÇ ¸í·É¾îµéÀ» ¿¬¼ÓÇÏ¿© ¿¬°á½ÃÅ°±â À§ÇÑ ¹æ½ÄÀÌ´Ù. ÀÌ ¹æ½ÄÀº ¸í·É¾îÀÇ ½ÇÇà °á°ú°¡ ¹æÇâÀüȯ µÈ´Ù´Â Ãø¸é¿¡¼­ ƯÁ¤ È­ÀÏ·ÎÀÇ Ãâ·Â ¹æÇâÀüȯ°ú À¯»çÇϳª, ¸í·É¾î·ÎÀÇ Ãâ·Â ¹æÇâÀüȯ ±â´ÉÀº ºÒÇÊ¿äÇÑ È­ÀÏÀÇ »ý¼ºÀ» ÇÏÁö ¾Ê¾Æµµ µÈ´Ù´Â ÀÕÁ¡À» Á¦°øÇÑ´Ù. (À̺κп¡ ´ëÇÑ ÀÚ¼¼ÇÑ ¼³¸íÀº ÈļӵǴ ¿¹Á¦¿¡¼­ ´Ù½Ã ¾ð±ÞÇÑ´Ù.) ÆÄÀÌÇÁ ½Éº¼(|)Àº ´Ù¸¥ ¸í·É¾î·ÎÀÇ Ãâ·Â ¹æÇâÀüȯÀ» ³ªÅ¸³½´Ù. Ç¥ÁØ ÀÔ·ÂÀ» ¹Þ¾ÆµéÀÌ°í, Ç¥ÁØ Ãâ·ÂÀ» »ý¼ºÇÏ´Â ¸í·É¾îµéÀº ÆÄÀÌÇÁ ¶óÀο¡¼­ »ç¿ëµÉ¼ö ÀÖ´Ù. (¿©±â¼­ ÆÄÀÌÇÁ ¶óÀÎÀ̶õ ÆÄÀÌÇÁ¸¦ »ç¿ëÇÏ¿© º¹¼ö°³ÀÇ ¸í·É¾î¸¦ ³ª¿­ÇÑ ¸í·É¾î ¶óÀÎÀ» ÀǹÌÇÑ´Ù.) ÆÄÀÌÇÁ ½Éº¼À» »ç¿ëÇÏ´Â ¿¹´Â ´ÙÀ½°ú °°´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ command1 | command2 | command3 ... ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÆÄÀÌÇÁ ¶óÀο¡¼­ °¢°¢ÀÇ ºÎ°¡ÀûÀÎ ¸í·É¾î´Â |(ÆÄÀÌÇÁ) ½Éº¼ÀÇ ¾Õ¿¡ À§Ä¡µÈ´Ù. ( ¿¹Á¦ ) ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢È­ÀÏ·ÎÀÇ ¸í·É¾î Ãâ·Â ¹æÇâÀüȯ ¹æ½Ä ¦¢ ÀÌ ¿¹¿¡¼­ÀÇ Ã¹¹ø° ¹æ½ÄÀº ¦¢ ¦¢ ½Ã½ºÅÛ»óÀÇ ÇöÀçÀÇ »ç¿ëÀÚ ¼ö¸¦ ¦¢ $who > users.tmp ¦¢ °è»êÇϱâ À§ÇÏ¿© È­ÀÏ·ÎÀÇ ¦¢ $wc -l < users.tmp ¦¢ ¸í·É¾î Ãâ·Â ¹æÇâÀüȯ ¹æ½ÄÀ» ¦¢ $rm users.tmp ¦¢ »ç¿ëÇÏ°í ÀÖ´Ù. who ¸í·É¾îÀÇ ¦¢ ¦¢ Ãâ·ÂÀº users.tmp È­ÀÏ¿¡ ¦¢ÆÄÀÌÇÁ ¶óÀÎÀ» ÀÌ¿ëÇÏ´Â ¹æ½Ä ¦¢ ÀúÀåµÇ°í, wc -l ¸í·É¾î¿¡ ÀÇÇØ ¦¢ ¦¢ È­Àϳ»¿¡ ÀúÀåµÈ ³»¿ëÀÇ ¶óÀμö¸¦ ¦¢ $who | wc -l ¦¢ °è»êÇÏ¿© È­¸é»ó¿¡ Ç¥½ÃÇÑ´Ù. ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÀÌÈÄ users.tmp È­ÀÏÀº »ç¿ëÀÚ ¼ö¸¦ °è»êÇϱâ À§ÇØ ÀϽÃÀûÀ¸·Î ÇÊ¿ä·ÎÇÏ´Â È­ÀÏ À̾ú±â ¶§¹®¿¡ rm ¸í·É¾î¸¦ »ç¿ëÇÏ¿© »èÁ¦ÇÏ°í ÀÖ´Ù. ÀÌ ¿¹¿¡¼­ ¾Ë¼ö ÀÖµíÀÌ, ÀÌ¿Í°°Àº ÀÛ¾÷ ¼öÇàÀº È­ÀÏÀ» »ý¼ºÇÏ°í, »èÁ¦ÇØ¾ß ÇÏ´Â ¹ø°Å·Î¿òÀÌ ÀÖ´Ù. ÀÌ·±°æ¿ì µÎ¹ø° ¿¹¿Í °°ÀÌ ÆÄÀÌÇÁ ¶óÀÎÀ» ÀÌ¿ëÇÏ¸é ¸Å¿ì È¿À²ÀûÀ¸·Î ÀÛ¾÷À» ÇÒ ¼ö ÀÖ´Ù. ( ÀÌÀ¯´Â È­ÀÏÀ» »ý¼º¹× »èÁ¦ÇÒ ÇÊ¿ä°¡ ¾ø±â ¶§¹®ÀÌ´Ù. ) ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢È­ÀÏ·ÎÀÇ ¸í·É¾î Ãâ·Â ¹æÇâÀüȯ ¹æ½Ä ¦¢ ¦¢ ¦¢ ¦¢ $cat names morenames > allnames ¦¢ ¦¢ $sort allnames > allnames.srt ¦¢ ¦¢ $lp allnames.srt ¦¢ ¦¢ ¦¢ ¦¢ÆÄÀÌÇÁ ¶óÀÎÀ» ÀÌ¿ëÇÏ´Â ¹æ½Ä ¦¢ ¦¢ ¦¢ ¦¢ $cat names morenames | sort | lp ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÀÌ ¿¹¿¡¼­´Â º¹¼ö°³ÀÇ ÆÄÀÌÇÁ ½Éº¼À» ÇϳªÀÇ ¸í·É¾î ¶óÀο¡¼­ ÁöÁ¤ÇÏ´Â ¹æ½ÄÀ» º¸¿©ÁØ´Ù. wc ¿Í sort °°Àº ¸î¸î ¸í·É¾îµéÀº ¸î°¡Áö ¹æ½ÄÀ¸·Î ÀÔ·ÂÀ» º¯ÇüÇϰųª º¯°æÇÏ°í, º¯°æµÈ µ¥ÀÌŸ¸¦ Ãâ·ÂÇÑ´Ù. ÀÌ·¯ÇÑ ¸í·É¾îµéÀ» ÇÊÅÍ(filter)¶ó ºÎ¸¥´Ù. ÀÌ·¯ÇÑ ¸í·É¾îµéÀº ÆÄÀÌÇÁ ¶óÀο¡¼­ ÀÚÁÖ »ç¿ëµÈ´Ù. 2. º¹¼ö°³ÀÇ ¸ñÀûÁö(Destination)·ÎÀÇ Ãâ·Â ¹æÇâÀüȯ tee ¸í·É¾î´Â ¸í·É¾îÀÇ Ç¥ÁØÃâ·ÂÀ» Çϳª ÀÌ»óÀÇ È­ÀÏ¿¡ ÀúÀåÇÔ°ú µ¿½Ã¿¡ ±× Ãâ·ÂÀ» Ç¥ÁØÃâ·Â ó¸®ÇÏ¿© È­¸é»ó¿¡ Ç¥½ÃÇÑ´Ù. tee ¸í·É¾îÀÇ Ã³¸®Çü½ÄÀº ´ÙÀ½°ú °°´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ command [-option] [arguments] | tee [-a] file(s) ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ tee ¸í·Á¾î»ó¿¡ ÁöÁ¤ÇÑ fileÀÌ ÀÌ¹Ì Á¸ÀçÇÏ´Â È­ÀÏÀÏ °æ¿ì¿¡´Â ÀÌ ¸í·ÉÀº º»·¡ÀÇ ³»¿ëÀ» µ¤¾î ¾²°ÔµÈ´Ù.(overwrite) ÀÌ·ÎÀÎÇÑ È­ÀÏ ³»¿ëÀǼսÇÀ» ÇÇÇÒ¼ö ÀÖµµ·Ï ÇϱâÀ§ÇØ -a ¿É¼ÇÀÌ Á¦°øµÈ´Ù. -a ¿É¼ÇÀÌ ÁöÁ¤µÇ¸é, ´ë»ó È­ÀÏ¿¡ »õ·Î¿î ³»¿ëÀ» Ãß°¡ÇÑ´Ù.(append) ( ¿¹Á¦ ) ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $pr report1 | tee report1.pr ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÀÌ ¿¹´Â report¶ó´Â È­ÀÏÀ» pr ¸í·É¾î¸¦ »ç¿ëÇÏ¿©, ÇÁ¸°Æ® Çü½ÄÀ¸·Î º¯È¯ÇÏ°í ÀÖ´Ù. pr ¸í·É¾î´Â ÇÁ¸°Æ® Çü½ÄÀ¸·Î º¯È¯ÇÑ ´ÙÀ½ ±×³»¿ëÀ» È­¸é»óÀ¸·Î Ãâ·ÂÇØ Áִµ¥, ÀÌ ¿¹¿¡¼­´Â ÆÄÀÌÇÁ¸¦ »ç¿ëÇÏ°í Àֱ⠶§¹®¿¡ È­¸é»ó¿¡ Ãâ·ÂµÉ Ç¥ÁØ Ãâ·ÂÀÌ tee ¸í·É¾î¿¡ Àü´ÞµÈ´Ù. ÀÌÈÄ tee ¸í·É¾î´Â ±× Ç¥ÁØÃâ·ÂÀ» report1.prÀ̶ó´Â È­ÀÏ¿¡ ÀúÀåÇÔ°ú µ¿½Ã¿¡ È­¸é»ó¿¡ Ç¥½ÃÇÑ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $pr report2 | tee -a report1.pr | lp ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÀÌ ¿¹¿¡¼­´Â -a ¿É¼ÇÀ» »ç¿ëÇÔÀ¸·Î½á, report2¶ó´Â È­ÀÏÀÌ ±âÁ¸¿¡ Á¸ÀçÇÒ °æ¿ì¿¡ ¹ß»ýÇÒ ¼ö ÀÖ´Â È­ÀÏÀÇ ¼Õ½ÇÀ» ¹æÁöÇÏ°í ÀÖ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $pr inventory | tee -a inventory.pr /dev/term/14 | lp ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÀÌ ¿¹¿¡¼­´Â inventory È­ÀÏÀ» ÇÁ¸°Æ® Çü½ÄÀ¸·Î º¯È¯ÇÏ°í, ±× ³»¿ëÀ» inventory.pr È­ÀÏ°ú /dev/term/14¶ó´Â È­ÀÏ¿¡ ÀúÀåÇÏ´Â ÀÛ¾÷À» ¼öÇàÇÑ´Ù. À̶§ /dev/term/14 È­ÀÏÀº ƯÁ¤ ´Ü¸»°ú µ¥ÀÌÅ͸¦ ÁÖ°í¹Þ±â À§ÇÑ Æ¯¼öÈ­ÀÏ·Î ±× È­ÀÏ¿¡ ÀúÀåµÇ´Â ³»¿ëÀº ´Ü¸»¿¡ Ç¥½ÃµÈ´Ù. ±×¸®°í tee ¸í·É¾î¿¡ ÀÇÇØ »ý¼ºµÈ Ç¥ÁØÃâ·ÂÀº ´ÙÀ½ÀÇ ÆÄÀÌÇÁ¿¡ ÀÇÇØ lp ¸í·É¾îÀÇ Ç¥ÁØÀÔ·ÂÀ¸·Î 󸮵ȴÙ. --------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­´Â Ç¥ÁØ¿¡·¯( Standard Error)ÀÇ ¹æÇâÀüȯ¿¡ ´ëÇØ °­ÀÇÇÕ´Ï´Ù. --------------------------------------------------------------------------- #57 À¯´Ï½Ã½º (adunis2 ) ¿¡·¯ ¸Þ¼¼ÁöÀÇ Ãâ·Â ¹æÇâÀüȯ(Redirection) 03/06 20:52 66 line ¿¡·¯ ¸Þ¼¼ÁöÀÇ Ãâ·Â ¹æÇâÀüȯ(Redirection) --------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. --------------------------------------------------------------------- ¸í·É¾î¿¡ ÀÇÇØ »ý¼ºµÈ ¿¡·¯ ¸Þ¼¼Áö´Â ½©¿¡ÀÇÇØ Ç¥ÁØ Ãâ·Â°ú µ¿ÀÏÇÑ Å͹̳ÎÀÇ ½ºÅ©¸°ÀΠǥÁØ¿¡·¯(Standard Error)·Î º¸³»Áø´Ù. ÀÌ·¯ÇÑ Ãâ·Â ¹æÇâµµ> ½Éº¼À» »ç¿ëÇÏ¿© ƯÁ¤ È­ÀÏ·Î º¯°æÇÒ ¼ö ÀÖ´Ù. ÀÌ ½Éº¼Àº Ç¥ÁØ Ãâ·ÂÀÇ ¹æÇâÀüȯ°ú µ¿ÀÏÇÑ °ÍÀÌ »ç¿ëµÇ±â ¶§¹®¿¡, È¥µ·À» ¸·±â À§ÇØ ºÎ°¡ÀûÀÎ ±¸º°ÀÌ ÇÊ¿äÇÏ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ command [-option] [arguments] 2> file ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¾Æ·¡¿¡ ³ª¿­µÇ¾î ÀÖ´Â È­ÀÏ µð½ºÅ©¸³ÅÍ(Descriptor)´Â °¢°¢ÀÇ È­Àϵé Áï, Ç¥ÁØ ÀÔ·Â, Ç¥ÁØ Ãâ·Â ±×¸®°í Ç¥ÁØ¿¡·¯¸¦ ¸íÈ®ÇÏ°Ô ÁöÁ¤Çϱâ À§ÇØ »ç¿ëµÈ´Ù. 0 Ç¥ÁØ ÀÔ·Â(Standard Input) 1 Ç¥ÁØ Ãâ·Â(Standard Output) 2 Ç¥ÁØ ¿¡·¯(Standard Error) È­ÀÏ µð½ºÅ©¸³ÅÍ´Â ¹æÇâÀüȯ ¹Ù·Î ¾Õ¿¡ ÁöÁ¤ÇÑ´Ù. ¿¹¸¦µé¸é 1> ´Â Ç¥ÁØ Ãâ·ÂÀ» ÂüÁ¶Çϸç, 2> ´Â Ç¥ÁØ ¿¡·¯¸¦ ÂüÁ¶ÇÑ´Ù. prgm 2>errfileÀ̶ó´Â ÁöÁ¤Àº ½©¿¡°Ô Ç¥ÁØ ¿¡·¯¸¦ errfile¿¡ º¸³¾ °ÍÀ» Áö½ÃÇÑ´Ù. Ç¥ÁØ ÀÔ·Â(0<)°ú Ç¥ÁØ Ãâ·Â(1>)ÀÇ ÁöÁ¤ Çü½ÄÀº È¥µ·À» ¸·±â À§Çؼ­¸¸ »ç¿ëÇÑ´Ù. ´ÙÀ½Àº Ç¥ÁØ ¿¡·¯¸¦ Á¦¾îÇÏ´Â ¿¹ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ÀÌ ¿¹¿¡¼­´Â 3°³ÀÇ È­ÀÏÀÇ ¦¢$cat file1 file2 nofile > combo ¦¢ Ç¥ÁØ Ãâ·ÂÀ» combo È­ÀÏ¿¡ ¦¢cat: cannot open file ¦¢ Ãâ·Â ¹æÇâÀüȯÀ» ½ÃµµÇÏ°í ¦¢$cat combo ¦¢ ÀÖ´Ù. ±×·¯³ª ÀÌ È­ÀϵéÁß ¦¢This is file 1. ¦¢ nofileÀº ±âÁ¸¿¡ Á¸ÀçÇÏÁö ¦¢This is file 2. ¦¢ ¾Ê´Â È­ÀÏÀ» ÁöÁ¤ÇÔÀ¸·Î½á ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¿¡·¯¸¦ ¹ß»ý½ÃÅ°°í ÀÖ´Ù. ±×·±µ¥ Á¤»óÀûÀ¸·Î ÁöÁ¤ÇÑ file1°ú file2 È­ÀÏÀÇ ³»¿ëÀº combo È­ÀÏ¿¡ ÀúÀåµÇ´Âµ¥ nofile ÁöÁ¤À¸·Î ÀÎÇØ »ý¼ºµÈ ¸Þ¼¼Áö´Â ÀúÀåµÇÁö ¾Ê°í È­¸é»ó¿¡ °ðÀå Ç¥½ÃµÇ´Â °ÍÀ» º¼¼ö ÀÖ´Ù. À̴ ǥÁØ Ãâ·Â°ú Ç¥ÁØ ¿¡·¯°¡ ¸í¹éÈ÷ ´Ù¸£°Ô 󸮵ȴٴ °ÍÀ» ¾Ë¼öÀÖ°Ô ÇØÁØ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ À̹ø¿¡´Â Ç¥ÁØ Ãâ·Â°ú ¦¢$cat file1 file2 nofile 1>combo 2>oops ¦¢ Ç¥ÁØ ¿¡·¯¸¦ º°µµÀÇ ¦¢$cat combo ¦¢ È­ÀÏ¿¡ ÀúÀåÇϵµ·Ï ¦¢This is file 1. ¦¢ ÁöÁ¤ÇÑ ¿¹ÀÌ´Ù. ¦¢This is file 2. ¦¢ ¸í·É ½ÇÇàÈÄ µÎ È­ÀÏÀÇ ¦¢$cat oops ¦¢ ³»¿ëÀ» È®ÀÎÇÔÀ¸·Î½á ¦¢cat: cannot open nofile ¦¢ º°µµ·Î 󸮵ǾúÀ½À» ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ È®ÀÎÇÒ ¼ö ÀÖ´Ù. ¿©±â¿¡¼­ cat oops ¸í·É ½ÇÇàÈÄ Ç¥½ÃµÇ´Â ¸Þ¼¼Áö¸¦ È¥µ·ÇÏÁö ¾Ê±â ¹Ù¶õ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ÀÌ ¿¹Á¦´Â Ç¥ÁØ Ãâ·Â°ú ¦¢$cat file1 file2 nofile 1>combo 2>&1 ¦¢ Ç¥ÁØ ¿¡·¯¸¦ µ¿ÀÏ È­ÀÏ¿¡ ¦¢$cat combo ¦¢ ÀúÀåÇÏ´Â ¹æ½ÄÀ» º¸¿©ÁÖ°í ¦¢This is file 1. ¦¢ ÀÖ´Ù. Ç¥ÁØ ¿¡·¯ ¹æÇâÀüȯÀ» ¦¢This is file 2. ¦¢ À§ÇØ ÁöÁ¤ÇÑ ½Éº¼ÀÇ µÚ¿¡ ¦¢cat: cannot open nofile ¦¢ &1ÀÌ ÁöÁ¤µÈ °ÍÀ» À¯ÀÇÇØ¾ß ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÇÑ´Ù. & ½Éº¼Àº ƯÁ¤ÀÇ È­ÀÏ µð½ºÅ©¸³ÅÍ¿¡ ¸Þ¼¼Áö¸¦ Ãß°¡ÇÒ °ÍÀ» Áö½ÃÇϸç, À̶§ÀÇ Æ¯Á¤ÀÇ È­ÀÏÀº & ½Éº¼ µÚ¿¡ ±â¼úµÇ´Â È­ÀÏ µð½ºÅ©¸³ÅÍÀÇ ¹øÈ£ÀÌ´Ù. --------------------------------------------------------------------------- ´ÙÀ½¿¡´Â ¸í·É¾î ½ÇÇà °ü¸® ¹Ù½Äµé¿¡ ´ëÇØ °­ÀÇÇÕ´Ï´Ù. --------------------------------------------------------------------------- #58 À¯´Ï½Ã½º (adunis2 ) ÇÁ·Î¼¼½º(Process)¿Í Á¦¾î ¸í·É: ps 03/07 07:25 167 line ÇÁ·Î¼¼½º¿Í ps ¸í·É¾î --------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. --------------------------------------------------------------------- 1. ÇÁ·Î¼¼½º(Process) ÇÁ·Î¼¼½º´Â ÇÁ·Î±×·¥ÀÇ ½ÇÇàÀÌ´Ù. ¸í·É¾î ¶óÀÎÀÌ ½ÇÇàµÉ¶§ ÇÁ·Î¼¼½º°¡ ½ÃÀ۵ȴÙ. 1) ÇÁ·Î¼¼½º ±¸Á¶ À¯´Ð½º È­ÀÏ Ã¼Á¦¿Í ¸¶Âù°¡Áö·Î, ÇÁ·Î¼¼½ºÀÇ ±¸¼ºÀº °èÃþÀû ±¸Á¶ÀÌ´Ù. À¯´Ð½º È­ÀÏ°ú °°ÀÌ ÇÁ·Î¼¼½ºµéµµ ºÎ¸ð ÇÁ·Î¼¼½º(Parent Process)¿Í ÀÚ½Ä ÇÁ·Î¼¼½º(Child Process)·Î ±¸¼ºµÈ´Ù. ºÎ¸ð ÇÁ·Î¼¼½º´Â ¶Ç´Ù¸¥ ÇÁ·Î¼¼½º¸¦ ºÐ±âÇÒ ¼ö ÀÖ´Â ÀÚ½Ä ÇÁ·Î¼¼½º¸¦ »ý¼ºÇÑ´Ù. Fork¿Í SpawnÀº ÇÁ·Î¼¼½ºÀÇ »ý¼º¿¡ °ü·ÃµÈ ¿ë¾îµéÀÌ´Ù. ½Ã½ºÅÛÀÌ ½Ãµ¿µÉ¶§ ½ÃÀ۵Ǵ ù¹ø° ÇÁ·Î¼¼½º´Â init ÇÁ·Î¼¼½ºÀÌ´Ù. ½Ã½ºÅÛ ÃÖ»óÀ§ °ü¸®ÀÚ(À̸¦ Superuser¶ó ÇÑ´Ù.)ÀÎ root¿Í °°ÀÌ, ¸ðµç ÇÁ·Î¼¼½ºÀÇ ÃÖ»óÀ§ ÇÁ·Î¼¼½º´Â initÀÌ´Ù. 2) ¸í·É¾î ½ÇÇà ¸í·É¾î ¶óÀÎÀÌ ½ÇÇàµÉ¶§, ½©Àº ´ëºÎºÐ ¸í·É¾î¸¦ ½ÇÇàÇϱâ À§ÇØ ÀÚ½Ä ÇÁ·Î¼¼½º¸¦ ºÐ±âÇÑ´Ù. ÀÚ½Ä ÇÁ·Î¼¼½º°¡ ½ÇÇàÁßÀÎ µ¿¾È¿¡, ºÎ¸ð ÇÁ·Î¼¼½º´Â ÈÞ¸é»óÅÂ(sleep)¶ó ºÒ¸®¿ì´Â È°µ¿ÇÏÁö ¾Ê´Â »óÅ°¡ µÈ´Ù. ÈÞ¸é»óÅ¿¡ ÀÖ´Â ÇÁ·Î¼¼½º´Â ½Ã½ºÅÛÀ¸·Î ºÎÅÍ ½ÇÇàÀ» À§ÇÑ ¼­ºñ½º¸¦ ¹ÞÁö ¾Ê°í ´ë±â»óÅ¿¡ ÀÖ°Ô µÈ´Ù. ÀÚ½Ä ÇÁ·Î¼¼½º´Â ½ÇÇàÀ» ¿Ï·áµÈ¶§, Á¾·áÇÏ°Ô µÈ´Ù. À̶§ ºÎ¸ð ÇÁ·Î¼¼½º´Â ÈÞ¸é»óŸ¦ ¹þ¾î³ª ½ÇÇàÀ» °è¼ÓÇÏ°Ô µÈ´Ù. 3) ÇÁ·Î¼¼½º ½Äº°ÀÚ ÇÁ·Î¼¼½º°¡ ºÐ±âµÉ¶§, À¯´Ð½º´Â ÇÁ·Î¼¼½º¿¡ ´ëÇØ À¯ÀÏÇÑ ¹øÈ£¸¦ ºÎ¿©ÇÑ´Ù. À̶§ ÇÁ·Î¼¼½º¿¡ ºÎ¿©µÇ´Â ¹øÈ£°¡ PID¶ó ºÒ¸®¿ì´Â ÇÁ·Î¼¼½º ½Äº°ÀÚÀÌ´Ù. ( ÇÁ·Î¼¼½º ½Äº°ÀÚ·Î »ç¿ëµÇ´Â ¹øÈ£ÀÇ ¹üÀ§´Â 1ºÎÅÍ 32767±îÁöÀÌ´Ù. ) ÇÁ·Î¼¼½º´Â Á¸ÀçÇÏ´Â µ¿¾È¿¡´Â µ¿ÀÏÇÑ PID ¹øÈ£¸¦ À¯ÁöÇÑ´Ù. init ÇÁ·Î¼¼½ºÀÇ ÇÁ·Î¼¼½º ½Äº°ÀÚ´Â Ç×»ó PID 1 ÀÌ´Ù. ¸î¸î ¸í·É¾î´Â ¸í·É ½ÇÇà °á°úÀÇ Ãâ·ÂÀ¸·Î½á PID¸¦ Ç¥½ÃÇÑ´Ù. ps ¸í·É¾î´Â ÇÁ·Î¼¼½º¿¡ °ü·ÃµÈ »óÅ Á¤º¸¸¦ Á¦°øÇÑ´Ù. kill ¸í·É¾î´Â ÇÁ·Î¼¼½º¸¦ Á¾·áÇÑ´Ù. 2. ÇÁ·Î¼¼½º »óÅÂÀÇ Ç¥½Ã ps ±âµ¿ÁßÀÎ ÇÁ·Î¼¼½º¿¡ ´ëÇÑ Á¤º¸¸¦ Ç¥½ÃÇÑ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ ps [-option] [arguments] ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ps ¸í·É¾î´Â ¸í·É¾î»ó¿¡ ÁöÁ¤ÇÑ ¿É¼Ç¿¡ µû¶ó¼­ ±âµ¿ÁßÀÎ ÇÁ·Î¼¼½ºµé¿¡ ´ëÇÑ Á¤º¸¸¦ Ç¥½ÃÇÑ´Ù. ¸í·É¾î Ãâ·ÂÀº ¿©·¯°³ÀÇ Çʵå·Î ±¸¼ºµÇ¾î Àִµ¥, °¢°¢ÀÇ Çʵ忡 ´ëÇÑ Á¦¸ñÀº ¿É¼Ç ÁöÁ¤¿¡ µû¶ó Ç¥½Ã ¶Ç´Â »ý·«µÈ´Ù. ¿¹¸¦µé¸é, -f ¿É¼ÇÀº 8°³ÀÇ Çʵå·Î ±¸¼ºµÈ Ãâ·ÂÀ» Ç¥½ÃÇϳª, -l ¿É¼ÇÀº 15°³ÀÇ Çʵ带 Ç¥½ÃÇÑ´Ù. Ãâ·ÂµÇ´Â ÇʵåÀÇ ¼³¸íÀº ÀÌÈÄ¿¡ ¼³¸íÇÑ´Ù. ¶ÇÇÑ ¸í·É¾î»ó¿¡ ¿©·¯°³ÀÇ ¿É¼ÇÀ» °°ÀÌ »ç¿ëÇÒ ¼ö ÀÖ´Ù. ¸î¸î ¿É¼ÇÀº ÀÎÀÚ(Arguments)µéÀÇ ¸ñ·ÏÀ» ¹Þ¾ÆµéÀδÙ. ¸¸ÀÏ ¿É¼ÇÀÌ ÁöÁ¤µÇÁö ¾Ê¾ÒÀ» °æ¿ì¿¡´Â ÇöÀç Å͹̳ο¡¼­ ÀÛ¾÷ÁßÀÎ »ç¿ëÀÚ°¡ ±âµ¿ÁßÀÎ ÇÁ·Î¼¼½ºµé¿¡ ´ëÇÑ Á¤º¸°¡ Ç¥½ÃµÈ´Ù. ÀÌ °æ¿ì Ãâ·ÂÀº ÇÁ·Î¼¼½º ½Äº°¸í, Å͹̳Π½Äº°¸í, ´©ÀûÀûÀÎ ½ÇÇà½Ã°£ ±×¸®°í ¸í·É¾î À̸§À» Æ÷ÇÔÇÑ´Ù. ( ¿É¼Ç ) -a ´Ù¸¥ »ç¿ëÀÚ°¡ ±âµ¿ÇÑ ÇÁ·Î¼¼½º°¡ ±âµ¿ÇÑ ÇÁ·Î¼¼½ºµé¿¡ ´ëÇÑ Á¤º¸¸¦ ÇÁ¸°Æ®ÇÑ´Ù. -f 8°³ Çʵå·Î ±¸¼ºµÈ Ãâ·ÂÀ» Ç¥½ÃÇÑ´Ù. -l 15°³ Çʵå·Î ±¸¼ºµÈ Ãâ·ÂÀ» Ç¥½ÃÇÑ´Ù. -e ÇöÀç ½ÇÇàÁßÀÎ ¸ðµç ÇÁ·Î¼¼½º¿¡ °ü·ÃµÈ Á¤º¸¸¦ Ç¥½ÃÇÑ´Ù. ( Running »óÅÂÀÎ ÇÁ·Î¼¼½ºµé¿¡ ´ëÇÑ Á¤º¸ ) -u (user) ÁöÁ¤ÇÑ user°¡ ±âµ¿ÇÑ ÇÁ·Î¼¼½º¿¡ ´ëÇÑ Á¤º¸¸¦ Ç¥½ÃÇÑ´Ù. -t (terminal) ÁöÁ¤ÇÑ Å͹̳ο¡¼­ ¼öÇàÁßÀÎ Å͹̳ο¡¼­ ¼öÇàÁßÀÎ ÇÁ·Î¼¼½º Á¤º¸¸¦ Ç¥½ÃÇÑ´Ù. ( Ãâ·Â ÇÊµå ¼³¸í ) F ÇÁ·Î¼¼½º¿¡ ºÎ¿©µÈ Ç÷¯±×(flag) S ÇÁ·Î¼¼½º »óÅ UID ÇÁ·Î¼¼½º¸¦ ±âµ¿ÇÑ »ç¿ëÀÚ ½Äº°¸í PID ÇÁ·Î¼¼½º ½Äº°¸í PPID ºÎ¸ð ÇÁ·Î¼¼½º ½Äº°¸í C ÃÖ±Ù¿¡ ÇÁ·Î¼¼½º°¡ »ç¿ëÇÑ CPU ½Ã°£ PRI ÇÁ·Î¼¼½º ¿ì¼± 󸮼øÀ§(³ôÀº ¼ýÀÚ°¡ ³·Àº ¿ì¼±¼øÀ§¸¦ ÀǹÌÇÑ´Ù.) NI ¿ì¼±¼øÀ§ °è»ê¿¡ »ç¿ëµÇ´Â °ª ADDR ÇÁ·Î¼¼½ºÀÇ ¸Þ¸ð¸® ÁÖ¼Ò(Address) SZ ¸Þ¸ð¸®³»ÀÇ ÇÁ·Î¼¼½º Å©±â WCHAN ÇÁ·Î¼¼½º°¡ ÈÞ¸é»óÅÂÀ̰ųª ´ë±â»óÅÂÀÏ °æ¿ìÀÇ ÁÖ¼Ò ( ÀÌ Çʵ尡 °ø¹éÀÏ °æ¿ì´Â ÇÁ·Î¼¼½º°¡ ½ÇÇàÁßÀ̶ó´Â °ÍÀ» ÀÇ¹Ì ) STIME ÇÁ·Î¼¼½ºÀÇ ½ÃÀÛ ½Ã°£ TTY ÇÁ·Î¼¼½º°¡ ±âµ¿ÇÑ Å͹̳ΠTIME ÇÁ·Î¼¼½º°¡ ±âµ¿µÈ ´©Àû ½Ã°£ COMD ÇÁ·Î¼¼½º¸¦ ±âµ¿µÇ°Ô ÇÑ ¸í·É¾î À̸§ -f ¿É¼ÇÀ» ÁöÁ¤Çϸé Àüü ¸í·É¾î ¶óÀÎÀÌ Ç¥½ÃµÈ´Ù. ´ÙÀ½Àº ps ¸í·É¾î¸¦ ½ÇÇàÇÑ ¿¹ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¿É¼Ç¾øÀÌ ps ¸í·ÉÀ» ½ÇÇàÇÑ ¿¹ ¦¢$ps ¦¢ ¦¢ PID TTY TIME COMD ¦¢ ¦¢11558 term/12 0:01 login ¦¢ ¦¢11566 term/12 0:02 sh ¦¢ ¦¢11680 term/12 0:00 ps ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$ps -f ¦¢ ¦¢ UID PID PPID C STIME TTY TIME COMD ¦¢ ¦¢user2 1067 1066 3 05:58:47 term/12 0:01 -sh ¦¢ ¦¢user2 1085 1067 23 05:59:52 term/12 0:00 ps -f ¦¢ ¦¢ root 1066 684 0 05:58:39 term/12 0:01 /usr/bin/login ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ -f ¿É¼ÇÀ» ½ÇÇàÇÑ ¿¹·Î 8°³ÀÇ Çʵ尡 Ç¥½ÃµÇ¾ú´Ù. ÁÖ¸ñÇÒ °ÍÀº COMD Çʵ忡 Ç¥½ÃµÈ ¸í·É¾î ºÎºÐÀÌ´Ù. Áï; ¸í·É¾î ¶óÀÎ Àüü°¡ Ç¥½ÃµÇ´Â Ư¡ÀÌ ÀÖ´Ù. °£È¤ TTY Çʵ忡´Â ?°¡ Ç¥½ÃµÇ´Â °æ¿ì°¡ Àִµ¥, ÀÌ´Â Background Daemon ÀÓÀ» ÀǹÌÇÑ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$ps -l ¦¢ ¦¢ F S UID PID PPID C PRI NI ADDR SZ WCHAN TTY TIME COMD ¦¢ ¦¢10 S 105 1067 1066 1 30 20 c06d05f8 28 d11ce000 term/12 0:01 sh ¦¢ ¦¢10 O 105 1084 1067 16 50 20 c06d0b98 22 term/12 0:00 ps ¦¢ ¦¢10 S 0 1066 684 0 30 20 c06d0520 67 d1174600 term/12 0:01 login¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ °¡Àå ÀÚ¼¼ÇÑ Á¤º¸°¡ Ç¥½ÃµÇ°í ÀÖ´Ù. ¿©±â¿¡¼­ Ç÷¯±× Çʵå(F)¿¡ Ç¥½ÃµÈ 10À̶ó´Â ¼ýÀÚ´Â ÇöÀç ±âº» ¸Þ¸ð¸®»ó¿¡¼­ ¼öÇàÁßÀÎ ÇÁ·Î¼¼½ºÀÓÀ» ³ªÅ¸³½´Ù. ¶ÇÇÑ »óÅ Çʵå(S)¿¡ ³ªÅ¸³­ S´Â ÈÞ¸é»óÅ ¸¦ ÀǹÌÇϸç, O´Â ÇÁ·Î¼¼¼­¿¡ ÀÇÇØ ½ÇÇàÁßÀÓÀ» ÀǹÌÇÑ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ -a ¿É¼ÇÀ» »ç¿ëÇÏ¿© ´Ù¸¥ »ç¿ëÀÚ°¡ ½ÇÇàÇÑ ¦¢$ps -a ¦¢ ÇÁ·Î¼¼½ºÀÇ Á¤º¸µéÀ» Ç¥½ÃÇØ ÁÖ°í ÀÖ´Ù. ¦¢ PID TTY TIME COMD ¦¢ ¦¢19694 term/16 0:01 ksh ¦¢ ¦¢21917 term/00 0:02 ksh ¦¢ ¦¢23058 term/10 0:00 sh ¦¢ ¦¢23101 term/10 0:00 ps ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$ps -u newuser -u user5 ¦¢ ƯÁ¤ »ç¿ëÀÚ°¡ °³½ÃÇÑ ÇÁ·Î¼¼½ºµéÀÇ ¦¢ PID TTY TIME COMD ¦¢ Á¤º¸µé¸¸À» Ç¥½ÃÇÏ°í ÀÖ´Ù. ¦¢ 1090 term/13 0:01 sh ¦¢ ¦¢ 1113 term/13 0:00 ps ¦¢ ¦¢23058 term/10 0:00 sh ¦¢ ¦¢23101 term/10 0:00 ps ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ƯÁ¤ ´Ü¸»¿¡¼­ °³½ÃÇÑ ÇÁ·Î¼¼½º Á¤º¸µéÀ» ¦¢$ps -t term/10 ¦¢ Ç¥½ÃÇÏ°í ÀÖ´Ù. ¦¢ PID TTY TIME COMD ¦¢ ¦¢19694 term/10 0:01 sh ¦¢ ¦¢21917 term/10 0:02 date ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ --------------------------------------------------------------------------- ´ÙÀ½¿¡´Â ¸í·É¾î ½ÇÇà ¹æ½Ä¿¡ ´ëÇØ °­ÀÇÇÕ´Ï´Ù. --------------------------------------------------------------------------- #59 À¯´Ï½Ã½º (adunis2 ) ´Ù¾çÇÑ ÇüÅÂÀÇ ¸í·É¾î ½ÇÇà ¹æ½Ä 03/09 21:05 108 line ¸í·É¾î ½ÇÇà --------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. --------------------------------------------------------------------- 1. ¸í·É¾î ½ÇÇàÀÇ ÀÀ¿ë Áö±Ý±îÁöÀÇ °­ÀÇ¿¡¼­ ¼³¸íµÇ¾ú´ø ¸í·É¾îµéÀº Çѹø¿¡ ÇϳªÀÇ ¸í·É¾î¾¿ ½ÇÇàÇÏ´Â ¹æ½ÄÀ¸·Î ½ÇÇàÇÏ´Â ¿¹Á¦µéÀ» Áß½ÉÀ¸·Î ¼Ò°³µÇ¾ú´Ù. Ưº°ÇÑ È¯°æÀ̳ª ÇÊ¿ä¿¡ µû¶ó¼­´Â ¸í·É¾îµéÀ» ´ÙÀ½°ú °°Àº ¿©·¯°¡Áö Çü½ÄÀ¸·Î ÀÀ¿ëÇÏ¿© ½ÇÇàÇÒ ¼ö ÀÖ´Ù. . ¸í·É¾îµéÀº ;(¼¼¹ÌÄÝ·Ð)À» ÀÌ¿ëÇÏ¿© µ¿ÀÏ ¸í·É¾î ¶óÀÎ»ó¿¡ ¿©·¯°³¸¦ µ¿½Ã¿¡ ÁöÁ¤ÇÏ¿© ½ÇÇàÇÒ ¼ö ÀÖ´Ù. . ¿©·¯°³ÀÇ ¸í·É¾îµéÀÇ Á¶ÇÕµÈ Ãâ·ÂÀ» ¾ò±âÀ§ÇØ µÕ±Ù°ýÈ£¸¦ »ç¿ëÇÏ¿© ÇÔ²² ¹­À»¼ö ÀÖ´Ù. . ¸í·É¾îµéÀ» &(Ampersand)¸¦ ÀÌ¿ëÇÏ¿© ¹é±×¶ó¿îµå¿¡¼­ ½ÇÇàÇÒ ¼ö ÀÖ´Ù. À§¿Í°°Àº ¹æ½ÄµéÀº ÀÌÈÄ Çϳª¾¿ ÀÚ¼¼È÷ ¼³¸íµÈ´Ù. 2. º¹¼ö°³ÀÇ ¸í·É¾î ½ÇÇà ¸í·É¾î ¶óÀÎÀÌ ½ÇÇàµÉ¶§, ½©Àº ¸í·É¾î ÇÁ·Î±×·¥À» ½ÇÇàÇϱâ À§ÇØ ÇϳªÀÇ ÇÁ·Î¼¼½º¸¦ »ý¼ºÇÏ°í(ºÐ±âÇÏ°í), ±× ÇÁ·Î¼¼½º°¡ Á¾·áµÉ¶§±îÁö ÀÚ½ÅÀº ÈÞ¸é»óÅ°¡(sleep) µÈ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ºÐ±â¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ ÇöÀçÀÇ ÇÁ·Î¼¼½º ¦§¦¡> ¦¢ ÀÚ½Ä ÇÁ·Î¼¼½º ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ À̶§ »ç¿ëÀÚ´Â ±× ÇÁ·Î¼¼½º°¡ ½ÇÇàµÇ´Â µ¿¾È¿¡´Â ´Ù¸¥ ¸í·É¾îµéÀ» ½ÇÇàÇÒ ¼ö ¾ø´Ù. º¹¼ö°³ÀÇ ¸í·É¾îµéÀ» ½ÇÇàÇϱâ À§ÇØ °¢ ¸í·ÉµéÀÌ Á¾·áµÉ¶§±îÁö ±â´Ù·Á¼­ ´ÙÀ½ ¸í·ÉÀ» ½ÇÇàÇÏ´Â ¹æ½Ä´ë½Å¿¡, ÇϳªÀÇ ¸í·É¾î ¶óÀο¡ º¹¼ö°³ÀÇ ¸í·É¾î¸¦ ÁöÁ¤ÇÔÀ¸·Î½á ÇѹøÀÇ ½ÇÇà ¿ä±¸¸¦ ÅëÇØ ¿©·¯°³ÀÇ ¸í·ÉÀ» ½ÇÇàÇÒ ¼ö ÀÖ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ command1 ; command2 ; command3 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¼¼¹ÌÄÝ·Ð(;)Àº ÇϳªÀÇ ¸í·É¾î ¶óÀο¡¼­ ¿©·¯°³ÀÇ ¸í·É¾î¸¦ ÁöÁ¤ÇÒ ¼ö ÀÖ°Ô ÇØÁØ´Ù. °¢°¢ÀÇ ¸í·É¾î´Â ¼¼¹ÌÄݷп¡ ÀÇÇØ ±¸ºÐµÈ´Ù. Å°´Â ¸í·É¾î ¶óÀÎÀÇ ³¡ÀÓÀ» ½©¿¡°Ô ¾Ë·ÁÁÜÀ¸·Î½á ¸í·É¾î ¶óÀÎÀ» ½ÇÇàÇϵµ·Ï ÇÑ´Ù. ¼¼¹ÌÄÝ·Ð ÀüÈÄÀÇ °ø¹é ÁöÁ¤»ó¿¡ ´ëÇÑ ±ÔÄ¢Àº ¾øÀ¸³ª, °ü½À»ó ÀüÈÄ¿¡ °ø¹éÀ» ÁöÁ¤ÇÑ´Ù. ¸í·É¾î ¶óÀÎ»ó¿¡ ÁöÁ¤µÈ ¸í·É¾îµéÀº ÁöÁ¤ ¼ø¼­¿¡ µû¶ó ¼øÂ÷ÀûÀ¸·Î ½ÇÇàµÈ´Ù. ´ÙÀ½Àº ¼¼¹ÌÄÝ·ÐÀ» ÀÌ¿ëÇÏ¿© º¹¼ö°³ÀÇ ¸í·É¾î¸¦ µ¿ÀÏ ¸í·É¾î ¶óÀÎ»ó¿¡ ÁöÁ¤ÇÏ´Â ¹æ½ÄÀ» º¸¿©ÁÖ´Â ¿¹ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$date ; pwd ; who ¦¢ ¦¢Mon Aug 12 09:28:50 EDT 1991 ¦¢ ¦¢/home/user2 ¦¢ ¦¢user2 term/12 Aug 12 09:30 ¦¢ ¦¢newuser term/10 Aug 12 10:47 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ 3. ¸í·É¾îÀÇ ±×·ìÈ­ ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ (command1 : command2) ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ º¹¼ö°³ÀÇ ¸í·É¾îµéÀ» ¼¼¹ÌÄÝ·ÐÀ¸·Î ±¸ºÐÇÏ¿©, µÕ±Ù°ýÈ£·Î µÑ·¯ ½×À½À¸·Î½á º¹¼ö°³ÀÇ ¸í·É¾î°¡ ±×·ìÈ­µÉ ¼ö ÀÖ´Ù. ½©Àº ÇϳªÀÇ ÀÛ¾÷À¸·Î½á µÕ±Ù°ýÈ£³»ÀÇ ¸í·É¾îµéÀ» ½ÇÇàÇÏ°í, ÇÊ¿ä½Ã¿¡ ÀÚ½Ä ÇÁ·Î¼¼½º¸¦ ºÐ±âÇÑ´Ù. À̶§¿¡µµ ±×·ì¼ÓÀÇ ¸í·É¾î ½ÇÇà ¼ø¼­´Â º¯ÇÔ¾ø´Ù. ¸í·É¾îÀÇ ±×·ìÈ­ ¹æ½ÄÀº ÀϹÝÀûÀ¸·Î º¹¼ö°³ ¸í·É¾îÀÇ Á¶ÇÕµÈ Ãâ·ÂÀ» ¾ò±âÀ§ÇØ »ç¿ëÇÑ´Ù. ´ÙÀ½Àº ±×·ìÈ­ÀÇ ¿¹Á¦ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$(pwd ; ls -al) > file.1st ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÀÌ ¿¹¿¡¼­ pwd ¿Í ls ¸í·É¾î°¡ ¼øÂ÷ÀûÀ¸·Î ½ÇÇàµÈ´Ù. µÎ ¸í·É¾îÀÇ Ãâ·ÂÀº file.1st È­ÀÏ¿¡ ÀúÀåµÈ´Ù. ¿©±â¼­ ¸¸¾à µÕ±Ù°ýÈ£¸¦ ÁöÁ¤ÇÏÁö ¾Ê¾Ò´Ù¸é ¾î¶»°Ô µÉ±î?. pwd È­ÀÏÀÇ Ãâ·ÂÀº È­¸é»óÀ¸·Î Ç¥½ÃµÇ°í, ls ¸í·É¾îÀÇ Ãâ·Â¸¸ÀÌ file.1st È­ÀÏ¿¡ ÀúÀåµÉ °ÍÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$pwd ¦¢ ¦¢/home/user5 ¦¢ ¦¢$(cd /etc ; ls -al) ¦¢ ¦¢(ls -al /etcÀÇ ¸í·É¾î Ãâ·ÂÀÌ Ç¥½ÃµÈ´Ù.) ¦¢ ¦¢. ¦¢ ¦¢. ¦¢ ¦¢$pwd ¦¢ ¦¢/home/user5 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ µÕ±Ù°ýÈ£·Î µÑ·¯ ½×¿©ÀÖ´Â ¸í·É¾îµéÀº ¼­ºê½©¿¡ ÀÇÇØ ¼öÇàµÈ´Ù. ¿¹¸¦µé¸é, cd ¸í·É¾î´Â ¼­ºê ½©¿¡¼­ ½ÇÇàµÇ´Â µ¿¾È¿¡¸¸ Àû¿ëµÈ´Ù. ±×·ìÈ­ ¸í·É³»¿¡¼­ cd ¸í·É¾î°¡ ½ÇÇàµÇ¾úÀ½¿¡µµ ºÒ±¸ÇÏ°í, ±×·ìÈ­ ¸í·É ½ÇÇà ÀüÈÄ¿¡ ÇöÀçÀÇ ÀÛ¾÷ µð·ºÅ丮°¡ º¯°æµÇÁö ¾Ê´Â ÀÌÀ¯°¡ ¿©±â¿¡ ÀÖ´Ù. ½© ÇÁ·Î±×·¥¿¡¼­ »ç¿ëÇÏ´Â ¶Ç´Ù¸¥ ±×·ìÈ­ ¸í·ÉÀÎ ºê·¹À̽º({}) ½Éº¼À» »ç¿ëÇϸé, ±×·ìÈ­ ¸í·ÉµéÀÌ ÇöÀçÀÇ ½©¿¡¼­ ¼öÇàµÇ±â ¶§¹®¿¡ À§¿Í °°Àº °æ¿ì ½ÇÁ¦·Î µð·ºÅ丮 À̵¿ÀÌ ÇàÇØÁö°Ô µÈ´Ù. --------------------------------------------------------------------------- ´ÙÀ½¿¡´Â ¹é±×¶ó¿îµå¿¡¼­ÀÇ ¸í·É¾î ½ÇÇà¿¡ ´ëÇØ ¼³¸íÇÕ´Ï´Ù. --------------------------------------------------------------------------- #60 À¯´Ï½Ã½º (adunis2 ) Background¿¡¼­ÀÇ ¸í·É¾î ½ÇÇà 03/09 21:06 79 line ¹é±×¶ó¿îµå¿¡¼­ÀÇ ¸í·É¾î ½ÇÇà --------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. --------------------------------------------------------------------- 1. ¹é±×¶ó¿îµå¿¡¼­ÀÇ ¸í·É¾î ½ÇÇà º¸Åë ½© ÇÁ·Î¼¼½º´Â »ç¿ëÀÚ°¡ ¿ä±¸ÇÑ ¸í·É¾î¸¦ ½ÇÇàÇÏ´Â µ¿¾È¿¡ ºñÈ°¼º(Inactive) »óŸ¦ À¯ÁöÇÑ´Ù. ±×·¸±â ¶§¹®¿¡ ´Ù¸¥ ¸í·É¾î´Â Á÷ÀüÀÇ ¸í·É¾î°¡ Á¾·áµÇ°í, ½© ÇÁ·Î¼¼½º°¡ ÀÔ·ÂÀ» ¹Þ¾ÆµéÀ̱â À§ÇØ ÇÁ·ÒÇÁÆ®¸¦ Ç¥½ÃÇÒ ¶§±îÁö ½ÇÇàÇÒ ¼ö ¾ø´Â °ÍÀÌ´Ù. ÀÌ·¯ÇÑ ÇüÅÂÀÇ ÀÛ¾÷ó¸® ÀÛ¾÷µéÀ» Foreground JobÀ̶ó ÇÑ´Ù. µû¶ó¼­ »ç¿ëÀÚ´Â ¿©·¯°³ÀÇ ¸í·É¾î¸¦ ½ÇÇàÇÏ´Â °æ¿ì¿¡´Â °¢°¢ÀÇ ¸í·É¾î°¡ Á¾·áµÉ¶§±îÁö ±â´Ù·Á¾ß ÇÏ´Â ½Ã°£»óÀÇ ³¶ºñ¸¦ ÃÊ·¡ÇÏ°Ô µÈ´Ù. ÀÌ·±°æ¿ì ¸í·É¾îµéÀ» Background JobÀ¸·Î ½ÇÇàÇÒ ¼ö ÀÖ´Ù. ¸í·É¾î°¡ Background Job Çü½ÄÀ¸·Î ½ÇÇà ¿ä±¸µÈ °æ¿ì¿¡´Â, ½© ÇÁ·Î¼¼½º´Â »ç¿ëÀÚ°¡ Foreground¿¡¼­ ¶Ç´Ù¸¥ ¸í·É¾î¸¦ ½ÇÇàÇÒ ¼ö ÀÖ°Ô ÇØÁØ´Ù. Åë»ó Background JobÀº ±ä½Ã°£ÀÌ ¿ä±¸µÇ´Â ÇÁ·Î±×·¥¿¡¼­ »ç¿ëÇÑ´Ù. ƯÁ¤ ÀÛ¾÷À» Background¿¡¼­ ½ÇÇàÇϱâ À§Çؼ­´Â ÇØ´ç ÀÛ¾÷À» ±â¼úÇÑ ¸í·É¾î ¶óÀλóÀÇ ³¡ ºÎºÐ¿¡ & ½Éº¼À» ÁöÁ¤ÇÑ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ command& ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÀÌ¿Í°°ÀÌ &¸¦ ÁöÁ¤ÇÑ °æ¿ì ½©Àº ÇÁ·Î±×·¥ÀÇ ½ÇÇà ¿ä±¸¸¦ ¹Þ¾Æµé¿© ±âµ¿µÇ¾úÀ½À» ¾Ë·ÁÁÖ±â À§ÇØ ÀÚµ¿ÀûÀ¸·Î °³½ÃµÈ ÇÁ·Î¼¼½ºÀÇ PID(ÇÁ·Î¼¼½º ½Äº°ÀÚ)¿Í »ç¿ëÀÚ°¡ ´Ù¸¥ ¸í·É¾î¸¦ ÀÔ·ÂÇÒ ¼ö ÀÖµµ·Ï ½© ÇÁ·ÒÇÁÆ®¸¦ Ç¥½ÃÇÑ´Ù. Background ÇÁ·Î¼¼½º´Â ½Ã½ºÅÛ Â÷¿ø¿¡¼­ ½ÇÇàµÇ¾îÁö¸ç, ½ÇÇà ¿Ï·áÈÄ ÇÁ·Î¼¼½º°¡ »ý¼ºÇÑ Ãâ·ÂÀ» Ç¥ÁØ Ãâ·Â Áï ´Ü¸» ½ºÅ©¸°»óÀ¸·Î Ç¥½ÃÇÑ´Ù. ÀÌ·± ÀÌÀ¯¶§¹®¿¡ Åë»ó Background Job¿¡¼­´Â Ãâ·Â ¹æÇâÀüȯ(Redirection)ÀÌ »ç¿ëµÇ°Ô µÈ´Ù. ½©ÀÇ ÇÑÁ¾·ùÀÎ Korn Shell¿¡¼­´Â ¸í·É¾î ½ÇÇà½ÃÀÇ ´Ù¾çÇÑ Á¦¾î ¹æ½ÄÀ» Á¦°øÇϳª ÀÌ ºÎºÐ¿¡´Â Â÷ÈÄ¿¡ °­ÀÇµÉ ½©ÀÇ °³¿ä ºÎºÐ¿¡¼­ ÀÚ¼¼È÷ ¼³¸íÇÑ´Ù. À̶§ÀÇ Á¦¾î¹æ½ÄÀ» Çѹø ¿¹¸¦ µéÀÚ¸é, »ç¿ëÀÚ°¡ ¿ä±¸ÇÑ ÀÛ¾÷À» Background¿¡ À§Ä¡½ÃÅ°°Å³ª, Foreground¿¡ À§Ä¡½ÃÅ°°Å³ª, ÇÑÂÊÀÇ ÀÛ¾÷À» ´Ù¸¥ÂÊ¿¡ À§Ä¡½ÃÅ°´ÂµîÀÇ Á¦¾î¿Í ÀÛ¾÷À» ÁßÁö½ÃÅ°´Â Á¦¾îµîÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$pgm5 stats > stats.pgm5& ¦¢ ¦¢1238 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÀÌ ¿¹¿¡¼­´Â »ç¿ëÀÚ°¡ ÀÛ¼ºÇÑ ÇÁ·Î±×·¥ÀÎ pgm5¸¦ Background¿¡¼­ ½ÇÇàÇÏ°í ÀÖ´Ù. ¶ÇÇÑ ¸í·É¾îÀÇ ½ÇÇà°á°ú Ãâ·ÂÀÌ Foreground»óÀÇ ¸í·É¾î Ãâ·Â°ú µ¿½Ã¿¡ Ãâ·ÂµÊÀ¸·Î½á ¾ß±âµÇ´Â È¥µ·À»¸·±âÀ§ÇØ, stats.pgm5¶ó´Â È­ÀÏ¿¡ ÀúÀåµÇµµ·Ï Ãâ·Â ¹æÇâÀüȯÀÌ ÇàÇØÁö°í ÀÖ´Ù. ¸í·É¾î ½ÇÇà¿ä±¸°¡ ³»·ÁÁøÈÄ ½©¿¡ÀÇÇØ ÇÁ·Î¼¼½º ½Äº°ÀÚ(PID)°¡ Ç¥½ÃµÇ´Â °ÍÀ» º¼¼ö ÀÖ´Ù. À̶§ µÇµ¹·ÁÁö´Â ÇÁ·Î¼¼½º ½Äº°ÀÚ´Â ÇÁ·Î¼¼½º Á¦¾î ¸í·ÉÀÎ kill°ú ps °°Àº ¸í·É¾î¿¡¼­ ƯÁ¤ ÀÛ¾÷À» ÁöĪÇϱâ À§ÇÑ Á¤º¸·Î ÀÌ¿ëµÇ´Ï ÁÖÀDZí°Ô ºÁ¾ßÇÑ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$ls -al /etc& pwd ¦¢ ¦¢3318 ¦¢ ¦¢/home/eps ¦¢ ¦¢(ls -al /etc output ) ¦¢ ¦¢ . ¦¢ ¦¢ . ¦¢ ¦¢ . ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ À§ÀÇ ¿¹´Â µ¿ÀÏ ¸í·É¾î ¶óÀλ󿡼­ Foreground ¿Í Background ÀÛ¾÷½ÇÇà ¿ä±¸¸¦ ³»¸®´Â °æ¿ì¸¦ º¸¿©ÁÖ°í ÀÖ´Ù. ¿¹Á¦ÀÇ ¸í·É¾î ¶óÀο¡¼­ & ÀÌÀü¿¡ ±â¼úµÈ ¸í·É¾î´Â Background¿¡¼­ ½ÇÇàµÇ°Ô µÇ¸ç, ±× ÀÌÈÄ¿¡ ±â¼úµÇ¾î ÀÖ´Â ¸í·É¾î´Â Foreground¿¡¼­ ½ÇÇàµÈ´Ù. À̶§ÀÇ ½ÇÇà °á°úÀÇ Ãâ·ÂÀº °¢ ¸í·É¾îÀÇ ½ÇÇà ¼Ò¿ä½Ã°£¿¡ µû¶ó¼­ Ãâ·ÂµÇ°Ô µÈ´Ù. ÀÌ ¿¹¿¡¼­´Â pwd ¸í·É¾îÀÇ ½ÇÇà½Ã°£ÀÌ ls ¸í·Éº¸´Ù ªÀº°ÍÀ¸·Î °¡Á¤ÇÏ¿© pwd ¸í·ÉÀÇ °á°ú°¡ ¸ÕÀú Ç¥½ÃµÇ°í ÀÖ´Ù. --------------------------------------------------------------------------- ´ÙÀ½¿¡´Â ÇÁ·Î¼¼½º Á¾·á ¸í·ÉÀÎ kill ¸í·É¾î¿¡ ´ëÇØ ¼³¸íÇÕ´Ï´Ù. --------------------------------------------------------------------------- #61 À¯´Ï½Ã½º (adunis2 ) ÇÁ·Î¼¼½ºÀÇ Á¾·á: kill 03/09 23:44 105 line ÇÁ·Î¼¼½ºÀÇ Á¾·á: kill --------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. --------------------------------------------------------------------- 1. ÇÁ·Î¼¼½ºÀÇ Á¾·á kill ÇÁ·Î¼¼½º¸¦ Á¾·áÇϰųª, ÇÁ·Î¼¼½º¿¡ ÁöÁ¤ÇÑ ½ÅÈ£¸¦(signal) º¸³½´Ù. ÀÌ ¸í·É¾î´Â ÀϹÝÀûÀ¸·Î ½Ã½ºÅÛ °ü¸®ÀÛ¾÷À» ¼öÇàÇÏ´Â ½Ã½ºÅÛ °ü¸®ÀÚ¿¡ ÀÇÇØ »ç¿ëµÈ´Ù. kill ¸í·É¾î´Â ÁöÁ¤ÇÑ ½ÅÈ£¸¦ ƯÁ¤ ÇÁ·Î¼¼½º¿¡ º¸³½´Ù. kil ¸í·É¾î¿¡ ÀÇÇØ ÁöÁ¤ °¡´ÉÇÑ ½ÅÈ£µéÀº kill -l ¸í·ÉÀ» ÅëÇØ È®ÀÎÇÒ ¼ö ÀÖ´Ù. ´ÙÀ½Àº ls -l ¸í·ÉÀÇ ½ÇÇà °á°ú Ãâ·ÂµÈ ½ÅÈ£µéÀÇ ¸ñ·ÏÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$kill -l ¦¢ ¦¢HUP INT QUIT ILL TRAP ABRT EMT FPE KILL BUS SEGV ¦¢ ¦¢SYS PIPE ALRM TERM USR1 USR2 CLD PWR WINCH URG POLL ¦¢ ¦¢STO TSTP CONT TTIN TTOU VTALRM PROF XCPU ¦¢ ¦¢XFSZ ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ( ÀÌ»óÀÇ ½ÅÈ£µé¿¡ ´ëÇÑ ¼³¸íÀº Çö ´Ü°èÀÇ °­ÀÇ ¼öÁØÀ» ¹þ¾î³ª±â ¶§¹®¿¡ »ý·«ÇÑ´Ù. ÀÚ¼¼ÇÑ ³»¿ëÀº ´ÙÀ½ ´Ü°è¿¡¼­ ¼³¸íµÉ °ü¸®ÀÚ ±â´ÉÆí¿¡¼­ ÀÚ¼¼È÷ ¼³¸íµÈ´Ù. ) ( ƯÁ¤½ÅÈ£¸¦ ÂüÁ¶ÇÏ´Â ¹æ½ÄÀº µÎ°¡Áö°¡ ÀÖ´Ù. ù°´Â À§¿¡ Ç¥½ÃµÈ ½ÅÈ£¸íÀ» »ç¿ëÇØ ÂüÁ¶ÇÏ´Â ¹æ½ÄÀÌ°í, µÑ°´Â À§ ¿¹¿¡¼­ÀÇ ¼ø¼­¸¦ ÅëÇØ ÂüÁ¶ÇÏ´Â ¹æ¹ýÀÌ´Ù. ¿¹¸¦µé¸é ¼ÒÇÁÆ®¿þ¾î Á¾·á ½ÅÈ£¸¦ TERM ¶Ç´Â 15·Î ÂüÁ¶ÇÒ ¼ö ÀÖ´Ù. ) ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ kill [-option] [-signal] PID(s) ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ kill ¸í·É¾î ÁöÁ¤½Ã¿¡ ½ÅÈ£¸¦ ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é, ½ÅÈ£Áß TERM ½ÅÈ£°¡ °¡Á¤µÈ´Ù. ¸î¸î ÇÁ·Î¼¼½º´Â ¾î¶² ½ÅÈ£¿¡ ÀÇÇØ ¿µÇâÀ» ¹ÞÁö ¾Ê´Â °æ¿ì°¡ Àִµ¥, ÀÌ °æ¿ì ½ÅÈ£ 9, Áï KILL ½ÅÈ£°¡ ÀÌ·¯ÇÑ ÇÁ·Î¼¼½º¸¦ Á¾·áÇϱâ À§ÇØ È¿°úÀûÀÌ´Ù. ´ÙÀ½Àº ¸í·É¾î »ç¿ë°ú °ü·ÃµÈ »çÇ×ÀÌ´Ù. . ¸í·É¾î»ó¿¡¼­ ÇÁ·Î¼¼½º 0(PID)ÀÇ ÁöÁ¤Àº ÇöÀçÀÇ ·Î±×Àΰú °ü·ÃµÈ ¸ðµç ÇÁ·Î¼¼½º¸¦ ´ë»óÀ¸·Î ƯÁ¤ ½ÅÈ£¸¦ º¸³¿À» ³ªÅ¸³½´Ù. . ´Ù¼öÀÇ ÇÁ·Î¼¼½ºµéÀÌ ÁöÁ¤µÇ¾úÀ»¶§, ºÎ¸ð ÇÁ·Î¼¼½º´Â ÀÚ½Ä ÇÁ·Î¼¼½ºÀü¿¡ ¸í·É¾î»ó¿¡ ±â¼úµÇ¾î¾ß¸¸ ÇÑ´Ù. . ¸í·É¾î»ó¿¡ ÁöÁ¤ÇÏ´Â ÇÁ·Î¼¼½º´Â °ü¸®ÀÚ(superuser)¸¦ Á¦¿ÜÇÏ°í´Â, ¹Ýµå½Ã ¸í·É¾î¸¦ ½ÇÇàÇÏ´Â »ç¿ëÀÚ°¡ ½ÇÇàÇÑ ÇÁ·Î¼¼½ºÀ̾î¾ß ¸¸ ÇÑ´Ù. ( ¿É¼Ç ) -l ½ÅÈ£µéÀÇ ¸ñ·ÏÀ» ³ª¿­ÇÑ´Ù. [-signal designation] ½ÅÈ£´Â ½Éº¼¸¯ À̸§ ¶Ç´Â ¼ýÀÚ À̸§À» ÀÌ¿ëÇÏ¿© ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù. ( ¿¹Á¦ ) ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$ps -f ¦¢ ¦¢ UID PID PPID C STIME TTY TIME COMD ¦¢ ¦¢ root 4283 643 0 11:14:30 term/12 0:01 /usr/bin/login¦¢ ¦¢userb 4284 4283 3 11:14:44 term/12 0:01 -sh ¦¢ ¦¢userb 4308 4284 21 11:16:00 term/12 0:00 ps -f ¦¢ ¦¢userb 4303 4284 0 11:15:32 term/12 0:00 sleep 100 ¦¢ ¦¢userb 4304 4284 0 11:15:39 term/12 0:00 sleep 200 ¦¢ ¦¢userb 4305 4284 0 11:15:41 term/12 0:00 sleep 300 ¦¢ ¦¢userb 4306 4284 0 11:15:45 term/12 0:00 sleep 600 ¦¢ ¦¢$kill 4306 4305 ¦¢ ¦¢4306 Terminated ¦¢ ¦¢4305 Terminated ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÀÌ ¿¹´Â ´Ù¼öÀÇ ÇÁ·Î¼¼½º¸¦ µðÆúÆ®(Default) ½ÅÈ£·Î Á¾·áÇÏ´Â °ÍÀ» º¸¿©ÁÖ°í ÀÖ´Ù. À̶§ ¸í·É¾î»ó¿¡ ÁöÁ¤µÈ ÇÁ·Î¼¼½ºµéÀº ½©¿¡ÀÇÇØ ºÐ±âµÈ ÀÚ½Ä ÇÁ·Î¼¼½º µéÀ̱⠶§¹®¿¡ ¼ø¼­¿¡ »ó°üÇÏÁö ¾Ê°í ÁöÁ¤ÇÏ°í ÀÖ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$kill -9 4304 ¦¢ ¦¢4304 Killed ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÀÌ ¿¹´Â kill ¸í·É¾î¿¡ ÀÇÇØ ÇÁ·Î¼¼½º¿¡ Àü´ÞµÉ ½ÅÈ£¸¦ ¼ýÀÚ·Î ÁöÁ¤ÇÏ´Â ¹æ½ÄÀ» º¸¿©ÁÖ°í ÀÖ´Ù. ¶Ç À§ÀÇ ¿¹Á¦¿Í´Â ´Þ¸® ½ÅÈ£¸¦ »ç¿ëÀÚ°¡ ¸íÈ®È÷ ÁöÁ¤ÇÏ°í ÀÖ´ÂÁ¡µµ ÁÖ¸ñÇϱ⠹ٶõ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$kill -TERM 4303 ¦¢ ¦¢4303 Terminated ¦¢ ¦¢$ps -f ¦¢ ¦¢ UID PID PPID C STIME TTY TIME COMD ¦¢ ¦¢ root 4283 643 0 11:14:30 term/12 0:01 /usr/bin/login ¦¢ ¦¢userb 4284 4283 3 11:14:44 term/12 0:01 -sh ¦¢ ¦¢userb 4308 4284 21 11:16:00 term/12 0:00 ps -f ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÀÌ ¿¹Á¦´Â ½Éº¼¸¯ Çü½ÄÀ¸·Î ½ÅÈ£¸¦ ÁöÁ¤ÇÑ ¿¹ÀÌ´Ù. --------------------------------------------------------------------------- ´ÙÀ½¿¡´Â ¹é±×¶ó¿îµå ÇÁ·Î¼¼½º Á¦¾î ¸í·ÉÀÎ nohup ¸í·É¾î¿¡ ´ëÇØ ¼³¸íÇÕ´Ï´Ù. --------------------------------------------------------------------------- #62 À¯´Ï½Ã½º (adunis2 ) ¸í·É¾î ½ÇÇàÀÇ ºñÁ¤»óÀû Á¾·á ¿¹¹æ: nohup 03/10 12:51 95 line ¸í·É¾î ½ÇÇàÀÇ ºñÁ¤»óÀûÀÎ Á¾·á ¿¹¹æ --------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. --------------------------------------------------------------------- 1. ¸í·É¾î ½ÇÇàÀÇ ºñÁ¤»óÀûÀÎ Á¾·á ¿¹¹æ nohup Hangup Çö»ó°ú Logout ÀÛ¾÷À¸·ÎºÎÅÍ ¸í·É¾î ½ÇÇàÀ» º¸ÀåÇÑ´Ù. »ç¿ëÀÚ°¡ LogoutÀ» Çϸé,±× »ç¿ëÀÚ°¡ ½ÇÇàÁßÀÎ ¸ðµç ÇÁ·Î¼¼½º´Â Á¾·áÇÏ°Ô µÈ´Ù. nohup ¸í·É¾î´Â »ç¿ëÀÚ°¡ LogoutÇÑ ÈÄ¿¡µµ ¸í·É¾î ¼öÇàÀÌ °è¼Ó ¼öÇàµÇµµ·Ï Çϱâ À§ÇÏ¿© ÁöÁ¤ÇÑ ¸í·É¾î¸¦ ½ÇÇàÇÑ´Ù. nuhup ¸í·É¾î´Â Background¿¡¼­ ½ÇÇàÇÏ´Â ±ä½Ã°£ÀÌ ¼Ò¿äµÇ´Â ÇÁ·Î±×·¥µé¿¡ ÀÚÁÖ »ç¿ëµÈ´Ù. ¸¸ÀÏ ÀÌ ±â´ÉÀÌ Á¦°øµÇÁö ¾ÊÀ¸¸é, »ç¿ëÀÚ´Â ±× ÇÁ·Î±×·¥ÀÌ Á¾·áµÉ¶§±îÁö ·Î±×ÀÎ »óŸ¦ À¯ÁöÇؾ߸¸ ÇÒ °ÍÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ nohup command line ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ nohup ¸í·É¾î¸¦ ÁöÁ¤ÇÑ ¸í·É¾î ¶óÀÎ»ó¿¡ ¹æÇâÀüȯ(Redirection)À» »ç¿ëÇÏÁö ¾Ê¾ÒÀ» °æ¿ì ¸í·É¾î¿Í Ç¥ÁØ ¿¡·¯ÀÇ Ãâ·ÂÀº ¸í·É¾î ¶óÀÎ ½ÇÇà½ÃÀÇ ÀÛ¾÷ µð·ºÅ丮³»¿¡ nohup.out À̶ó´Â È­ÀÏ·Î ÀúÀåµÈ´Ù. ±×·±µ¥ nohup.out À̶ó´Â È­ÀÏÀÌ ÀÌ¹Ì Á¸ÀçÇÒ °æ¿ì¿¡´Â Ãâ·ÂÀÌ ±âÁ¸ÀÇ nohup.out È­ÀÏ¿¡ Ãß°¡µÇ°Ô (Append) µÈ´Ù. ¶ÇÇÑ nohup.out È­ÀÏÀ» »ý¼º ¶Ç´Â Ãß°¡ÇÒ µð·ºÅ丮¿¡ ´ëÇØ »ç¿ëÀÚ°¡ ¾²±â ±ÇÇÑÀÌ ¾øÀ» °æ¿ì¿¡´Â, nohup ¸í·É¾îÀÇ Ãâ·ÂÀº »ç¿ëÀÚÀÇ È¨(Home) µð·ºÅ丮¿¡ nohup.out È­ÀÏ·Î ÀúÀåµÈ´Ù. nohup ¸í·É¾î¸¦ ÅëÇØ ´Ù¼öÀÇ ¸í·É¾î¸¦ ½ÇÇàÇÒ °æ¿ì¿¡´Â, ÇØ´ç ¸í·É¾îµéÀ» »çÀü¿¡ ÇϳªÀÇ È­ÀÏ¿¡ ÀúÀåÇÑ ÈÄ, ±× È­ÀÏÀ» nohup ¸í·É¾î¸¦ ÅëÇØ ½ÇÇàÇÑ´Ù. ÀÌ·¸°Ô Çϸé nohup ¸í·É¾î´Â È­Àϳ»¿¡ ÀúÀåµÇ¾î ÀÖ´Â ´Ù¼öÀÇ ¸í·É¾îµé ¸ðµÎ¸¦ ´ë»óÀ¸·Î ÀÛ¾÷À» ½ÇÇàÇÑ´Ù. ´ÙÀ½°ú °°ÀÌ ¸í·É¾î ¶óÀÎÀ» ÁöÁ¤Çß´Ù°í °¡Á¤ÇÏÀÚ. $nohup pwd ; ls ; ps ÀÌ ¿¹¿¡¼­ ÇϳªÀÇ ¸í·É¾î ¶óÀÎ»ó¿¡ º¹¼ö°³ÀÇ ¸í·É¾î¸¦ ÁöÁ¤Çϱâ À§ÇØ ¼¼¹ÌÄÝ·ÐÀ» »ç¿ëÇÏ°í ÀÖ´Ù. ÀÌ °æ¿ì¿¡ nohup ¸í·É¾î´Â ¿ÀÁ÷ pwd ¸í·É¾î¿¡ ´ëÇؼ­¸¸ ¿µÇâÀ»¹ÌÄ¡°Ô µÈ´Ù. ±×·¯¸é À§ÀÇ ¿¹¿¡ ±×·ìÈ­ ¸í·ÉÀ» »ç¿ëÇÏ¸é ¾î¶»°Ô µÉ±î? ´ÙÀ½°ú °°ÀÌ ÁöÁ¤ÇÏ°Ô µÉ°ÍÀÌ´Ù. $nohup (pwd ; ls ; ps ) ±×·¯³ª ÀÌ °æ¿ì¿¡´Â ½©·ÎºÎÅÍ '¸í·É¾î ¶óÀÎ ¹®¹ý ¿¡·¯'¶ó´Â ¿¡·¯ ¸Þ¼¼Áö¸¦ ¹Þ°Ô µÉ °ÍÀÌ´Ù. ÀÌ Çü½ÄÀº Çã¿ëµÇÁö ¾Ê±â ¶§¹®ÀÌ´Ù. ´ÙÀ½Àº nohup ¸í·É¾î¸¦ »ç¿ëÇÏ´Â ¿¹Á¦µéÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$pwd ¦¢ ¦¢/home/userb ¦¢ ¦¢$ls -al ¦¢ ¦¢total 10 ¦¢ ¦¢drwxr-xr-x 3 userb other 512 Sep 3 11:49 . ¦¢ ¦¢drwxrwxrwx 7 root root 512 Sep 3 10:16 .. ¦¢ ¦¢-rw-r--r-- 1 userb other 144 Sep 3 10:15 .profile ¦¢ ¦¢-rw------- 1 root other 58 Sep 3 11:19 .sh_history ¦¢ ¦¢dr-xr-xr-x 2 userb other 512 Sep 3 11:49 subdir ¦¢ ¦¢$cd subdir ; pwd ¦¢ ¦¢/home/userb/subdir ¦¢ ¦¢$nohup sort allnames& ¦¢ ¦¢4419 ¦¢ ¦¢ Sending output to nohup.out ¦¢ ¦¢$exit ¦¢ ¦¢Logout. ¦¢ ¦¢real 36:19.65 ¦¢ ¦¢user 4.38 ¦¢ ¦¢sys 16.21 ¦¢ ¦¢ (userb logs in) ¦¢ ¦¢$pwd ¦¢ ¦¢/home/userb ¦¢ ¦¢$ls -al ¦¢ ¦¢total 10 ¦¢ ¦¢drwxr-xr-x 3 userb other 512 Sep 27 11:49 . ¦¢ ¦¢drwxrwxrwx 7 root root 512 Sep 27 10:16 .. ¦¢ ¦¢-rw-r--r-- 1 userb other 144 Sep 27 10:15 .profile ¦¢ ¦¢-rw------- 1 root other 58 Sep 27 11:19 .sh_history ¦¢ ¦¢-rw-r--r-- 1 userb other 5392 Sep 27 11:50 nohup.out ¦¢ ¦¢dr-xr-xr-x 2 userb other 512 Sep 27 11:49 subdir ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÀÌ ¿¹¸¦ ºÐ¼®Çϱâ À§ÇØ ÇÑ°¡Áö¸¦ ÁÖ¸ñÇØ¾ß ÇÑ´Ù. ¸ÕÀú pwd ¸í·ÉÀ» ÅëÇØ ÀÛ¾÷ µð·ºÅ丮°¡ /home/userbÀÓÀ» È®ÀÎÇÑ ÈÄ, ls -al ¸í·ÉÀ» ÅëÇØ ÀÛ¾÷ µð·ºÅ丮³»ÀÇ È­ÀÏ Á¤º¸¸¦ È®ÀÎÇÏ°í ÀÖ´Ù. ls ¸í·ÉÀÇ ½ÇÇà °á°ú¿¡¼­ ÁÖ¸ñÇÒ °ÍÀÌ ÀÖ´Ù. ±×°ÍÀº subdirÀ̶ó´Â µð·ºÅ丮¿¡ ´ëÇؼ­´Â ¸ðµç »ç¿ëÀÚ°¡ ¾²±â ±ÇÇÑÀÌ ¾ø´Ù´Â °ÍÀÌ´Ù. ±×ÈÄ cd ¸í·ÉÀ» ÅëÇØ ÀÛ¾÷ µð·ºÅ丮¸¦ subdir·Î º¯°æÇÑ ÈÄ nohup ¸í·ÉÀ» ½ÇÇàÇÏ°í, Logout ÀÛ¾÷À» ¼öÇàÇß´Ù. ±×ÈÄ ´Ù½Ã ·Î±×ÀÎÀ» ¼öÇàÇÏ¿© »ç¿ëÀÚÀÇ È¨ µð·ºÅ丮ÀÇ ³»¿ëÀ» È®ÀÎÇÏ´Ï ±× À§Ä¡¿¡ nohup.out È­ÀÏÀÌ »ý¼ºµÈ °ÍÀ» º¼¼ö ÀÖ´Ù. ±× ÀÌÀ¯´Â nohup ¸í·É¾î¸¦ ³»¸± ´ç½ÃÀÇ ÀÛ¾÷ µð·ºÅ丮¿¡ ´ëÇؼ­´Â »ç¿ëÀÚ°¡ ¾²±â ±ÇÇÑÀÌ ¾ø¾ú±â ¶§¹®¿¡ »ç¿ëÀÚÀÇ È¨ µð·ºÅ丮¿¡ Ãâ·Â È­ÀÏÀÌ »ý¼ºµÈ °ÍÀÌ´Ù. ¸¶Áö¸·ÀÇ ls ¸í·ÉÀ» ÅëÇØ À̸¦ È®ÀÎÇÏ°í ÀÖ´Ù. --------------------------------------------------------------------------- ´ÙÀ½¿¡´Â À¯´Ð½ºÀÇ ÀÛ¾÷ ½ºÄÉÁ층 ±â´É¿¡ ´ëÇØ ¼³¸íÇÕ´Ï´Ù. --------------------------------------------------------------------------- #63 À¯´Ï½Ã½º (adunis2 ) ¸í·É¾îÀÇ ¿¹¾à ½ÇÇà: at,batch 03/10 23:41 170 line À¯´Ð½ºÀÇ ÀÛ¾÷ ¿¹¾à(Scheduling) ±â´É --------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. --------------------------------------------------------------------- 1. ÀÛ¾÷ ¿¹¾à(Scheduling) ±â´É at °ú batch ¸í·É¾î´Â ÁöÁ¤ÇÑ ¸í·É¾îµéÀ» ƯÁ¤ÇÑ ½Ã°£¿¡ ½ÇÇàÇϱâ À§ÇÑ ¿¹¾à ±â´ÉÀ» Á¦°øÇÑ´Ù. ÀÌ·¯ÇÑ ¸í·É¾î¸¦ »ç¿ëÇϱâ À§Çؼ­´Â »ç¿ëÀÚ´Â /etc/cron.d/at.allow È­ÀÏ¿¡ µî·ÏµÇ¾î ÀÖ¾î¾ß ÇÑ´Ù. ¸¸¾à ÀÌ È­ÀÏÀÌ ÇØ´ç µð·ºÅ丮¿¡ Á¸ÀçÇÏÁö ¾ÊÀ» °æ¿ì¿¡´Â µ¿ÀÏ µð·ºÅ丮³»¿¡ at.deny È­ÀÏÀÌ ÂüÁ¶µÈ´Ù. ÀÌ È­ÀÏÀº ÀÌ ¸í·É¾îµéÀ» »ç¿ëÇÏÁö ¸øÇÏ´Â »ç¿ëÀÚµéÀ» Á¤ÀÇÇÏ°í Àֱ⠶§¹®¿¡, at °ú batch ¸í·É¾î¸¦ ½ÇÇà ¿ä±¸ÇÑ »ç¿ëÀÚ°¡ ÀÌ È­ÀÏ¿¡ µî·ÏµÇ¾î ÀÖÀ¸¸é ÀÛ¾÷ ¿ä±¸°¡ ¿¡·¯ 󸮵ȴÙ. ÀÌ µÎ È­ÀÏÀÌ ¸ðµÎ Á¸ÀçÇÏÁö ¾ÊÀ» °æ¿ì¿¡´Â root ¸¸ÀÌ ÀÌ µÎ ¸í·É¾î¸¦ ½ÇÇà °¡´ÉÇÏ´Ù. at °ú batch ¸í·É¾î´Â Ç¥ÁØ ÀÔ·Â ¶Ç´Â ÀÔ·Â ¹æÇ⺯°æ(Input Redirection) À¸·Î ºÎÅÍ ½ÇÇàÇÒ ¸í·É¾îµéÀ» ¹Þ¾ÆµéÀδÙ. Batch ¸í·É¾î´Â ½Ã½ºÅÛ ÀÚ¿øÀÌ ¿©À¯°¡ ÀÖ´Â °æ¿ì¿¡ ÁöÁ¤ÇÑ ¸í·É¾îµéÀ» ½ÇÇàÇÑ´Ù. ¹Ý¸é¿¡ at ¸í·É¾î´Â »ç¿ëÀÚ°¡ ÁöÁ¤ÇÑ ½Ã°£¿¡ ¸í·É¾îµéÀ» ½ÇÇàÇÑ´Ù. at ¶Ç´Â batch ¸í·É¾î°¡ ½ÇÇàµÉ¶§, 9ÀÚÀÇ ¹®ÀÚ¿­°ú .a ¿Í .b ¶ó´Â È®ÀåÀÚ°¡ µ¡ºÙÀº ÀÛ¾÷ ½Äº°ÀÚ(Job identifier)°¡ Ç¥½ÃµÈ´Ù. ±×¸®°í ÀÛ¾÷ ½Äº°ÀÚ¿Í °°Àº À̸§À¸·Î Á¦¾î Á¤º¸¿Í ½ÇÁ¦ÀÇ ¸í·É¾îµéÀ» Æ÷ÇÔÇÏ´Â °¢°¢ÀÇ ¿ä±¸¿¡ »óÀÀÇÏ´Â È­ÀϵéÀ» /var/spool/cron/atjobs È­ÀÏ¿¡ »ý¼ºÇÑ´Ù. at °ú batchÀÇ Ãâ·ÂÀº Ãâ·Â ¹æÇ⺯°æÀÌ ÇàÇØÁø °æ¿ì¸¦ Á¦¿ÜÇÏ°í´Â »ç¿ëÀÚ¿¡ ÀüÀÚ¿ìÆí(¸ÞÀÏ)À¸·Î º¸³»Áø´Ù. ´ÙÀ½ºÎÅÍ at °ú batch ¸í·É¾î¿¡ ´ëÇØ ¼³¸íÇÑ´Ù. 2. at ¸í·É¾î at ƯÁ¤ÇÑ ½Ã°£¿¡ ½ÇÇàÇϱâ À§ÇØ ¸í·É¾îµéÀ» ¿¹¾àÇÑ´Ù(Schedule). ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ at [-option] time [date] [increment] ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÀÌ ¸í·É¾î¸¦ »ç¿ëÇϱâ À§Çؼ­´Â »ç¿ëÀÚ°¡ at.allow È­ÀÏ¿¡ µî·ÏµÇ¾î ÀÖ¾î¾ß ÇÑ´Ù. ¸í·É¾î¿¡´Â ½Ã°£, ³¯Â¥ ±×¸®°í Áõ°¡ºÐÀ» Æ÷ÇÔÇÑ´Ù. ÁöÁ¤µÇ´Â °¢°¢ÀÇ ¿ä¼Ò´Â ¼³¸íÇÏ¸é ´ÙÀ½°ú °°´Ù. ½Ã°£ ½Ã°£Àº Çʼö ÁöÁ¤ ¿ä¼ÒÀÌ´Ù. ½Ã°£Àº 1ÀÚ¿¡¼­ 4ÀÚ±îÁöÀÇ ¼ýÀÚ ¶Ç´Â noon, midnight, now¿Í °°Àº Å°¿öµå¸¦ ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù. ½Ã°£À» ¼ýÀÚ·Î ÁöÁ¤½Ã a.m. ¶Ç´Â p.m. ÀÌ ÁöÁ¤µÈ °æ¿ì¸¦ Á¦¿ÜÇÏ°í´Â 24 ½Ã°£ Ç¥½Ã ¹æ½ÄÀÌ Àû¿ëµÈ´Ù. ¿¹¸¦µé¸é, at 8, at 0800, at 8:00amÀº ¸ðµÎ ¿ÀÀü 8½Ã·Î ÀνÄÇÑ´Ù. ³¯Â¥ ¼±ÅÃÀûÀ¸·Î ÁöÁ¤µÇ´Â ³¯Â¥´Â ÀÛ¾÷ÀÌ ½ÇÇàµÉ ¿ù, ÀÏ, ¿äÀÏÀ» ÁöÁ¤ÇÑ´Ù. ¹°·Ð today ¿Í tomorrowµµ ¶ÇÇÑ ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù. ¸¸ÀÏ ³¯Â¥¸¦ ÁöÁ¤ÇÏÁö ¾ÊÀ» °æ¿ì, ÁöÁ¤ÇÑ ½Ã°£ÀÌ ÇöÀçÀÇ ½Ã°£º¸´Ù ÀÌÈÄÀÌ¸é ¿À´ÃÀÌ °¡Á¤µÇ°í, ÇöÀçÀÇ ½Ã°£º¸´Ù ÀÌÀüÀÌ¸é ³»ÀÏÀÌ °¡Á¤µÈ´Ù. ¿¹¸¦µé¸é at 8 Friday, at 8 Apr 26, at 8 tomorrow ÀÇ Çü½ÄÀ¸·Î ÁöÁ¤ÇÑ´Ù. Áõ°¡ºÐ ¼±ÅÃÀûÀ¸·Î ÁöÁ¤µÇ´Â Áõ°¡ºÐÀº ¼ýÀÚ¿Í minute(s), hour(s), day(s), week(s), month(s) ¶Ç´Â year(s)¿Í °°Àº »ó´ëÀûÀÎ ÁöÁ¤Çü½ÄµéÀ» ÀǹÌÇÑ´Ù. ¿¹¸¦µé¸é at 8 next day(´ÙÀ½³¯) ¶Ç´Â at now +2 hours(Áö±ÝºÎÅÍ 2½Ã°£ ÈÄ)¿Í °°´Ù. at ¸í·É¾î´Â Ç¥ÁØÀÔ·Â ¶Ç´Â -f ¿É¼ÇÀ» »ç¿ëÇÏ¿© ÁöÁ¤ÇÑ È­ÀϷκÎÅÍ ¸í·É¾îµéÀ» ÀÔ·Â ¹Þ´Â´Ù. -f ¿É¼Ç¿¡ ÀÇÇØ ÁöÁ¤µÇ´Â È­ÀÏÀº ÅؽºÆ® ÆíÁý±â¸¦ ÀÌ¿ëÇÏ¿© »ý¼º¹× ¼öÁ¤ÇÒ ¼ö ÀÖ´Ù. ÀÌ·¯ÇÑ È­ÀÏÀº ÇÊ¿ä½Ã Àç»ç¿ëµµ °¡´ÉÇÏ´Ù. ¸í·É¾îÀÇ Ãâ·ÂÀº Ãâ·Â ¹æÇ⺯°æÀÌ ÁöÁ¤µÈ °æ¿ì¸¦ Á¦¿ÜÇÏ°í´Â »ç¿ëÀÚÀÇ ¸ÞÀÏ·Î º¸³»Áø´Ù. ( ¿É¼Ç ) -f file ÁöÁ¤ÇÑ file¿¡ ÀÖ´Â ¸í·É¾îµéÀ» ó¸®ÇÑ´Ù. -m ÀÛ¾÷ÀÌ ¿Ï·áµÇ¾úÀ»¶§ »ç¿ëÀÚ¿¡ ¸ÞÀÏÀ» º¸³½´Ù. -l [job_id(s)] ½ÇÇàµÇ±â À§ÇØ ´ë±âÇÏ°í ÀÖ´Â ÁöÁ¤ÇÑ job_id¿¡ ´ëÇÑ Á¤º¸¸¦ Ç¥½ÃÇÑ´Ù. -r job_Id(s) ÁöÁ¤ÇÑ ÀÛ¾÷À» »èÁ¦ÇÑ´Ù. ( ¿¹Á¦ ) ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$at now tomorrow ¦¢ ¦¢lp .profile ¦¢ ¦¢cal ¦¢ ¦¢date ¦¢ ¦¢who -H ¦¢ ¦¢<^d> ¦¢ ¦¢warning: commands will be executed using /usr/bin/sh ¦¢ ¦¢job 686010600.a at Sat Sep 7 15:30:03 1991 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÀÌ ¿¹´Â ´ÙÀ½³¯ ÇöÀç ½Ã°£¿¡ Ç¥ÁØ ÀÔ·ÂÀ» ÅëÇØ ÁöÁ¤µÇ´Â ÀÛ¾÷À» ½ÇÇàÇϵµ·Ï ÁöÁ¤ÇÏ´Â ¿¹¸¦ º¸¿©ÁÖ°í ÀÖ´Ù. ±×¸®°í ^d ¸¦ ÅëÇØ Ç¥ÁØ ÀÔ·ÂÀ» ³¡³»°í ÀÖ´Ù. at ¸í·É¾î°¡ ½ÇÇàµÈÈÄ ÀÛ¾÷ ½Äº°ÀÚ¸¦ µ¹·ÁÁÖ´Â °ÍÀ» º¼¼ö ÀÖ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$cat cleanup ¦¢ ¦¢date ¦¢ ¦¢ls -lR > /home/user2 ¦¢ ¦¢find /home/user2 -atime +60 -exec rm {} \; ¦¢ ¦¢$at -m -f cleanup 1600 fri +2 weeks ¦¢ ¦¢warning:commands will be executed using /usr/bin/sh ¦¢ ¦¢job 686013999.a at Fri Sep 20 16:00:00 1991 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ cleanup È­ÀÏ¿¡ »çÀü¿¡ ÀúÀåµÇ¾î ÀÖ´Â ¸í·É¾îµéÀ» at ¸í·É¾î¿¡ -f ¿É¼ÇÀ» »ç¿ëÇÏ¿© ±× È­ÀÏÀ» ÁöÁ¤ÇÔÀ¸·Î½á ÀÛ¾÷À» ¿¹¾àÇÏ°í ÀÖ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$at -l ¦¢ ¦¢686010600.a at Sat Sep 7 15:30:03 1991 ¦¢ ¦¢686013999.a at Fri Sep 20 16:00:00 1991 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ at ¸í·É¾î·Î µî·ÏµÈ ¿¹¾àµÈ ÀÛ¾÷µéÀ» È®ÀÎÅ° À§ÇØ -l ¿É¼ÇÀ» »ç¿ëÇÏ´Â °ÍÀ» º¸¿©ÁÖ°í ÀÖ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$at -r 686013999.a ¦¢ ¦¢$at -l ¦¢ ¦¢686010600.a at Sat Sep 7 15:30:03 1991 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ -r ¿É¼ÇÀ» »ç¿ëÇÏ¿© ¿¹¾àµÈ ÀÛ¾÷À» »èÁ¦ÇÏ´Â ¿¹¸¦ º¸¿©ÁÖ°í ÀÖ´Ù. 3. batch ¸í·É¾î batch ½Ã½ºÅÛ »ç¿ë·®ÀÌ ÀûÀ»¶§ ½ÇÇàÀ» ÇϱâÀ§ÇØ ¸í·É¾îµéÀ»(ÀÛ¾÷À») ¿¹¾àÇÑ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ batch ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÀÌ ¸í·ÉÀ» »ç¿ëÇϱâ À§Çؼ­´Â »ç¿ëÀÚ°¡ at.allow È­ÀÏ¿¡ ¹Ýµå½Ã µî·ÏµÇ¾î ÀÖ¾î¾ß ÇÑ´Ù. batch ¸í·É¾î´Â Ç¥ÁØ ÀÔ·Â ¶Ç´Â ÀÔ·Â ¹æÇ⺯°æ(Redirection)µÈ È­ÀÏ·Î ºÎÅÍ ¸í·É¾îµéÀ» ¹Þ¾ÆµéÀδÙ. ¸í·É¾îÀÇ Ãâ·ÂÀº Ãâ·Â ¹æÇ⺯°æÀÌ ÇàÇØÁø °æ¿ì¸¦ Á¦¿ÜÇÏ°í´Â »ç¿ëÀÚ¿¡°Ô ¸ÞÀÏ·Î º¸³»Áø´Ù. ¸í·É¾î°¡ ½ÇÇàµÇ¸é .b¶ó´Â È®ÀåÀÚ°¡ ºÙÀº ÀÛ¾÷ ½Äº°ÀÚ¸¦ Ç¥½ÃÇØÁØ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$batch ¦¢ ¦¢sort -o long_file.srt long_file | pr | lp ¦¢ ¦¢<^d> ¦¢ ¦¢warning: commands wil be executed using /usr/bin/sh ¦¢ ¦¢job 685986443.b at Fri Sep 6 11:47:23 1991 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÀÌ ¿¹´Â Ç¥ÁØ ÀÔ·ÂÀ» ÅëÇØ batch ¸í·É¾î¸¦ ½ÇÇàÇÏ´Â °ÍÀ» º¸¿©ÁÖ°í ÀÖ´Ù. Ãâ·ÂÀº ÆÄÀÌÇÁ¸¦ ÅëÇØ Ãâ·Â ¹æÇ⺯°æµÈ´Ù. batch ¸í·É¾î°¡ ½ÇÇàµÈÈÄ ÀÛ¾÷ ½Äº°ÀÚ°¡ µÇµ¹·ÁÁö´Â °ÍÀ» º¼¼ö ÀÖ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$cat job_file ¦¢ ¦¢sort -o long_file.srt long_file | pr | lp ¦¢ ¦¢$batch < job_file ¦¢ ¦¢warning: commands will be executed using /usr/bin/sh ¦¢ ¦¢job 685986237.b at Fri Sep 6 11:58:57 1991 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÀÌ ¿¹´Â batch ¸í·É¾î¿¡ ÀÇÇØ ½ÇÇàµÉ ¸í·É¾îµéÀ» »çÀü¿¡ ƯÁ¤ È­ÀÏ¿¡ ÀúÀåÇÑÈÄ batch ¸í·É¾î¿¡ ÀÔ·Â ¹æÇ⺯°æÀ» ÅëÇØ Á¦°øÇÏ´Â ¿¹¸¦ º¸¿©ÁÖ°í ÀÖ´Ù. --------------------------------------------------------------------------- ´ÙÀ½¿¡´Â ¿¹¾àµÈ ÀÛ¾÷µéÀÇ Á¦¾î ¸í·É¿¡ ´ëÇØ ¼³¸íÇÕ´Ï´Ù. --------------------------------------------------------------------------- #64 À¯´Ï½Ã½º (adunis2 ) ¿¹¾àµÈ ÀÛ¾÷ÀÇ È®ÀÎ¹× »èÁ¦: atq,atrm 03/11 21:22 140 line ¿¹¾à(Scheduling)µÈ ÀÛ¾÷ÀÇ È®ÀÎ¹× »èÁ¦: atq,atrm --------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. --------------------------------------------------------------------- 1. ¿¹¾à(Scheduling)µÈ ÀÛ¾÷ÀÇ È®ÀÎ atq µî·ÏµÇ¾î ÀÖ´Â ¿¹¾àµÈ ÀÛ¾÷µéÀ» È®ÀÎÇÑ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ atq [-option] [user(s)] ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ atq ¸í·É¾î´Â at -l ¸í·É°ú °°ÀÌ »ç¿ëÀÚ°¡ µî·ÏÇÑ at ÀÛ¾÷À» È®ÀÎÇÒ ¼ö ÀÖ´Ù. ±×·¯³ª atq ¸í·É¾îÀÇ Ãâ·ÂÀº at -l ¸í·É¾îÀÇ Ãâ·Âº¸´Ù ´õ¿í ÀÚ¼¼ÇÑ Á¤º¸¸¦ Á¦°øÇÑ´Ù. atq ¸í·É¾î¿¡ ¿É¼ÇÀ» ÁöÁ¤ÇÏÁö ¾ÊÀ» °æ¿ì¿¡´Â µî·ÏµÈ ½ÇÇà½Ã°£À» ±âÁØÀ¸·Î Á¤·ÄµÇ¾î Ãâ·ÂµÈ´Ù. ¸¸¾à superuser°¡ atq ¸í·É¾î¸¦ ½ÇÇàÇϸé, ½Ã½ºÅÛ¿¡ µî·ÏµÈ ¸ðµç ÀÛ¾÷ÀÌ Ç¥½ÃµÈ´Ù. ¶ÇÇÑ superuser´Â atq ¸í·É¾î¿¡ »ç¿ëÀÚ ½Äº°¸íÀ» ÁöÁ¤ÇÔÀ¸·Î½á ƯÁ¤ »ç¿ëÀÚ°¡ µî·ÏÇÑ ÀÛ¾÷µé¸¸À» Ç¥½ÃÇÒ¼ö ÀÖ´Ù. ( ¿É¼Ç ) -c µî·Ï ¼ø¼­¿¡ µû¶ó ¿¹¾àµÈ ÀÛ¾÷µéÀ» Ç¥½ÃÇÑ´Ù. -n µî·ÏµÈ ÀÛ¾÷ÀÇ °¹¼ö¸¸À» Ç¥½ÃÇÑ´Ù. ( ¿¹Á¦ ) ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$at -l ¦¢ ¦¢685996200.a Fri Sep 6 14:30:00 1991 ¦¢ ¦¢685992660.a Fri Sep 6 13:31:00 1991 ¦¢ ¦¢685989060.a Fri Sep 6 12:31:00 1991 ¦¢ ¦¢685987320.a Fri Sep 6 12:02:00 1991 ¦¢ ¦¢$atq ¦¢ ¦¢Rank Execution Date Owner Job Queue Job Name ¦¢ ¦¢1st Sep 6, 1991 12:02 userb 685987320.a a stdin ¦¢ ¦¢2nd Sep 6, 1991 12:31 userb 685989060.a a stdin ¦¢ ¦¢3rd Sep 6, 1991 13:31 userb 685992660.a a stdin ¦¢ ¦¢4th Sep 6, 1991 14:30 userb 685996200.a a stdin ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÀÌ ¿¹´Â userb°¡ ¿¹¾àÇÑ ÀÛ¾÷À» Ç¥½ÃÇϱâ À§ÇØ at -l °ú atq ¸í·É¾î¸¦ ½ÇÇàÇÏ¿© °á°ú¸¦ º¸¿©ÁÖ°í ÀÖ´Ù. À̶§ atq ¸í·É¾îÀÇ ½ÇÇà °á°ú´Â ½ÇÇà ¿¹Á¤½Ã°£À» ±âÁØÀ¸·Î Á¤·ÄµÇ¾î Ãâ·ÂµÇ´Â °ÍÀ» È®ÀÎÇÒ ¼ö ÀÖ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$atq -c ¦¢ ¦¢Rank Execution Date Owner Job Queue Job Name ¦¢ ¦¢1st Sep 6, 1991 14:30 userb 685996200.a a stdin ¦¢ ¦¢2nd Sep 6, 1991 13:31 userb 685992660.a a stdin ¦¢ ¦¢3rd Sep 6, 1991 12:31 userb 685989060.a a stdin ¦¢ ¦¢4th Sep 6, 1991 12:02 userb 685987320.a a stdin ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÀÌ ¿¹´Â -c ¿É¼ÇÀ» ÅëÇØ ½ÇÇà ¿¹Á¤½Ã°£ÀÌ ¾Æ´Ñ, µî·Ï ½Ã°£À» ±âÁØÀ¸·Î ÀÛ¾÷À» Ç¥½ÃÇϵµ·Ï ÁöÁ¤ÇÏ°í ÀÖ´Ù. ¦£¦¡¦¡¦¡¦¡¦¤ ¦¢$atq -n ¦¢ ÀÌ ¿¹´Â -n ¿É¼ÇÀ» »ç¿ëÇÏ¿© »ç¿ëÀÚ°¡ µî·ÏÇÑ ÀÛ¾÷ÀÇ °¹¼ö¸¦ ¦¢4 ¦¢ Ç¥½ÃÇÏ°í ÀÖ´Ù. ¦¦¦¡¦¡¦¡¦¡¦¥ 2. ¿¹¾àµÈ ÀÛ¾÷ÀÇ »èÁ¦ atrm µî·ÏµÇ¾î ÀÖ´Â ¿¹¾àÀÛ¾÷À» »èÁ¦ÇÑ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ atrm [-option] [job_id(s)] [user] ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ atrm ¸í·É¾î´Â at -r¸í·É°ú °°ÀÌ »ç¿ëÀÚ°¡ µî·ÏÇÑ ¿¹¾à ÀÛ¾÷À» »èÁ¦ÇÑ´Ù. atrm ¸í·É¾î´Â at -r ¸í·Éº¸´Ù ¿¹¾àµÈ ÀÛ¾÷À» »èÁ¦Çϴµ¥ À־ ´õ¿í ¸¹Àº Á¦¾î ¹æ½ÄÀ» Á¦°øÇÑ´Ù. superuser(°ü¸®ÀÚ)´Â ¾î¶² »ç¿ëÀÚ°¡ µî·ÏÇÑ ÀÛ¾÷µéÀ̶ó Çصµ »èÁ¦ÇÒ¼ö ÀÖ´Ù. ( ¿É¼Ç ) -a ÇöÀç atrm ¸í·É¾î¸¦ ½ÇÇàÇÏ°í ÀÖ´Â »ç¿ëÀÚ°¡ µî·ÏÇÑ ¸ðµç ÀÛ¾÷µéÀ» »èÁ¦ÇÑ´Ù. ÀÌ °æ¿ì »èÁ¦¸¦ È®ÀνÃÅ°±â À§ÇÑ ¸Þ¼¼ÁöµéÀ» Ç¥½ÃÇÑ´Ù. -i »èÁ¦ ¿©ºÎ¸¦ ¹¯´Â ÇÁ·ÒÇÁÆ®¸¦ Ç¥½ÃÇÏ´Â Çü½ÄÀÇ ´ëÈ­½Ä »èÁ¦¸¦ ÇÑ´Ù. -f »èÁ¦ ¿Ï·á ¸Þ¼¼Áö¸¦ Ç¥½ÃÇÏÁö ¾Ê´Â´Ù. ( ¿¹Á¦ ) ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$atq ¦¢ ¦¢Rank Execution Date Owner Job Queue Job Name ¦¢ ¦¢1st Sep 6, 1991 12:02 userb 685987320.a a stdin ¦¢ ¦¢2nd Sep 6, 1991 12:31 userb 685989060.a a stdin ¦¢ ¦¢3rd Sep 6, 1991 13:31 userb 685992660.a a stdin ¦¢ ¦¢4th Sep 6, 1991 14:30 userb 685996200.a a stdin ¦¢ ¦¢$atrm 685996200.a ¦¢ ¦¢685992600.a:removed ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÀÌ ¿¹Á¦´Â at ¸í·É¾î¸¦ ÅëÇØ ¿¹¾àµÈ ÀÛ¾÷µéÀ» Ç¥½ÃÇÑ ÈÄ, atrm ¸í·É¾î¸¦ ÅëÇØ ÇϳªÀÇ ÀÛ¾÷À» »èÁ¦ÇÏ´Â °úÁ¤À» º¸¿©ÁØ´Ù. ¿©±â¼­ ÀÛ¾÷ »èÁ¦ÈÄ »èÁ¦ ¸Þ¼¼Áö°¡ Ç¥½ÃµÇ´Â °ÍÀ» ÁÖ¸ñÇϱ⠹ٶõ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$atrm -f 686000460.a ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ -f ¿É¼ÇÀ» »ç¿ëÇÏ¿© »èÁ¦ ¿Ï·á ¸Þ¼¼Áö¸¦ Ç¥½ÃÇÏÁö ¾Êµµ·ÏÇÑ ¿¹Á¦ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$atrm -ia ¦¢ ¦¢685992660.a: remove it? n ¦¢ ¦¢685989060.a: remove it? n ¦¢ ¦¢685987320.a: remove it? n ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ -i ¿É¼ÇÀ» »ç¿ëÇÏ¿© ´ëÈ­½ÄÀ¸·Î µî·ÏµÈ( »ç¿ëÀÚ°¡ µî·ÏÇÑ ¸ðµç ÀÛ¾÷À» ´ë»óÀ¸·Î,-a ¿É¼Ç¶§¹®¿¡,) ÀÛ¾÷À» »èÁ¦ÇÏ´Â °úÁ¤À» º¸¿©ÁÖ´Â ¿¹ÀÌ´Ù. ±×·±µ¥ ÀÌ ¿¹¿¡¼­´Â ´ÙÀ½ ¿¹Á¦¸¦ À§ÇÏ¿© »èÁ¦ ¿©ºÎ¸¦ ¹¯´Â ÇÁ·ÒÇÁÆ®¿¡ n¸¦ ÁöÁ¤ÇØ »èÁ¦¸¦ Ãë¼ÒÇÏ°í ÀÖ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$atrm -a ¦¢ ¦¢685992660.a: removed ¦¢ ¦¢685989060.a: removed ¦¢ ¦¢685987320.a: removed ¦¢ ¦¢$atq ¦¢ ¦¢no files in queue. ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ -a ¿É¼ÇÀ» ÅëÇØ ¸ðµç ÀÛ¾÷À» ÇѲ¨¹ø¿¡ »èÁ¦ÇÏ´Â °ÍÀ» º¸¿©ÁÖ°í ÀÖ´Ù. ¸í·É ½ÇÇàÈÄ atq ¸í·ÉÀ» ÅëÇØ ÀÛ¾÷ÀÇ Á¸Àç ¿©ºÎ¸¦ È®°í ÀÖ´Ù. --------------------------------------------------------------------------- ´ÙÀ½ °úÁ¤ºÎÅÍ´Â ½©(shell)ÀÇ ÀÏ¹Ý °³¿ä¿¡ ´ëÇØ ¼³¸íÇÕ´Ï´Ù. --------------------------------------------------------------------------- #65 À¯´Ï½Ã½º (adunis2 ) ShellÀÇ ÀÏ¹Ý °³¿ä¹× Á¾·ùº° Ư¼º 03/12 21:56 116 line À¯´Ð½º ½©(Shell)ÀÇ ÀÏ¹Ý °³¿ä --------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. --------------------------------------------------------------------- 1. À¯´Ð½º ½©(Shell)ÀÇ ÀÏ¹Ý °³¿ä ½©(Shell)Àº »ç¿ëÀÚ¿Í ÄÄÇ»ÅÍÀÇ ÀÚ¿øµé°ú »óÈ£ ÀÛ¿ëÇÏ´Â °ÍÀ» °¡´ÉÇÏ°Ô Çϱâ À§ÇÑ ÇÁ·Î±×·¥ÀÌ´Ù. ¸í·É¾î ¹ø¿ª±â(Interpreter)·Î¼­ ½©Àº »ç¿ëÀÚ¿Í ½Ã½ºÅÛ°£ÀÇ ±³·® ¿ªÇÒÀ» ¼öÇàÇÑ´Ù. »ç¿ëÀÚ´Â ½©¿¡ ¸í·É¾îµéÀ» ÀÔ·ÂÇÏ°í, ½©Àº ¿î¿µÃ¼Á¦°¡ ½ÇÇàÀ» ÇÒ¼ö ÀÖµµ·Ï ¸í·É¾îµéÀ» ¹ø¿ªÇÑ´Ù. ½©Àº À§¿Í °°Àº ±â´É¿Ü¿¡ ´ÙÀ½°ú °°Àº ±â´Éµµ ½ÇÇàÇÑ´Ù. ¸î°¡Áö ±â´ÉÀº ÀÌÀü¿¡ ¼³¸íµÇ¾úÀ¸¸ç, À̵éÀ» ¿ä¾àÇÏ¸é ´ÙÀ½°ú °°´Ù. . ÇÁ·Î±×·¥ ½ÇÇà À¯´Ð½º ¸í·É¾îµéÀº command [-option] [argument(s)]¿Í °°Àº Çü½ÄÀ¸·Î º¸ÅëÀº $ ÀÎ ÇÁ·ÒÇÁÆ®»ó¿¡ ÀԷµȴÙ. ½©Àº ¸í·É¾î°¡ ±â¼úµÇ¾î ÀÖ´Â ¸í·É¾î ¶óÀÎÀ» ºÐ¼®ÇÏ°í, ±×µéÀ» Àνİ¡´ÉÇÑ ±¸¼º¿ä¼Ò·Î ºÐÇØÇÏ°í, ¸í·É¾î ÇÁ·Î±×·¥¿¡ À¯È¿ÇÑ ¿É¼Ç°ú ÀÎÀÚµéÀ» Àü´ÞÇÑ´Ù. ÀÌÈÄ ½©Àº ÇÁ·Î±×·¥À» ½ÇÇàÇϱâ À§ÇÏ¿© ÇÁ·Î¼¼½º¸¦ ºÐ±âÇÏ°í, ¸í·É¾î ÇÁ·Î±×·¥ÀÌ Á¾·áÇÒ¶§ ±îÁö ÀÚ½ÅÀº ÈÞ¸é»óÅÂ(sleep)·Î µé¾î°£´Ù. . È­ÀÏ¸í ´ëÄ¡ ½©Àº ÇÁ·Î±×·¥ÀÌ ½ÇÇàµÇ±â Àü¿¡ È­ÀÏ¸í ´ëÄ¡¿¡ »ç¿ëµÇ´Â Ư¼ö¹®ÀÚµéÀ» ¹ø¿ªÇÏ°í, ½ÇÁ¦ È­ÀϸíÀ¸·Î ´ëÄ¡ÇÑ´Ù. . ÀÔÃâ·Â ¹æÇâÀüȯ(Redirection) ¸í·É¾î ¶óÀο¡ ÁöÁ¤µÈ ÀԷ°ú Ãâ·Â ¹æÇâÀüȯÀº ¸í·É¾î ½ÇÇàÀü¿¡ 󸮵ȴÙ. . ÆÄÀÌÇÁ¶óÀÎ(Pipeline) ó¸® ÆÄÀÌÇÁ°¡ ¸í·É¾î ¶óÀο¡ ÁöÁ¤µÇ¾ú´Ù¸é, ½©Àº ÆÄÀÌÇÁ»ó¿¡ ù¹ø° ÁöÁ¤µÈ ¸í·É¾îÀÇ Ç¥ÁØ Ãâ·ÂÀ», ¸í·É¾î ¶óÀÎÀÌ ½ÇÇàµÇ±â Àü¿¡ ´ÙÀ½ ¸í·É¾îÀÇ Ç¥ÁØ ÀÔ·ÂÀ¸·Î ¿¬°á½ÃŲ´Ù. . ȯ°æ Á¦¾î ½©Àº »ç¿ëÀÚ È¯°æÀ» ±¸¼ºÇϱâ À§ÇÑ À¯¿¬¼ºÀ» Á¦°øÇÑ´Ù. ÀÌ·¯ÇÑ È¯°æ Á¦¾î ±â´É¿¡´Â ¸í·É¾î °Ë»ö °æ·Î, °³°³ÀÇ È¯°æ º¯¼öµéÀÇ Á¤ÀÇ ±×¸®°í ½© ÇÁ·ÒÇÁÆ®ÀÇ ÀçÁ¤ÀǵîÀ» Æ÷ÇÔÇÑ´Ù. À̵鿡 ´ëÇÑ ÀÚ¼¼ÇÑ ¼³¸íÀº Â÷ÈÄ¿¡ ´Ù½Ã ¼³¸íµÈ´Ù. ½©Àº ÇÁ·Î±×·¥ ¾ð¾î·Îµµ »ç¿ëµÉ ¼ö ÀÖ´Ù. »ç¿ëÀÚ´Â »õ·Î¿î ÇÁ·Î±×·¥À» »ý¼ºÇϱâ À§ÇÏ¿© ½© ¸í·É¾îµéÀ» È­Àϼӿ¡ ³ª¿­ÇÒ ¼ö ÀÖ´Ù. ÀÌ·¯ÇÑ ÇÁ·Î±×·¥µéÀº ½© ÇÁ·Î±×·¥ ¶Ç´Â ½© ½ºÅ©¸³Æ®(Script)¶ó ºÒ¸®¿î´Ù. ½© ÇÁ·Î±×·¥À» ÀÛ¼ºÇϱâ À§ÇØ »ç¿ëÇÏ´Â ½©ÀÇ Á¦¾î¹®µéÀº ÀÌÈÄ Çϳª¾¿ ´Ù½Ã ¼³¸íµÈ´Ù. ¶ÇÇÑ ½© ÇÁ·Î±×·¥À» ÀÛ¼ºÇϱâ À§ÇÑ ÀÚ¼¼ÇÑ »çÇ×Àº "À¯´Ð½º È°¿ë" °­ÀÇ°¡ ³¡³­ ÈÄ °è¼ÓµÉ ½© ÇÁ·Î±×·¡¹Ö °­ÀǶ§ ÀÚ¼¼È÷ ¼³¸íµÈ´Ù. 2. À¯´Ð½º ½©(Shell)ÀÇ Á¾·ù Åë»ó 4°¡ÁöÀÇ À¯´Ð½º ½© ÇÁ·Î±×·¥ÀÌ À¯´Ð½º¿¡¼­ »ç¿ë °¡´ÉÇÏ´Ù. ½Ã½ºÅÛ °ü¸®ÀÚ´Â ·Î±×Àνà »ç¿ëÀÚ°¡ óÀ½ »ç¿ëÇÒ ½©À» /etc/passwd È­ÀÏ¿¡ Á¤ÀÇÇÑ´Ù. ¸¸¾à ÀÌ È­ÀÏ¿¡ ½©À» ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é, »ç¿ëÀÚÀÇ ±âº» ½©Àº Bourne Shell·Î ÁöÁ¤µÈ´Ù. À̸¦ Default ShellÀ̶ó ÇÑ´Ù. ¾Æ¹«¸® »ç¿ëÀÚ°¡ ÇÊ¿ä¿¡ ÀÇÇØ ´Ù¸¥ ½©À» »ç¿ëÇÑ´Ù ÇÏ´õ¶óµµ, ¿ÀÁ÷ ÇѽËÁ¡¿¡ ÇϳªÀÇ ½©¸¸ÀÌ »ç¿ëµÇ¾î Áø´Ù. ´ÙÀ½Àº À¯´Ð½º°¡ Á¦°øÇÏ´Â 4°¡Áö ±âº» ½©¿¡ ´ëÇÑ ¼³¸íÀÌ´Ù. . Bourne Shell Bourne ShellÀº 1975³â AT&T Bell ¿¬±¸¼ÒÀÇ Steve Bourne¿¡ ÀÇÇØ °³¹ßµÇ¾ú´Ù. ÀÌ ½©Àº ¸ðµç ¹öÀüÀÇ À¯´Ð½º ¿î¿µÃ¼Á¦¿¡ Æ÷ÇԵǾî ÀÖ°í, °¡Àå ³Î¸® »ç¿ëµÇ¾îÁö´Â ½©À̱⵵ ÇÏ´Ù. Bourne ShellÀº ´Ù¾çÇÏ°í °­·ÂÇÑ ÇÁ·Î±×·¡¹Ö µµ±¸µéÀ» Á¦°øÇÑ´Ù. ( Bourne Shell¿¡¼­ Á¦°øÇÏ´Â ÇÁ·Î±×·¡¹Ö µµ±¸µéÀº ÀÌÈÄ ´Ù½Ã ¼³¸íµÈ´Ù.) »ç¿ëÀÚ°¡ ¼öÇàÇÏ´Â ÀÛ¾÷À» Á¦ÇÑÇϱâ À§ÇØ ½Ã½ºÅÛ °ü¸®ÀÚ¿¡ ÀÇÇØ ÇÒ´çµÉ ¼ö ÀÖ´Â, Bourne ShellÀÇ º¯ÇüÀ¸·Î Restricted Shell(Á¦Çѽ©:rsh) À̶ó´Â ½©ÀÌ ÀÖ´Ù. Restricted ShellÀº µð·ºÅ丮ÀÇ º¯°æ, ¸í·É¾î °Ë»ö¿¡ ÀÌ¿ëµÇ´Â PATH º¯¼öÀÇ °ªÀÇ º¯°æ, /(root)¸¦ Æ÷ÇÔÇÏ°í ÀÖ´Â ¸í·É¾î À̸§ ¶Ç´Â °æ·Î ÁöÁ¤, Ãâ·Â ¹æÇ⺯°æµîÀÇ ±â´ÉÀ» »ç¿ëÀÚ¿¡°Ô ±ÝÁöÇÑ´Ù. ÀÌ ½©Àº Àü¹ÝÀûÀÎ Á¦ÇÑ ±â´ÉÀº Á¦°øÇÏÁö ¾Ê´Â´Ù. ¶ÇÇÑ »ç¿ëÀÚ°¡ ·Î±×ÀÎÀ» ÇßÀ»¶§ ÅؽºÆ® ÆíÁý±â °°Àº ƯÁ¤ÇÑ ÇÁ·Î±×·¥ÀÌ ¼öÇàµÇµµ·Ï ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù. ÀÌ °æ¿ì »ç¿ëÀÚ´Â ÁöÁ¤µÈ ÇÁ·Î±×·¥¸¸À» »ç¿ëÇÒ ¼ö ÀÖµµ·Ï Á¦ÇѵǸç, ÇÁ·Î±×·¥ÀÌ Á¾·áµÇ¸é »ç¿ëÀÚ´Â logout µÇ¾îÁø´Ù. . Bourne Shell with Job Control(jsh) ±Ùº»ÀûÀ¸·Î ÀÌ ½©ÀÇ ±â´ÉÀº C Shell°ú Korn Shell°ú °°Àº ÀÛ¾÷ÀÇ ½ÇÇàÀ» °ü¸®Çϱâ À§ÇÑ ÀÛ¾÷ Á¦¾î ȯ°æÀ» Á¦°øÇÑ´Ù´Â Á¡À» Á¦¿ÜÇÏ°ï Bourne Shell°ú µ¿ÀÏÇÏ´Ù. . C Shell(csh) C ShellÀº Ä̸®Æ÷´Ï¾Æ ¹öŬ¸® ´ëÇÐÀÇ Bill Joy¿¡ ÀÇÇØ °³¹ßµÇ¾ú´Ù. ÀÌ ½©Àº ¹öŬ¸®¿Í Á¦´Ð½º(XENIX: PC ¹öÀüÀÇ À¯´Ð½º) ȯ°æ¿¡¼­ °¡Àå ÀϹÝÀûÀ¸·Î »ç¿ëµÇ´Â ½©ÀÌ´Ù. ÀÌ ½©Àº ½ÇÇàµÈ ¸í·É¾î º¸Á¸ ±â´É(Command History Mechanism), ¸í·É¾î º°Äª(Command Alias), ÀÛ¾÷ Á¦¾î(Job Control) ±â´ÉµéÀ» Á¦°øÇÑ´Ù. ±×·¯³ª Bourne Shell°ú ȣȯµÇÁö ¾Ê´Â´Ù´Â ´ÜÁ¡ÀÌ ÀÖ´Ù. C Shell ȯ°æ¿¡¼­ ÀÛ¼ºµÈ ÇÁ·Î±×·¥Àº Bourne Shell ȯ°æ¿¡¼­ ¼öÇàµÇÁö ¾Ê´Â´Ù. C Shell ProgramÀº C ¾ð¾î·Î ÀÛ¼ºµÈ ÇÁ·Î±×·¥°ú À¯»çÇÏ¿© ±× ¸íĪÀÌ C Shell·Î ºÒ¸®¿î´Ù. . Korn Shell (ksh) ÀÌ ½©Àº AT&T Bell ¿¬±¸¼ÒÀÇ David Korn¿¡ ÀÇÇØ °³¹ßµÇ¾ú´Ù. ÀÌ ½©Àº Bourne °ú C ShellÀÇ ÀåÁ¡µé°ú ¸¹Àº »õ·Î¿î ½Å±â´ÉµéÀ» Á¦°øÇÑ´Ù. Bourne Shell¿¡¼­ ÀÛ¼ºµÈ ´ëºÎºÐÀÇ ½© ÇÁ·Î±×·¥µéÀº Korn Shell ȯ°æ¿¡¼­ »ç¿ëµÉ ¼ö ÀÖ´Ù. ±× °á°ú·Î Korn ShellÀº ºü¸£°Ô È®»êµÇ°í ÀÖ´Ù. Korn ShellÀÇ Æ¯ÃâÇÏ°í À¯¿ëÇÑ ±â´ÉµéÀº ÀÌÈÄ ÀÚ¼¼È÷ ¼³¸íµÈ´Ù. --------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­´Â Korn ShellÀÇ ±â´É¹× Ư¼º¿¡ ´ëÇØ ¼³¸íÇÕ´Ï´Ù. --------------------------------------------------------------------------- #66 À¯´Ï½Ã½º (adunis2 ) Korn ShellÀÇ Æ¯¼º¹× ¼³Ä¡ 03/14 22:33 97 line Korn ShellÀÇ ±â´É --------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. --------------------------------------------------------------------- 1. Korn ShellÀÇ ±â´É Korn ShellÀº Bourne Shell°ú C ShellÀÇ À¯¿ëÇÑ ±â´ÉµéÀ» Æ÷ÇÔÇÏ°í ÀÖÀ¸¸ç, ´Ù¸¥ ½©°ú ´ëºñµÇ´Â Ư¡ÀûÀÎ ±â´ÉµéÀ» °®°í ÀÖ´Ù. Bourne Shell¿¡¼­ ÀÛ¼ºÇÑ ´ëºÎºÐÀÇ ½© ÇÁ·Î±×·¥Àº ¼öÁ¤¾øÀÌ Korn Shell¿¡¼­ ±×´ë·Î ½ÇÇàÇÒ ¼ö ÀÖ´Ù. ±×·¸´Ù°í SVR4.0 ¹öÀüÀÇ À¯´Ð½º ¿î¿µÃ¼Á¦¿¡¼­ Default Shell·Î Korn ShellÀ» »ç¿ëÇÏ´Â °ÍÀº ¾Æ´Ï°í, Bourne ShellÀ» ±×´ë·Î Default Shell·Î »ç¿ëÇÏ°í ÀÖ´Ù. Bourne Shell°ú ¸¶Âù°¡Áö·Î Korn ShellÀº ±âµ¿µÉ¶§ ȯ°æ ¼³Á¤ ¿ä¼ÒµéÀÌ ¼±¾ðµÇ¾î ÀÖ´Â .profileÀ» Àо ÀÛ¾÷ ȯ°æÀ» ±¸ÃàÇÑ´Ù. ¶ÇÇÑ Korn ShellÀº »ç¿ëÀÚ¿¡ ÀÇÇØ »ý¼ºµÈ ȯ°æ Á¦¾î È­Àϵ鵵 ȯ°æ ±¸ÃàÀ» Çϴµ¥ ÂüÁ¶Çϴµ¥, »ç¿ëÀÚ°¡ »ý¼ºÇÑ È¯°æ Á¦¾î È­ÀϵéÀº »ç¿ëÀÚÀÇ home directory¼Ó¿¡ ÀÖ´Â .profile¼Ó¿¡ ENV ¶ó´Â º¯¼ö¿¡ ÁöÁ¤Çϸé Korn Shell¿¡ ÀÇÇØ Ã³¸®µÈ´Ù. Korn ShellÀÇ À¯¿ëÇÑ ±â´ÉÀº ´ÙÀ½°ú °°À¸¸ç, ÀÌÈÄ ¸îÂ÷·ÊÀÇ ¿¬¼ÓµÈ °­ÀǸ¦ ÅëÇØ ÀÚ¼¼È÷ ¼³¸íÇÑ´Ù. ¶ÇÇÑ Korn ShellÀÇ °íÀ¯ÇÑ ½©º¯¼öµéµµ ÀÌÈÄ ¼Ò°³ÇÑ´Ù. Command History ±â´É Korn ShellÀº ¸í·É¾î º¸Á¸ ±â´ÉÀ» Áö¿øÇϱâ À§ÇØ ½ÇÇàµÇ¾ú´ø ¸í·É¾îµéÀ» º¸Á¸Çϱâ À§ÇÑ È­ÀÏ(À̸¦ History È­ÀÏÀ̶ó ÇÑ´Ù.)À» À¯Áö °ü¸®ÇÑ´Ù. ÀÌ È­ÀÏÀº ¼öÇàµÇ¾ú´ø ¸í·É¾î¸¦ ÁöÁ¤ÇÑ ÆíÁý±â¸¦ ÀÌ¿ëÇÏ¿© ¼öÁ¤ÇÏ¿© Àç¼öÇàÇÒ¶§ ¶Ç´Â Á÷Àü¿¡ ¼öÇàÇÑ ¸í·É¾î¸¦ Àç½ÇÇàÇÏ°íÀÚ ÇÒ¶§ ÂüÁ¶µÈ´Ù. Command alias ±â´É ÀÚÁÖ »ç¿ëµÇ´Â ¸í·É¾î ¶óÀÎÀº alias¶ó ºÒ¸®¿ì´Â º°ÄªÀ» ºÎ¿©ÇÔÀ¸·Î½á, ±ä ¸í·É¾î ¶óÀÎÀ» »ç¿ëÇÒ¶§¸¶´Ù ÀÔ·ÂÇØ¾ß ÇÏ´Â ¹ø°Å·Î¿òÀ» ¾ø¾Ö°í ½±°Ô ½ÇÇàÇÒ ¼ö ÀÖ´Ù. Job Control ±â´É Korn ShellÀº Foreground¿Í Background »çÀÌÀÇ ÀÛ¾÷ÀÇ À̵¿, ÀÛ¾÷ÀÇ ÁßÁö ¶Ç´Â ÁßÁöµÈ ÀÛ¾÷ÀÇ °è¼Ó ¼öÇà°ú °°Àº ÀÛ¾÷ Á¦¾î ±â´ÉµéÀ» Á¦°øÇÑ´Ù. Korn Shell Option°ú Variables(½© º¯¼ö) »ç¿ëÀÚ°¡ ÀÚ½ÅÀÇ ÀÛ¾÷ ȯ°æÀ» Á¦¾îÇÒ¼ö ÀÖµµ·Ï »ç¿ëÀÚ È¯°æÀ» ¼öÁ¤Çϱâ À§ÇÑ Korn Shell Option°ú VariableµéÀ» Á¦°øÇÑ´Ù. *** Restricted Shell (rksh) Korn Shell¿¡¼­µµ rsh (Restricted Bourne shell)°ú À¯»çÇÑ rksh(Restricted Korn Shell)À» Á¦°øÇÑ´Ù. 2. Korn ShellÀÇ ¼³Ä¡ Korn ShellÀ» ¼³Ä¡ÇÒ¶§´Â º¸ÅëÀº /etc/passwd È­Àϳ»¿¡ Korn ShellÀ» »ç¿ëÀÚÀÇ ·Î±×ÀÎ ½©·Î ¼±¾ðÇÏ´Â ¹æ½ÄÀ» »ç¿ëÇϳª, SHELL º¯¼ö¶Ç´Â ksh ¸í·É¾î¸¦ ÅëÇؼ­µµ Korn ShellÀ» ¼³Ä¡ÇÒ ¼ö ÀÖ´Ù. Korn ShellÀÌ ±âµ¿µÉ¶§, Korn ShellÀº ÀÛ¾÷ ȯ°æ 󸮸¦ À§ÇØ ½Ã½ºÅÛ Â÷¿øÀÇ È¯°æ ¼³Á¤ È­ÀÏÀÎ /etc/profile°ú »ç¿ëÀÚ Â÷¿øÀÇ È¯°æ ¼³Á¤ È­ÀÏÀÎ .profileÀ» Çص¶ÇÏ°í, Korn Shell ȯ°æÀ» ±¸¼ºÀ» À§ÇØ ´Ù¸¥ ¼³Á¤ Á¤º¸¸¦ °¡Áö°í ÀÖ´Â È­ÀÏÀ» ÁöÁ¤ÇÏ°í ÀÖ´Â ENV¶ó ºÒ¸®¿ì´Â º¯¼ö¸¦ °Ë»öÇÑ´Ù. ÀÌ È­Àϵ鿣 »ç¿ëÀÚÀÇ Korn Shell ȯ°æÀ» ¼³Á¤Çϱâ À§ÇÑ Korn Shell ¸í·É¾îµéÀ» Ãß°¡ÇÒ ¼ö ÀÖ´Ù. Command History ±â´É Korn ShellÀÌ ±âµ¿µÈ ÀÌÈÄÀÇ ½ÇÇàµÇ´Â °¢°¢ÀÇ ¸í·É¾î ¶óÀÎÀº history È­ÀÏÀ̶ó ºÒ¸®¿ì´Â È­ÀÏ¿¡ ÀúÀåµÈ´Ù. ÀÌÈÄ ÀúÀåµÈ ¸í·É¾îµéÀº ¸í·É¾î ¶óÀÎÀÇ ¼öÁ¤ ¶Ç´Â ¸í·É¾î ¶óÀÎ Àç½ÇÇàÀ» À§ÇØ ´Ù½Ã ÂüÁ¶ÇÒ ¼ö ÀÖ°Ô µÈ´Ù. Line Edit Mode (¸í·É¾î ¶óÀÎ ÆíÁý ¸ðµå) Line Edit Mode¸¦ »ç¿ëÇϱâ À§Çؼ­´Â ´ÙÀ½Áß ÇϳªÀÇ ÀÛ¾÷À» ½ÇÇàÇؾ߸¸ ÇÑ´Ù. . EDITOR¶ó´Â ½© º¯¼ö¿¡ Line Edit Mode¿¡¼­ »ç¿ëÇÒ ÆíÁý±â¸¦ ÁöÁ¤ÇÑ´Ù. ¿¹¸¦µé¸é Line Edit Mode¿¡¼­ »ç¿ëÇÒ ÆíÁý±â·Î vi¸¦ »ç¿ëÇϱâ À§Çؼ­ EDITOR=vi¶ó ÁöÁ¤ÇÑ´Ù. ÁÖÀÇÇÒ °ÍÀº =À» ÀüÈÄ¿¡ °ø¹éÀ» µÎÁö ¾Ê´Â´Ù. . VISUALÀ̶ó´Â ½© º¯¼ö¿¡ Line Edit Mode¿¡¼­ »ç¿ëÇÒ ÆíÁý±â¸¦ ÁöÁ¤ÇÑ´Ù. ¿¹¸¦µé¸é Line Edit Mode¿¡¼­ »ç¿ëÇÒ ÆíÁý±â·Î vi¸¦ »ç¿ëÇϱâ À§Çؼ­ VISUAL=vi¶ó ÁöÁ¤ÇÑ´Ù. VISUAL °ú EDITOR º¯¼ö°¡ ¸ðµÎ ÁöÁ¤µÈ °æ¿ì¿¡´Â VISUAL º¯¼ö°¡ ¿ì¼±µÈ´Ù. . set -o ¸í·É¿¡ »ç¿ëÇÒ ÆíÁý±â¸¦ ÁöÁ¤ÇÑ´Ù. ¿¹¸¦µé¸é, vi¸¦ ÆíÁý±â·Î ÁöÁ¤Çϱâ À§Çؼ­´Â set -o vi¶ó ÁöÁ¤ÇÑ´Ù. ÀÌ set ¸í·É¾î¸¦ ÅëÇØ ÁöÁ¤ÇÑ ÆíÁý±â°¡ VISUAL°ú EDITOR º¯¼öº¸´Ù ¿ì¼±µÈ´Ù. Korn ShellÀÌ ±âµ¿µÉ¶§ ÀÚµ¿ÀûÀ¸·Î »ç¿ëÇÒ ÆíÁý±â¸¦ ÁöÁ¤Çϵµ·Ï Çϱâ À§Çؼ­´Â »ç¿ëÀÚÀÇ .profileÀ̳ª ENV º¯¼ö¿¡ ÁöÁ¤µÈ È­ÀÏ¿¡ À§ÀÇ ¹æ½ÄÁß Çϳª¸¦ ÀÔ·ÂÇصдÙ. --------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­´Â Korn ShellÀÇ Command history ±â´É¿¡ ´ëÇØ ¼³¸íÇÕ´Ï´Ù. --------------------------------------------------------------------------- #67 À¯´Ï½Ã½º (adunis2 ) Korn ShellÀÇ Command History ±â´É 03/15 16:57 91 line Korn ShellÀÇ Command History ±â´É --------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. --------------------------------------------------------------------- 1. Command History ±â´É Korn Shell»ó¿¡¼­ ½ÇÇàµÇ¾ú´ø ¸í·É¾îµéÀº Korn Shell º¯¼öÀÎ HISTFILE¿¡ ¼±¾ðµÇ¾î ÀÖ´Â È­ÀÏ¿¡ ÀúÀåµÈ´Ù. ±×·¯³ª HISTFILE º¯¼ö¿¡ È­ÀÏÀÌ ¼±¾ðµÇ¾î ÀÖÁö ¾ÊÀ» °æ¿ì¿¡´Â »ç¿ëÀÚÀÇ Home Directory³»¿¡ À§Ä¡ÇÏ´Â .sh_history È­ÀÏ¿¡ ÀúÀåµÈ´Ù. »ç¿ëÀÚ´Â ·Î±×ÀÎÀ» ÇÑÈÄ¿¡ ÀÌ È­ÀÏ¿¡ ÀúÀåµÇ¾î ÀÖ´Â ¸í·É¾îµéÀ» »ç¿ëÇÏ¿© ÀÛ¾÷À» ½ÇÇàÇÒ ¼ö ÀÖ´Ù. ¶ÇÇÑ Korn ShellÀÇ º¯¼öÀÎ HISTSIZE´Â ¸í·É¾î ¶óÀÎ ¼öÁ¤¹× Àç½ÇÇàÀ» À§ÇØ ÂüÁ¶ÇÒ ¼ö ÀÖ´Â ¸í·É¾îÀÇ ÃÖ´ë °¹¼ö¸¦ ¼±¾ðÇÏ°í ÀÖ´Ù. ÀÌ °¹¼ö´Â ÇöÀçÀÇ ¸í·É ÀÌÀü¿¡ ½ÇÇàµÇ¾ú´ø ¸í·É¾îÁß¿¡ »ç¿ë°¡´ÉÇÑ ¸í·É¾îÀÇ °¹¼ö¸¦ ÀǹÌÇÑ´Ù. ÀÌ º¯¼ö¿¡ °ªÀ» ¼³Á¤ÇÒ¶§´Â HISTSIZE=new_value¶ó´Â Çü½ÄÀ¸·Î ÁöÁ¤Çϸç, ¸¸ÀÏ ÀÌ º¯¼ö¿¡ °ªÀ» ÁöÁ¤ÇÏÁö ¾Ê¾ÒÀ» °æ¿ì¿¡´Â 128ÀÌ °¡Á¤µÈ´Ù. ±×¸®°í ½ÇÇàÇÑ ¸í·É¾î ¶óÀÎÀÇ ¼ö°¡ HISTSIZEÀÇ °ªÀ» ³Ñ¾î°¥ °æ¿ì¿¡´Â °¡Àå ÃÖ±ÙÀÇ ¸í·É¾î°¡ ¾ï¼¼½º ºÒ°¡ÇÏ°Ô µÈ´Ù. ±×·¯³ª ±× ¸í·É¾îµéÀº History File¿¡´Â º¸Á¸µÈ´Ù. ´ÙÀ½Àº History File³»¿¡ ÀúÀåµÇ¾î ÀÖ´Â ¸í·É¾îÀÇ ¾ï¼¼½º ¹æ½ÄÀ» ¼³¸íÇÑ´Ù. 1. history ¸í·É¾î´Â History È­ÀÏ¿¡ ÀúÀåµÇ¾î ÀÖ´Â °¡Àå ÃÖ±Ù¿¡ ½ÇÇàÇß´ø ¸í·É¾îÁß 16°³¸¦ Ç¥½ÃÇØ ÁØ´Ù. ÀÌ ¸í·É¿¡ ÀÇÇØ Ç¥½ÃµÇ´Â Ãâ·Â¿¡´Â ½ÇÇà ¼ø¼­¸¦ ³ªÅ¸³»´Â ¸í·É¾î ÀϷùøÈ£°¡ ¸í·É¾î ¶óÀΰú ÇÔ²² Ç¥½ÃµÈ´Ù. 2. History file¿¡ ÀúÀåµÇ¾î ÀÖ´Â ¸í·É¾î´Â ¼öÁ¤¾øÀÌ r(redo) ¸í·É¾î·Î Àç½ÇÇàÇÒ ¼ö ÀÖ´Ù. r ¸í·É¾î¸¦ »ç¿ëÇÔ¿¡ ÀÖ¾î ÀÎÀÚ¸¦(Arguments) ÁöÁ¤ÇÏÁö ¾ÊÀ» °æ¿ì¿¡´Â Á÷Àü¿¡ ½ÇÇàÇß´ø ¸í·É¾î¸¦ Àç½ÇÇàÇÑ´Ù. r ¸í·É¾îÀÇ ÁöÁ¤ Çü½ÄÀº r sequence_number Àε¥, À̶§ Sequence_number´Â History File³»ÀÇ ÀÏ·Ã ¹øÈ£¸¦ ÀǹÌÇϸç, ÀÌÀü¿¡ ¼Ò°³ÇÑ history ¸í·ÉÀ» ÅëÇØ È®ÀÎÇÒ ¼ö ÀÖ´Ù. 3. History file¿¡ ÀúÀåµÇ¾î ÀÖ´Â ¸í·É¾î´Â EDITOR, VISUAL ¶Ç´Â set ¸í·É¾î¿¡ ÀÇÇØ ÁöÁ¤µÈ ÆíÁý±â¸¦ ÅëÇØ ÆíÁýÇÏ¿© ½ÇÇàÇÒ ¼ö ÀÖ´Ù. 2. Line Edit Mode (¶óÀÎ ÆíÁý ¸ðµå) ¿ì¼± Line Edit Mode¿¡¼­ ÀÌÇØÇؾßÇÒ °ÍÀÌ ÀÖ´Ù. ±×°ÍÀº ¸í·É¾î ¶óÀÎÀ» ÆíÁýÇÏ´õ¶óµµ History File³»ÀÇ º»·¡ÀÇ ¸í·É¾î ¶óÀÎÀº º¯°æµÇÁö ¾Ê´Â´Ù´Â °ÍÀÌ´Ù. ÀÌÀ¯´Â Line Edit Mode¿¡¼­´Â History FileÀ» ´ë»óÀ¸·Î ÆíÁýÇÏÁö ¾Ê°í, ÀúÀåµÇ¾î ÀÖ´Â ¶óÀÎÀ» ¹öÆÛ¿¡ º¹»çÇÏ¿© ¼öÁ¤Çϱ⠶§¹®ÀÌ´Ù. ¹°·Ð ÆíÁýÇÑ ¸í·É¾î¸¦ Àç½ÇÇàÇßÀ» °æ¿ì¿¡´Â ±× ¸í·É¾î´Â °¡Àå ÃÖ±ÙÀÇ ½ÇÇà ¸í·ÉÀ¸·Î History File¿¡ ÀúÀåµÈ´Ù. ¸í·É¾î¸¦ ÆíÁýÇϱâ À§Çؼ­´Â Å°¸¦ ´­·¯ ÆíÁý±âÀÇ ¸í·É¾î ¸ðµå·Î µé¾î°£´Ù. ¸í·É¾î ¸ðµå¿¡¼­ Ä¿¼­´Â ¸í·É¾î ¶óÀο¡ ¿µÇâÀ» ÁÖÁö¾Ê°í À̵¿ÇÒ ¼ö ÀÖ´Ù. ÆíÁý±â ¸ðµå°¡ ±âµ¿µÈ ÈÄ¿¡´Â, ÀÌÀü¿¡ ½ÇÇàÇß´ø ¸í·É¾î ¶óÀÎÀ» Ç¥½ÃÇϱâ À§Çؼ­´Â Å°¸¦, ÀÌÈÄ¿¡ ½ÇÇàÇß´ø ¸í·É¾î¸¦ Ç¥½ÃÇϱâ À§Çؼ­´Â Å°¸¦ »ç¿ëÇÑ´Ù. ÇØ´ç Å°¸¦ ¿©·¯¹ø ´©¸§À¸·Î½á ƯÁ¤ ¸í·É¾î ¶óÀÎÀ» °Ë»ö ÇÒ ¼ö µµ ÀÖ´Ù. ±×¸®°í Ç¥½ÃµÈ ¸í·É¾î ¶óÀÎÀ» ¼öÁ¤Çϱâ À§Çؼ­´Â ÁöÁ¤ÇÑ ÆíÁý±â¿¡¼­ Á¦°øÇÏ´Â ¸í·É¾îµéÀ» »ç¿ëÇÑ´Ù. vi ÆíÁý±â¿¡¼­ ÀÚÁÖ »ç¿ëµÇ´Â ±âº»ÀûÀÎ ¸í·ÉµéÀº º°µµ·Î »ç¿ëÇÑ´Ù. ³¡À¸·Î ÆíÁý±â ¸ðµå¸¦ Á¾·áÇÏ°í, ÆíÁýÇÑ ¸í·É¾î ¶óÀÎÀ» ½ÇÇàÇϱâ À§Çؼ­´Â Å°¸¦ ´©¸¥´Ù. ÆíÁý ¸ðµå¿¡¼­ ƯÁ¤ ¹®ÀÚ¿­ÀÌ µé¾îÀÖ´Â ¸í·É¾î ¶óÀÎÀ» ã±âÀ§ÇØ /string Çü½ÄÀÇ ¸í·É¾î¸¦ ¸í·É¾î ¸ðµå¿¡¼­ »ç¿ëÇÒ ¼ö ÀÖ´Ù. 3. vi¸¦ »ç¿ëÇÏ´Â Line Edit Mode¿¡¼­ »ç¿ë°¡´ÉÇÑ ¸í·É¾îµé ´ÙÀ½Àº vi ÆíÁý±â ¸ðµå¿¡¼­ ºó¹øÈ÷ »ç¿ëµÇ´Â ¸í·É¾îµéÀº ´ÙÀ½°ú °°´Ù. ÀÚ¼¼ÇÑ ³»¿ëÀº ksh¿¡ ´ëÇØ ¼³¸íµÇ¾î ÀÖ´Â ¸Þ´º¾óÀ» ¼³¸íÇϱ⠹ٶõ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦½¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢¸í·É¾î ¦­ ¼³ ¸í ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ k ¦­ History File³»¿¡ ÀúÀåµÇ¾î ÀÖ´Â Á÷Àü ¸í·É¾î¸¦ ¦¢ ¦¢ ¦­ Ç¥½ÃÇÑ´Ù. ¦¢ ¦¢ j ¦­ History File³»¿¡ ÀúÀåµÇ¾î ÀÖ´Â ´ÙÀ½ ¸í·É¾î¸¦ ¦¢ ¦¢ ¦­ Ç¥½ÃÇÑ´Ù. ¦¢ ¦¢ h ¦­ Ä¿¼­¸¦ Çѹ®ÀÚ ÁÂÃøÀ¸·Î À̵¿ÇÑ´Ù. ¦¢ ¦¢ l ¦­ Ä¿¼­¸¦ Çѹ®ÀÚ ¿ìÃøÀ¸·Î À̵¿ÇÑ´Ù. ¦¢ ¦¢ b ¦­ Ä¿¼­¸¦ ÇÑ ¿öµå ÁËÃøÀ¸·Î À̵¿ÇÑ´Ù. ¦¢ ¦¢ w ¦­ Ä¿¼­¸¦ ÇÑ ¿öµå ¿ìÃøÀ¸·Î À̵¿ÇÑ´Ù. ¦¢ ¦¢ 0 ¦­ Ä¿¼­¸¦ ¸í·É¾î ¶óÀÎÀÇ Ã³À½À¸·Î À̵¿ÇÑ´Ù. ¦¢ ¦¢ $ ¦­ Ä¿¼­¸¦ ¸í·É¾î ¶óÀÎÀÇ ³¡À¸·Î À̵¿ÇÑ´Ù. ¦¢ ¦¢ u ¦­ Á÷Àü¿¡ º¯°æ ³»¿ëÀ» Ãë¼ÒÇÑ´Ù. ¦¢ ¦¢ x ¦­ Ä¿¼­ À§Ä¡ÀÇ Çѹ®ÀÚ¸¦ »èÁ¦ÇÑ´Ù. ¦¢ ¦¢ d(range)¦­ ÁöÁ¤ÇÑ ¹üÀ§ÀÇ ÅؽºÆ®¸¦ »èÁ¦ÇÑ´Ù. ¦¢ ¦¢ a(A) ¦­ Ä¿¼­ Á÷ÈÄ¿¡ ÅؽºÆ®¸¦ Ãß°¡ÇÑ´Ù. ¦¢ ¦¢ i(I) ¦­ Ä¿¼­ Á÷Àü¿¡ ÅؽºÆ®¸¦ »ðÀÔÇÑ´Ù. ¦¢ ¦¢ c(range)¦­ ÁöÁ¤ÇÑ ¹üÀ§ÀÇ ÅؽºÆ®¸¦ º¯°æÇÑ´Ù. ¦¢ ¦¢ R ¦­ ÅؽºÆ®¸¦ ´ëÄ¡ÇÑ´Ù. ¦¢ ¦¢ /string ¦­ History File¿¡¼­ ÁöÁ¤ÇÑ stringÀÌ µé¾îÀÖ´Â ¦¢ ¦¢ ¦­ ¸í·É¾î ¶óÀÎÀ» °Ë»öÇÑ´Ù. ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¿¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ --------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­´Â Korn ShellÀÇ Command Alias ±â´É¿¡ ´ëÇØ ¼³¸íÇÕ´Ï´Ù. --------------------------------------------------------------------------- #68 À¯´Ï½Ã½º (adunis2 ) Korn ShellÀÇ Command Alias ±â´É 03/15 23:17 101 line Korn ShellÀÇ Command Alias ±â´É --------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. --------------------------------------------------------------------- 1. Command Alias ±â´É Alias(º°Äª)´Â ±ä ¸í·É¾î ¶óÀο¡ ´ëÇÑ ÂªÀº º°ÄªÀ» ºÎ¿©ÇÒ ¼ö ÀÖ´Â ±â´ÉÀ» Á¦°øÇÑ´Ù. Korn ShellÀº ¸í·É¾îµéÀÌ ½ÇÇàµÉ¶§°Ë»öÇÏ´Â AliasµéÀÇ ¸ñ·ÏÀ» À¯Áö°ü¸®ÇÑ´Ù. Korn ShellÀº »ç¿ëÀÚ°¡ ÁöÁ¤ÇÑ ¸í·É¾î ¶óÀÎÀÇ Ã¹¹ø° ´Ü¾î(Word)¿¡ »óÀÀÇÏ´Â Alias¸¦ ¹ß°ßÇϸé, ±× ´Ü¾î¸¦ Alias¿¡ ÇÒ´çµÇ¾î ÀÖ´Â ¸í·É¾î ¶óÀÎÀ¸·Î ¹Ù²Û´Ù. ±×¸®°í À̵éÀ» °ü¸®Çϱâ À§ÇØ alias ¸í·É¾î¸¦ Á¦°øÇϴµ¥, »ç¿ëÀÚ´Â ÀÌ ¸í·ÉÀ» ÅëÇØ ÇöÀç ¼³Á¤µÇ¾î ÀÖ´Â AliasÀÇ È®ÀÎ, »õ·Î¿î AliasÀÇ »ý¼º¹× ÁöÁ¤ÇÑ Alias¿¡ ¼³Á¤µÇ¾î ÀÖ´Â ¸í·É¾î ¶óÀÎÀÇ ³»¿ëÀ» È®ÀÎÇÒ ¼ö ÀÖ´Ù. 1) ¼±¾ðµÇ¾î ÀÖ´Â AliasÀÇ È®ÀÎ alias ¸í·ÉÀ» ÀÎÀÚ¾øÀÌ »ç¿ëÇÔÀ¸·Î¼­ ÇöÀç ¼±¾ðµÇ¾î ÀÖ´Â aliasµéÀ» È®ÀÎÇÒ ¼ö ÀÖ´Ù. ÀÌ ¸í·ÉÀÇ Ãâ·ÂÀº ¿µ¹®ÀÚ¼øÀ¸·Î Á¤·ÄµÇ¾î Ç¥½ÃµÈ´Ù. ¸î°¡Áö AliasµéÀº Korn ShellÀÌ ±âµ¿µÉ¶§ ÀÚµ¿ÀûÀ¸·Î ¼±¾ðµÈ´Ù. ´ÙÀ½Àº Korn Shell¿¡ÀÇÇØ ÀÚµ¿ÀûÀ¸·Î ¼³Á¤µÇ´Â Alias¸¦ È®ÀÎÇϱâ À§ÇØ alias ¸í·ÉÀ» ½ÇÇàÇÑ °á°úÀÌ´Ù. autoload=typeset -fu cat=/usr/bin/cat false=let 0 functions=typeset -f hash=alias -t - history=fc -l integer=typeset -i ls=/usr/bin/ls mail=/usr/bin/mail nohup=nohup r=fc -e - sh=/sbin/sh stop=kill -STOP suspend=kill -STOP $$ true=: type=whence -v alias ¸í·É¿¡ Alias nameÀ» °°ÀÌ ÁöÁ¤ÇÔÀ¸·Î¼­ ÁöÁ¤ÇÑ Alias¿¡ ÇÒ´çµÇ¾î ÀÖ´Â ¸í·É¾î ¶óÀÎÀ» È®ÀÎÇÒ¼ö ÀÖ´Ù. 2) AliasÀÇ »ý¼º Alias´Â alias ¸í·É¾î¸¦ »ç¿ëÇÏ¿© Á¤ÀǵȴÙ. ÀÌ ¶§ÀÇ alias ¸í·É¾îÀÇ Çü½ÄÀº alias name=command_line ÀÌ´Ù. ¿¹¸¦µé¸é alias ll='ls -al' ¸í·ÉÀº ll À̶ó´Â À̸§ÀÇ Alias¿¡ ls -al ¸í·É¾î¸¦ ÇÒ´çÇÑ´Ù. À̶§ ¸í·É¾î»ó¿¡ ÁöÁ¤µÇ´Â Alias À̸§°ú ±×¿¡ ¼³Á¤µÇ´Â ¸í·É¾î ¶óÀο¡´Â °ø¹éÀÌ ÀÖÀ¸¸é ¾ÈµÈ´Ù. °ø¹é°ú °°Àº ½© Ư¼ö¹®ÀÚ¸¦ command_line¿¡ ÁöÁ¤Çϱâ À§Çؼ­´Â ¹Ýµå½Ã µû¿ÈÇ¥·Î ¹­¾î ÁÖ¾î¾ß ÇÑ´Ù. 3) AliasÀÇ Á¦°Å ¼±¾ðµÇ¾î ÀÖ´Â Alias¸¦ Á¦°ÅÇϱâ À§Çؼ­´Â unalias ¸í·ÉÀ» »ç¿ëÇÑ´Ù. ÀÌ ¸í·É¾î¸¦ ½ÇÇàÇϸé Korn Shell¿¡ ÀÇÇØ °ü¸®µÇ´Â Alias ¸ñ·Ï¿¡¼­ »èÁ¦µÈ´Ù. ¸í·É¾îÀÇ Çü½ÄÀº unalias nameÀÌ´Ù. ¿¹¸¦µé¸é unalias llÀ̶ó ÁöÁ¤Çϸé, alias ¸ñ·Ï¿¡¼­ llÀ̶ó´Â alias¸¦ Á¦°ÅÇÑ´Ù. ( ¿¹Á¦ ) ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$alias ¦¢ ¦¢( ÇöÀç ¼³Á¤µÇ¾î ÀÖ´Â AliasµéÀ» Ç¥½ÃÇÑ´Ù. ) ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ alias ¸í·É¾î¿¡ ÀÎÀÚ¸¦ ÁöÁ¤ÇÏÁö ¾ÊÀ½À¸·Î¼­ ÇöÀç ¼±¾ðµÇ¾î ÀÖ´Â AliasµéÀ» È®ÀÎÇÏ´Â °ÍÀ» º¸¿©ÁÖ´Â ¿¹ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$alias clean=`find ~ -atime +60 -exec rm {} \;` ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÀÌ ¿¹¿¡¼­´Â find ¸í·É¾î¸¦ cleanÀ̶ó´Â À̸§À¸·Î alias·Î ¼±¾ðÇÏ´Â ¿¹¸¦ º¸¿©ÁØ´Ù. À̶§ find ¸í·É¾î¿¡´Â °ø¹é¹×º¯È¯¹®ÀÚ(metacharacter)¸¦ »ç¿ëÇÏ¿´±â ¶§¹®¿¡ µû¿ÈÇ¥·Î ¹­Àº°ÍÀ» ÁÖ¸ñÇϱ⠹ٶõ´Ù. Âü°í·Î find ¸í·É¾î³»¿¡¼­ »ç¿ëµÈ ~ ¹®ÀÚ´Â »ç¿ëÀÚÀÇ È¨ µð·ºÅ丮·Î º¯È¯µÇ´Â Korn ShellÀÇ º¯È¯¹®ÀÚÀÌ´Ù. ÀÌ¿¡ ´ëÇؼ­´Â ÀÌÈÄ ÀÚ¼¼È÷ ¼³¸íµÈ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$alias clean ¦¢ ¦¢find ~ -atime +60 -exec rm {} \; ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ƯÁ¤ Alias¿¡ ¼³Á¤µÇ¾î ÀÖ´Â ¸í·É¾î ¶óÀÎÀ» È®ÀÎÇÏ´Â ¹æ½ÄÀ» º¸¿©ÁÖ´Â ¿¹ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$unalias clean ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ cleanÀ̶ó´Â Alias¸¦ »èÁ¦ÇÏ´Â ¿¹¸¦ º¸¿©ÁÖ´Â ¿¹ÀÌ´Ù. --------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­´Â Korn ShellÀÇ Job Control ±â´É¿¡ ´ëÇØ ¼³¸íÇÕ´Ï´Ù. --------------------------------------------------------------------------- #69 À¯´Ï½Ã½º (adunis2 ) Korn ShellÀÇ Job Control ±â´É 03/16 15:21 140 line Korn ShellÀÇ Job Control ±â´É --------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. --------------------------------------------------------------------- 1. Job Control ±â´É Korn Shell, C Shell°ú Job ShellÀÌ ±âµ¿µÇ¸é, Job Control ±â´ÉÀÌ »ç¿ë°¡´ÉÇÏ°Ô µÈ´Ù. ¿©±â¼­ JobÀ̶õ Çϳª ¶Ç´Â ÀÏ·ÃÀÇ ¸í·É¾î ½ÇÇà ÀÚü¸¦ ÀǹÌÇÑ´Ù. »ç¿ëÀÚ´Â Job Control ±â´ÉÀ» »ç¿ëÇÏ¿© Job¿¡´ëÇØ Á¤Áö, °è¼Ó¼öÇà, Á¾·á »Ó¸¸¾Æ´Ï¶ó Foreground¿Í Background »çÀÌÀÇ JobÀÇ À̵¿µîÀ» ÇàÇÒ ¼ö ÀÖ´Ù. »ç¿ëÀÚ°¡ ½ÇÇàÇÑ JobÀº ´ÙÀ½°ú °°Àº ÀÛ¾÷»óÅÂÁß ¾î´À Çϳª¿¡ À§Ä¡ÇÑ´Ù. . Foreground ½ÇÇà . Background ½ÇÇà . Suspended (Á¤Áö) . Terminated (Á¾·á) Foreground ½ÇÇà JobÀº Á¦¾î°¡ ½©¿¡ µÇµ¹·ÁÁö°í, ¶Ç´Ù¸¥ ½© ÇÁ·ÒÇÁÆ®°¡ Ç¥½ÃµÇ±â Àü¿¡ Áï°¢ÀûÀ¸·Î 󸮵ȴÙ. ÀÌ´Â »ç¿ëÀÚ°¡ ÇöÀç ½ÇÇàÇÑ JobÀÌ ¿Ï·áµÇ±â Àü¿¡´Â ¶Ç´Ù¸¥ JobÀ» °³½ÃÇÒ ¼ö ¾øÀ½À» ÀǹÌÇÑ´Ù. Background ½ÇÇà »ç¿ëÀÚ°¡ Job ½ÇÇà ¿ä±¸¸¦ ³»¸®°Ô µÇ¸é, ½©Àº »ç¿ëÀÚ¿¡°Ô ¶Ç´Ù¸¥ ÀÛ¾÷À» ½ÇÇàÇÒ ¼ö ÀÖµµ·Ï Á¦¾î¸¦ Áï°¢ÀûÀ¸·Î µ¹·ÁÁÖ¸ç, ±×·¯³ª ¿ä±¸µÈ JobÀº ½Ã½ºÅÛ¿¡ ÀÇÇØ Background¿¡¼­ ÀÛ¾÷ ½ÇÇàÀÌ °è¼ÓµÈ´Ù. ÀÌ¿Í°°ÀÌ Background¿¡¼­ ÀÛ¾÷À» ½ÇÇàÇϱâ À§Çؼ­´Â ½ÇÇàÇÒ ¸í·É¾î ¶óÀÎÀÇ ³¡¿¡ & ½Éº¼À» ÁöÁ¤ÇÑ´Ù. ¸¸¾à Background Job¿¡¼­ Å͹̳ηκÎÅÍ ÀÔ·ÂÀ» ¹Þµµ·Ï ÁöÁ¤µÇ¾î ÀÖ´Ù¸é, JobÀº ½ÇÇà ÁßÁöµÈÈÄ Àû´çÇÑ ¸Þ¼¼Áö¸¦ Ç¥½ÃÇÑ´Ù. ÀÔ·ÂÀ» ¹Þ¾ÆµéÀÎÈÄ ½ÇÇàÀº °è¼ÓµÈ´Ù. ±×¸®°í JobÀÌ ¿Ï·áµÈÈÄ »ý¼ºµÈ Ãâ·ÂÀº ÇØ´ç Å͹̳ο¡ Ç¥½ÃÇÑ´Ù. "stty tostop" ¸í·É¾î´Â Background JobÀÇ Ãâ·ÂÀÌ Å͹̳ηΠǥ½ÃµÊÀ¸·Î ÀÎÇØ Foreground JobÀÇ Ãâ·ÂÀÌ ¹æÇØ ¹Þ´Â°ÍÀ» ¹æÁöÇÒ ¼ö ÀÖ´Ù. Stopped (Suspended: Á¤Áö»óÅÂ) ±âµ¿ÁßÀÎ JobÀ» ÀϽÃÀûÀ¸·Î Á¤ÁöµÇ¾î ÀÖ´Â »óÅÂÀÌ´Ù. ÀÌ JobÀº Àç½ÇÇà ¶Ç´Â Á¾·áÇÒ ¼ö ÀÖ´Ù. ¸¸¾à »ç¿ëÀÚ°¡ JobÀ» ½ÇÇàÇÏ°í ÀÖ´Â ÁßÀ̳ª Á¤ÁöÇÏ°í ÀÖ´Â »óÅ¿¡¼­ LogoutÀ» ½ÃµµÇϸé, ÀÌ¿¡ µû¸¥ Àû´çÇÑ ÁÖÀÇ ¸Þ¼¼Áö°¡ Ç¥½ÃµÇ°í, LogoutÀ» ÇàÇÏÁö ¾Ê´Â´Ù. ±×·¯³ª ´Ù½ÃÇѹø ^d³ª exit ¸í·ÉÀ» ³»¸®°Ô µÇ¸éÀº ÀÌ¿Í °ü·Ã¾øÀÌ LogoutÀ» ¼öÇàÇÏ°í, ¼öÇàÁßÀÌ´ø ÀÛ¾÷µéÀº Á¾·áµÈ´Ù. ´Ü, nohup ¸í·ÉÀ¸·Î ÁöÁ¤µÈ ÀÛ¾÷Àº ½Ã½ºÅÛ¿¡ ÀÇÇØ °è¼Ó ½ÇÇàÇÑ´Ù. Terminated (Killed: Á¾·á»óÅÂ) JobÀÌ Á¤Áö¹× Á¾·áµÈ »óŸ¦ ³ªÅ¸³½´Ù. ÀÌ »óÅÂÀÇ ÀÛ¾÷Àº Àç½ÇÇàÇÒ ¼ö ¾ø´Ù. 2. Job Control Commands JobÀ» Á¦¾îÇϱâ À§Çؼ­ ´ÙÀ½°ú °°Àº °°Àº ¸í·É¾îµéÀ» Korn Shell, C Shell, Job Shell ȯ°æ¿¡¼­ »ç¿ë°¡´ÉÇÏ´Ù. ÀÌ¿Í°°Àº ¸í·É¾îµéÀ» Built-in ¸í·É¾î¶ó ºÎ¸¥´Ù. jobs [-option] ¿ä±¸µÈ ¸ðµç JobµéÀÇ »óŸ¦ Ç¥½ÃÇÑ´Ù. -l ¿É¼ÇÀº PID¸¦ Æ÷ÇÔÇÑ ÀÚ¼¼ÇÑ Á¤º¸¸¦ Ãâ·ÂÇÑ´Ù. -p ¿É¼ÇÀº ½ÇÇàÁßÀÎ JobµéÀÇ PIDµé ¸¸À» Ç¥½ÃÇÑ´Ù. fg [job_id] Foreground¿¡ JobÀ» À§Ä¡½ÃŲ´Ù. <^z> Foreground JobÀ» Á¤ÁöÇÑ´Ù. bg [job_id] Background¿¡ ÁöÁ¤ÇÑ JobÀ» À§Ä¡½ÃŲ´Ù. stop [job_id] ÁöÁ¤ÇÑ BackgroundÀ» Á¤ÁöÇÑ´Ù. kill [-signal][job_id] ÁöÁ¤ÇÑ JobÀ» Á¾·áÇÑ´Ù. ´ÙÀ½Àº ÀÌ»óÀÇ ¸í·É¿¡¼­ job_id¸¦ ÁöÁ¤ÇÏ´Â ¹æ½Ä¿¡ ´ëÇØ ¼³¸íÇÑ´Ù. 3. Job Identification(Job ½Äº°ÀÚ) ¸í·É¾î ¶óÀο¡ &¸¦ ÁöÁ¤ÇÔÀ¸·Î½á JobÀÌ Background¿¡¼­ ½ÇÇàµÉ °æ¿ì, Korn ShellÀº ½ÇÇàµÇ´Â JobÀ» ½Äº°ÇÏ´Â Á¤º¸µéÀ» Ç¥½ÃÇÑ´Ù. Bourne Shell¿¡¼­´Â Background ½ÇÇà°ú °ü·ÃµÈ ÇÁ·Î¼¼½º ½Äº°ÀÚ (Process ID)¸¦ Ç¥½ÃÇØÁÖ³ª, Korn ShellÀº »ç°¢°ýÈ£·Î µÑ·¯½×ÀÎ Job ¹øÈ£¿Í ÇÁ·Î¼¼½º ½Äº°ÀÚ¸¦ Ç¥½ÃÇÑ´Ù. JobÀǽÇÇàÀÌ ³¡³ª¸é ´ÙÀ½°ú °°Àº ¸Þ¼¼Áö¸¦ Ç¥½ÃÇÑ´Ù. [job_Id] + Done Command_line_sequence jobs ¸í·É¾î´Â ¾ÆÁ÷ ³¡³ªÁö ¾Ê°í, ½ÇÇàÁßÀÎ JobÀÇ »óŸ¦ Ç¥½ÃÇÑ´Ù. Ãâ·ÂÁß¿¡ Job Id ´ÙÀ½¿¡ ¿¬À̾î Ãâ·ÂµÇ´Â + ¿Í - Ç¥½Ã´Â °¢°¢ ÇöÀçÀÇ ÀÛ¾÷°ú ÀÌÀüÀÇ ÀÛ¾÷À» ³ªÅ¸³½´Ù. ´ÙÀ½ÀÇ Job ÁöÁ¤ÀÚµéÀº JobÀÇ ½ÇÇàÀ» Á¶ÀÛÇϱâ À§ÇÑ Job Control Command¿¡¼­ »ç¿ëÇÒ ¼ö ÀÖ´Ù. + ÇöÀçÀÇ ÀÛ¾÷À» ÂüÁ¶ÇÑ´Ù. - ÀÌÀüÀÇ ÀÛ¾÷À» ÂüÁ¶ÇÑ´Ù. %[job-id(s)] ÁöÁ¤ÇÑ job-id¸¦ ÂüÁ¶ÇÑ´Ù. PID ÁöÁ¤ÇÑ process Id¸¦ ÂüÁ¶ÇÑ´Ù. %string stringÀ¸·Î ½ÃÀÛÇÏ´Â ¸í·É¾î ¶óÀÎÀ¸·Î ±âµ¿µÈ JobÀ» ÂüÁ¶ÇÑ´Ù. ( ¿¹Á¦ ) ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ÀÌ ¿¹´Â Background¿¡¼­ JobÀ» ½ÇÇà½ÃÅ°´Â ¿¹¸¦ ¦¢ $sleep 300& ¦¢ º¸¿©ÁÖ°í ÀÖ´Ù. À̶§ Job_Id¿Í PID°¡ Ç¥½ÃµÇ´Â °ÍÀ» ¦¢ [1] 3105 ¦¢ ÁÖ¸ñÇϱ⠹ٶõ´Ù. ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $jobs ¦¢ ¦¢ [1] + running sleep 300& ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÀÎÀÚ¾øÀÌ jobs ¸í·É¾î¸¦ »ç¿ëÇϸé ÇöÀç ½ÇÇàÁßÀÎ ÀÛ¾÷À» Ç¥½ÃÇÑ´Ù. ¸í·É¾îÀÇ Ãâ·Â¿¡´Â »ç°¢°ýÈ£¿¡ µÑ·¯½×ÀÎ job_number¿Í ÀÛ¾÷ÀÇ »óÅ ±×¸®°í ¸í·É¾î ¶óÀÎÀÌ Ç¥½ÃµÈ´Ù. Job_Id ´ÙÀ½ÀÇ +Ç¥½Ã´Â °¡Àå ÃÖ±Ù¿¡ ½ÇÇàµÈ ÀÛ¾÷À» ³ªÅ¸³»¸ç, - ´Â ÀÌÀü¿¡ ¼öÇà ¿ä±¸µÈ ÀÛ¾÷À» ÀǹÌÇÑ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $fg %1 ¦¢ Job ¹øÈ£¸¦ »ç¿ëÇÏ¿© ÀÛ¾÷À» Á¦¾îÇÏ´Â ¿¹¸¦ ¦¢ sleep 300 ¦¢ º¸¿©ÁÖ°í ÀÖ´Ù. Á÷Àü ¿¹ÀÇ sleep ¸í·É¾î°¡ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ Foreground¿¡¼­ ¼öÇàµÊÀ¸·Î ÀÎÇØ, ÇÁ·ÒÇÁÆ®°¡ Ç¥½ÃµÇÁö ¾ÊÀ½À» ÁÖ¸ñÇϱ⠹ٶõ´Ù. À̶§ ¶Ç´Ù¸¥ ÀÛ¾÷ Á¦¾î¸¦ Çϱâ À§Çؼ­´Â Å°¸¦ »ç¿ëÇÑ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $ ¦¢ Å°¸¦ »ç¿ëÇÏ¿© Foreground ¦¢ [1] + Stopped sleep 300& ¦¢ ¿¡¼­ ½ÇÇàµÇ´Â ÀÛ¾÷À» ÁßÁö ½ÃÅ°´Â ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¿¹ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ÁßÁö»óÅ¿¡ ÀÖ´Â ÀÛ¾÷À» bg ¸í·ÉÀ» »ç¿ëÇÏ¿© ¦¢ $bg %sleep ¦¢ Background·Î º¸³»°í ÀÖ´Ù. ¿©±â¼­ ÁÖ¸ñÇÒ °ÍÀº ¦¢ [1] sleep 300& ¦¢ ÀÛ¾÷À» ÁöÁ¤Çϱâ À§ÇØ ½ÇÇàµÇ°í ÀÖ´Â ¸í·É¾î ¶óÀÎÀÇ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¹®ÀÚ¿­À» ÀÌ¿ëÇÏ°í ÀÖ´Ù´Â °ÍÀÌ´Ù. --------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­´Â Korn ShellÀÇ Option°ú º¯¼öµé¿¡ ´ëÇØ ¼³¸íÇÕ´Ï´Ù. --------------------------------------------------------------------------- #70 À¯´Ï½Ã½º (adunis2 ) Korn ShellÀÇ Option°ú Variables 03/16 22:41 144 line Korn ShellÀÇ Option°ú º¯¼öµé --------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. --------------------------------------------------------------------- 1. Korn ShellÀÇ Option Korn ShellÀº ÀÚ½ÅÀÌ Á¦°øÇϴ Ư¼ö ±â´ÉµéÀÇ ÀÌ¿ëÀ» Çã¿ë(enable)¹× ±ÝÁö(disable)ÇÒ¼ö ÀÖµµ·Ï ¸î°¡ÁöÀÇ ¿É¼ÇÀ» Á¦°øÇÑ´Ù. Á¦°øÇÏ´Â ¿É¼ÇÀº ´ÙÀ½°ú °°´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ ¿É¼Ç¸í ÃʱⰪ ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦© ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ allexport ¦¢ off ¦¢ ¦¢ noclobber ¦¢ off ¦¢ ¦¢ bgnice ¦¢ on ¦¢ ¦¢ noglob ¦¢ off ¦¢ ¦¢ emacs ¦¢ off ¦¢ ¦¢ nolob ¦¢ off ¦¢ ¦¢ errexit ¦¢ off ¦¢ ¦¢ nounset ¦¢ off ¦¢ ¦¢ gmacs ¦¢ off ¦¢ ¦¢ privileged ¦¢ off ¦¢ ¦¢ ignoreeof ¦¢ off ¦¢ ¦¢ restricted ¦¢ off ¦¢ ¦¢ interactive¦¢ on ¦¢ ¦¢ trackall ¦¢ off ¦¢ ¦¢ keyword ¦¢ off ¦¢ ¦¢ verbose ¦¢ off ¦¢ ¦¢ markdirs ¦¢ off ¦¢ ¦¢ vi ¦¢ off ¦¢ ¦¢ monitor ¦¢ on ¦¢ ¦¢ viraw ¦¢ off ¦¢ ¦¢ noexec ¦¢ off ¦¢ ¦¢ xtrace ¦¢ off ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¥ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¥ À§ÀÇ ¿É¼Çµé¿¡ ´ëÇؼ­´Â Â÷ÈÄ¿¡ ÀÚ¼¼È÷ ¼³¸íÇÑ´Ù. À̹ø °úÁ¤¿¡¼­´Â ºó¹øÈ÷ »ç¿ëµÇ´Â ¸î°¡ÁöÀÇ ¿É¼Ç¿¡ ´ëÇؼ­¸¸ ¼Ò°³ÇÑ´Ù. noclobber Ãâ·Â RedirectionÀÌ ±âÁ¸ÀÇ È­ÀÏ¿¡ ¼Õ»ó(truncating)À» °¡ÇÏ´Â °ÍÀ» ¿¹¹æÇÑ´Ù. ignoreeof ^d Å°¸¦ ÅëÇÑ logoutÀ» ¸·´Â´Ù. ÀÌ ±â´ÉÀÌ ¼³Á¤µÇ¾î ÀÖÀ» °æ¿ì¿¡´Â exit ¸í·É¸¸À» ÀÌ¿ëÇØ¾ß logoutÇÒ ¼ö ÀÖ´Ù. allexport ÇöÀç ½©¿¡¼³Á¤µÇ¾î ÀÖ´Â ¸ðµç º¯¼öµéÀ» ÀÚµ¿ÀûÀ¸·Î ÇÏÀ§ ½©¿¡ export½ÃÅ°´Â °¡¸¦ ÁöÁ¤ÇÑ´Ù. noglob È­ÀÏ¸í¿¡ ´ëÇÑ Wildcard ¹®ÀÚµéÀÇ ¹ø¿ª ¿©ºÎ¸¦ ¼³Á¤ÇÑ´Ù. ÀÌ»ó ¼Ò°³ÇÑ ¿É¼ÇÀ» on ¶Ç´Â off ½ÃÅ°±â À§Çؼ­´Â set ¸í·É¾îÀÇ -o ¶Ç´Â +o ¿É¼ÇÀ» »ç¿ëÇÑ´Ù. ±× »ç¿ëÇüÅ´ ´ÙÀ½°ú °°´Ù. set -o ÇöÀç ¼³Á¤µÇ¾î ÀÖ´Â Korn ShellÀÇ ¿É¼ÇÀ» Ç¥½ÃÇÑ´Ù. set -o [option(s)] ¿É¼ÇÀ» ON ÇÑ´Ù. set +o [option(s)] ¿É¼ÇÀ» OFF ÇÑ´Ù. ( ¿¹Á¦ ) ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦½¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$set -o ¦­ Korn Shell ¿É¼ÇÀÇ ¼³Á¤»óŸ¦ Ç¥½ÃÇÑ´Ù. ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢$set -o noclobber ¦­ noclobber ¿É¼ÇÀ» ON ÇÑ´Ù. ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢$set +o noclobber ¦­ noclobber ¿É¼ÇÀ» OFF ÇÑ´Ù. ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¿¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ 2. Korn ShellÀÇ º¯¼ö º¯¼ö´Â ¿¬°üµÈ °ªÀÇ À̸§ÀÌ´Ù. º¯¼öµéÀº ÇÁ·Î±×·¥À» ÀÛ¼ºÇϴµ¥ ºó¹øÈ÷ »ç¿ëµÈ´Ù. ÀÛ¾÷ ȯ°æ¿¡ ¿¬°üµÇ´Â º¯¼öµéÀº ·Î±×Àνÿ¡ ÀÚµ¿ÀûÀ¸·Î ¼³Á¤µÇµµ·Ï Çϱâ À§ÇØ .profile ¶Ç´Â ENV º¯¼ö¿¡ Á¤ÀǵǾî ÀÖ´Â È­ÀÏ¿¡ ´ëºÎºÐ ¼±¾ðµÇ¾î ÀÖ´Ù. ÀÌ·¯ÇÑ È¯°æ º¯¼öÁß ¸î°¡Áö´Â ½©¿¡ÀÇÇØ Á¤Àǵǰí À¯ÁöµÇ´Âµ¥ »ç¿ëÀÚ´Â ÀÌ·¯ÇÑ º¯¼öµéÀ» º¯°æÇÒ ¼ö ¾ø´Ù. ±×·¯³ª VISUALÀ̳ª HISTSIZE°ú °°Àº º¯¼öµéÀº »ç¿ëÀÚ¿¡ ÀÇÇØ º¯°æµÉ ¼ö ÀÖ´Ù. ¶ÇÇÑ »ç¿ëÀÚµéÀº ÀÚ½ÅÀÌ ÀÛ¾÷À» ¼öÇàÇϱâ À§Çؼ­ ÇÊ¿ä·ÎÇÏ´Â º¯¼öµéÀ» ¼±¾ð¹× »ç¿ëÇÒ ¼ö ÀÖ´Ù. ´ÙÀ½ºÎÅÍ ¼Ò°³µÉ ´ëºÎºÐÀÇ º¯¼öµéÀº Korn Shell¿¡¼­ µ¶Æ¯ÇÑ ±â´ÉÀ» ¼öÇàÇÏ´Â º¯¼öµéÀÌ´Ù. À̵鿡 ´ëÇÑ ÀÚ¼¼ÇÑ È°¿ë ¿¹Á¦¹× È°¿ë ¹æ½ÄÀº Â÷ÈÄ¿¡ °è¼ÓµÉ ½© ÇÁ·Î±×·¡¹Ö °úÁ¤¿¡¼­ ¼³¸íÇÑ´Ù. PS1 PS1 º¯¼ö´Â Bourne Shell°ú µ¿ÀÏÇÏ°Ô ÇÁ·ÒÇÁÆ®¸¦ Á¤ÀÇÇϱâ À§ÇØ »ç¿ëÇÑ´Ù. ±×·¯³ª Korn Shell¿¡¼­´Â PS1 º¯¼ö¿Í History ±â´ÉÀ» °áÇÕÇÏ¿© »ç¿ëÇÒ ¼ö ÀÖ´Ù. ¿¹¸¦µé¸é, PS1 º¯¼ö¿¡History È­Àϳ»ÀÇ Á÷Àü¿¡ ½ÇÇàµÈ ¸í·É¾î ¶óÀÎÀÇ ÀϷùøÈ£¸¦ ÀǹÌÇÏ´Â !¸¦ ÇÔ²² ÁöÁ¤ÇÏ´Â °ÍÀÌ´Ù. ´ÙÀ½Àº ±× ½ÇÇà ¿¹ÀÌ´Ù. $PS1="[!]usera>" [1]usera>pwd /home/usera ÀÌ ¿¹¿¡¼­ ÇÁ·ÒÇÁÆ®¿¡ ¼ýÀÚ°¡ ¹Ù²î¾î°¡¸ç [2]usera> Ç¥½ÃµÇ´Â Á¡À» ÁÖ¸ñÇϱ⠹ٶõ´Ù. »ç¿ëÀÚ´Â »ç°¢°ýÈ£¾È¿¡ Ç¥½ÃµÇ´Â ¼ýÀÚ¸¦ ÀÌ¿ëÇÏ¿© ÀÌÀü¿¡ ½ÇÇàÇß´ø ¸í·É¾î ¶óÀÎÀ» Àç½ÇÇàÇÒ ¼ö ÀÖ´Ù. PS3 PS3 º¯¼ö´Â ½© ÇÁ·Î±×·¥¿¡¼­ »ç¿ëµÇ´Â select ¸í·É¾î¿¡¼­ »ç¿ëÇÏ´Â ÇÁ·ÒÇÁÆ®¸¦ Á¤ÀÇÇϱâ À§ÇØ Á¦°øµÇ´Â »õ·Î¿î º¯¼öÀÌ´Ù. ÀÌ ÇÁ·ÒÇÁÆ®´Â select ¸í·É¾î¿¡ ÀÇÇØ ÀÔ·ÂÀ» ¹Þ¾ÆµéÀ̱â À§ÇØ »ç¿ëµÈ´Ù. PS4 PS4 º¯¼ö´Â set -x ¶Ç´Â ksh -x ¸í·É¾î°¡ ½ÇÇàµÈ¶§¿¡ Ç¥½ÃµÇ´Â µð¹ö±×(Debug) ½Éº¼À» Á¤ÀÇÇϱâ À§ÇÑ º¯¼öÀÌ´Ù. VISUAL VISUAL º¯¼ö´Â History ±â´É³»¿¡¼­ »ç¿ëµÉ ÆíÁý±â¸¦ ÁöÁ¤Çϱâ À§ÇØ »ç¿ëµÈ´Ù. ÆíÀǸ¦ À§ÇØ ÀÌ º¯¼ö´Â .profile³»¿¡ ¼±¾ðÇÑ´Ù. EDITOR EDITOR º¯¼ö´Â History ±â´É³»¿¡¼­ »ç¿ëµÉ ÆíÁý±â¸¦ ÁöÁ¤Çϱâ À§ÇØ »ç¿ëµÈ´Ù. VISUAL°ú EDITOR º¯¼ö ¸ðµÎ°¡ ¼±¾ðµÇ¾úÀ» °æ¿ì¿¡´Â VISUALÀÌ ¿ì¼±µÈ´Ù. PWD Korn ShellÀº PWD º¯¼ö¿¡ »ç¿ëÀÚ°¡ À§Ä¡ÇÑ ÇöÀç ÀÛ¾÷ µð·ºÅ丮ÀÇ Àý´ë °æ·Î¸¦ ¼³Á¤ÇØ ÁØ´Ù. µû¶ó¼­ »ç¿ëÀÚ´Â ÀÌ º¯¼ö¸¦ ÀÌ¿ëÇÏ¿© ÀÛ¾÷ µð·ºÅ丮°¡ Ç¥½ÃµÇ´Â ½© ÇÁ·ÒÇÁÆ®¸¦ »ý¼ºÇÒ ¼ö ÀÖ´Ù. ±× ¿¹´Â ´ÙÀ½°ú °°´Ù. $PS1='[!]$PWD:' /home/user1 OLDPWD Korn Shell¿¡ ÀÇÇØ ÀÌÀü¿¡ ÀÛ¾÷ÇÏ´ø µð·ºÅ丮°¡ ¼³Á¤µÇ´Â º¯¼öÀÌ´Ù. cd - ¸í·Éµµ ÀÌ¿Í°°Àº ±â´ÉÀ» ¼öÇàÇÑ´Ù. ´ÙÀ½Àº cd - ¸í·É¿¡ ÀÇÇØ ÇöÀçÀÇ ÀÛ¾÷ µð·ºÅ丮¿¡¼­ Á÷ÀüÀÇ ÀÛ¾÷ µð·ºÅ丮·Î °ðÀå À̵¿ÇÏ´Â ¿¹¸¦ º¸¿©ÁØ´Ù. $pwd /home/user1 $cd /home/user2 $cd - $pwd /home/user1 TMOUT ½©ÀÌ ÀÏÁ¤½Ã°£ µ¿¾È »ç¿ëÀÚÀÇ ÀÔ·ÂÀÌ ¾øÀ» °æ¿ì ÀÚµ¿ÀûÀ¸·Î logout 󸮵ǵµ·Ï ÁöÁ¤ÇÒ ¼ö Àִµ¥, À̶§ ÀÌ ½Ã°£À» ÁöÁ¤Çϱâ À§ÇØ »ç¿ëµÇ´Â º¯¼öÀÌ´Ù. ÁöÁ¤µÇ´Â ½Ã°£ÀÇ ´ÜÀ§´Â ÃÊÀÌ´Ù. HISTSIZE HISTSIZE º¯¼ö´Â History ±â´É¿¡¼­ ÆíÁý ¶Ç´Â Àç½ÇÇàÇϱâ À§ÇØ ÂüÁ¶ÇÒ ¼ö ÀÖ´Â ¸í·É¾îÀÇ ¼ö¸¦ ÁöÁ¤Çϱâ À§ÇØ »ç¿ëµÇ´Â º¯¼öÀÌ´Ù. Tilde (~) Tilde(~) º¯¼ö´Â »ç¿ëÀÚÀÇ È¨ µð·ºÅ丮°¡ ¼³Á¤µÇ´Â º¯¼öÀÌ´Ù. ÀÌ º¯¼ö´Â °æ·Î¸í ÁöÁ¤½Ã »ç¿ëÀÚÀÇ È¨ µð·ºÅ丮¸¦ ´ëÄ¡ÇÒ ¸ñÀûÀ¸·Î »ç¿ëµÉ ¼ö ÀÖ´Ù. $cd ~/dira --------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­´Â Shell ProgrammingÀÇ ÀϹݰ³¿ä¿¡ ´ëÇØ ¼³¸íÇÕ´Ï´Ù. --------------------------------------------------------------------------- #71 À¯´Ï½Ã½º (adunis2 ) Shell ProgramÀÇ ÀϹݰ³¿ä¹× ÀÛ¼º 03/17 13:11 91 line Shell ProgrammingÀÇ ÀϹݰ³¿ä -------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. --------------------------------------------------------------------- 1. Shell ProgrammingÀÇ ÀϹݰ³¿ä ÀÌÀü °­ÀÇ¿¡¼­´Â ¸í·É¾î Çص¶±â·Î¼­ÀÇ ½©À» ÀÌ¿ëÇϴµ¥ ÃÐÁ¡À» ¸ÂÃß¾î °­ÀǸ¦ ÁøÇàÇß´Ù. ¶ÇÇÑ ÇϳªÀÇ ¸í·É¾î ¶óÀο¡ ¿©·¯°³ÀÇ ¸í·É¾î¸¦ ½ÇÇàÇÏ´Â ¹æ¹ý¿¡ ´ëÇؼ­µµ ¼³¸íÇß´Ù. À̹ø¿¡´Â È­Àϼӿ¡ ½ÇÇàÇÒ ÀÏ·ÃÀÇ ¸í·É¾îµéÀ̳ª ±âÁ¸ÀÇ ¸í·É¾îµéÀ» Á¶ÇÕÇϱâ À§Çؼ­ ÀÌ¿ëÇÏ´Â ½© ÇÁ·Î±×·¥À» ÀÛ¼ºÇϴµ¥ À־ ÇÁ·Î±×·¡¹Ö µµ±¸·Î Bourne ShellÀ» ÀÌ¿ëÇÏ´Â ±âº»ÀûÀÎ ¹æ½Äµé¿¡ ´ëÇØ ¼Ò°³ÇÑ´Ù. ÀÌ·¯ÇÑ ½© ÇÁ·Î±×·¥µéÀº »ç¿ëÀÚ¿¡°Ô º¹ÇÕÀûÀÎ ÀÛ¾÷À» ½ÇÇà°ú ¹Ýº¹ÀûÀÎ ÇÁ·Î½ÃÁ®¸¦ ´Ü¼øÇÏ°í ºü¸£°Ô ½ÇÇàÇÒ¼ö ÀÖµµ·Ï ÇØÁØ´Ù. À̹ø °­ÀÇ¿¡¼­ ¼Ò°³µÇ´Â ÁÖµÈ ³»¿ëÀº ±âº»ÀûÀÎ ½© ÇÁ·Î±×·¥À» ÀÛ¼º¹× ½ÇÇà°ú ÇÁ·Î±×·¥ ¹®¹ý¿¡·¯¸¦ °Ë»ç¹× ±³Á¤¹æ½ÄµîÀÌ´Ù. ±×¿Ü¿¡µµ ´ÙÀ½ ¹æ½Ä¿¡ ´ëÇØ ¼³¸íÇÑ´Ù. . ÇÁ·Î±×·¥¾È¿¡¼­ ½© º¯¼ö¸¦ »ç¿ëÇÏ´Â ¹æ¹ý . ½© ÇÁ·Î±×·¥º¸´Ù ºü¸£°Ô ½ÇÇàÇÏ°í, ÀÏ·ÃÀÇ ¸í·É¾îµéÀ» ¼±¾ðÇÏ°í ÀÖ´Â Shell FunctionÀÇ »ý¼º . ½© ÇÁ·Î±×·¥À» ½ÇÇàÇÏ´Â ´Ù¾çÇÑ ¹æ½Ä . ½© ÇÁ·Î±×·¥³»¿¡¼­ ¼öÇà °¡´ÉÇÑ ±â´Éµé -. »ç¿ëÀÚ·ÎÀÇ ÇÁ·ÒÇÁÆ® Ç¥½Ã ±â´É -. »ç¿ëÀÚ ÀÔ·Â Àбâ -. ÇÁ·Î±×·¥³»¿¡¼­ÀÇ ÁÖ¼®(Comments) ÁöÁ¤ ¹æ½Ä -. ÇÁ·Î±×·¥³»¿¡¼­ÀÇ ÀÔ·Â ¹æÇâÀüȯ(Redirection) -. ÇÁ·Î±×·¥ È帧 Á¦¾î(Program Flow Control) ½© ÇÁ·Î±×·¥¿¡ ´ëÇÑ ÀÚ¼¼ÇÑ ³»¿ëÀº Â÷ÈÄ °­ÀÇµÉ ½© ÇÁ·Î±×·¡¹Ö °úÁ¤¿¡¼­ ¼Ò°³µÈ´Ù. 2. ½© ÇÁ·Î±×·¥ÀÇ ÀÛ¼º ½© ÇÁ·Î±×·¥ ¶Ç´Â ½© ½ºÅ©¸³Æ®´Â ¼öÇàÇÒ ÀÏ·ÃÀÇ ¸í·É¾îµé°ú ÇÁ·Î±×·¥À» ±¸¼ºÇϱâ À§ÇØ »ç¿ëÇÑ ´Ù¾çÇÑ ÇÁ·Î±×·¥¹Ö ¹®ÀåµéÀÌ Æ÷ÇԵǾî ÀÖ´Â È­ÀÏÀ̸ç, ÀÌ È­ÀÏÀ» ½ÇÇàÇÔÀ¸·Î½á ÀÏ·ÃÀÇ ¸í·ÉµéÀ» ´ÜÀÏ ¸í·É¾îó·³ ½ÇÇàÇÒ ¼ö ÀÖ´Ù. ÀÌ¿Í °°Àº ÇÁ·Î±×·¥ È­ÀϵéÀº ÆíÁý±â¸¦ »ç¿ëÇÏ¿© ½ÇÇàÇÒ ¼ö ÀÖ´Ù. ºñ·Ï cat ¸í·É¾îÀÇ Ãâ·Â ¹æÇâÀüȯ ±â´ÉÀ» »ç¿ëÇÏ¿© ª°í ±âº»ÀûÀÎ ÇÁ·Î±×·¥À» ÀÛ¼ºÇÒ ¼ö´Â ÀÖÁö¸¸, ÀÌ °æ¿ì¿¡´Â ÀÛ¼ºÇÑ ÇÁ·Î±×·¥À» ¼öÁ¤Çϰųª, ±³Á¤Çϴµ¥ À־ Á¦¾àÀÌ Àֱ⠶§¹®¿¡ Åë»ó ÆíÁý±â¸¦ ÅëÇØ ÀÛ¼ºÇÑ´Ù. (ÁÖÀÇ) ½© ÇÁ·Î±×·¥ÀÇ À̸§À» ½© ¸í·É¾îÀÇ À̸§°ú µ¿ÀÏÇÏ°Ô ºÎ¿©ÇÏ´Â °ÍÀº ÇÇÇØ¾ß ÇÑ´Ù. ÀÌÀ¯´Â ó¸® ³»¿ëÀ» º¸ÀåÇÏÁö ¸øÇϱ⠶§¹®ÀÌ´Ù. ( ¿¹Á¦ ) ´ÙÀ½Àº cat ¸í·É¾î¿Í ed ÆíÁý±â¸¦ »ç¿ëÇÏ¿© µ¿ÀÏÇÑ ³»¿ëÀÇ ½© ÇÁ·Î±×·¥ È­ÀÏÀ» ÆíÁýÇÏ´Â °úÁ¤À» º¸¿©ÁÖ´Â ¿¹ÀÌ´Ù. ÀÌ ÇÁ·Î±×·¥¿¡¼­´Â ½Ã½ºÅÛ ³¯Â¥¹× ½Ã°£ Á¤º¸¸¦ Ç¥½ÃÇÏ´Â date ¸í·É°ú ½Ã½ºÅÛ»óÀÇ ÇöÀç ÀÛ¾÷ÇÏ°í ÀÖ´Â »ç¿ëÀÚ¸¦ È®ÀÎÇÏ´Â who ¸í·É¾î, »ç¿ëÀÚÀÇ ÇöÀç ÀÛ¾÷ µð·ºÅ丮ÀÇ Àý´ë °æ·Î¸íÀ» ¾Ë·ÁÁÖ´Â pwd ¸í·É¾î, ÇöÀç µð·ºÅ丮ÀÇ ³»¿ëÀ» Ç¥½ÃÇÏ´Â ls ¸í·É¾î¸¦ ÁöÁ¤ÇÏ°í ÀÖ´Ù. ±×¸®°í °¢ ¿¹¿¡¼­´Â ½ÇÇàÇÒ ¸í·É¾î¸¦ ÇϳªÀÇ ¸í·É¾î ¶óÀο¡ ;À» »ç¿ëÇÏ¿© ÁöÁ¤ÇÏ´Â ¿¹¿Í °¢°¢ÀÇ ¸í·É¾î ¶óÀο¡ ÁöÁ¤ÇÏ´Â ¿¹¸¦ º¸¿©ÁØ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $cat > prog1 ¦¢ ¦¢ date ; who ; pwd ; ls ¦¢ cat ¸í·É¾îÀÇ Ãâ·Â ¹æÇâÀüȯÀ» »ç¿ëÇÏ¿© ¦¢ <^d> ¦¢ ½© ÇÁ·Î±×·¥À» ÀÛ¼ºÇÏ°í ÀÖ´Ù. ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $ed prog1 ¦¢ ¶óÀÎ ÆíÁý±âÀÎ ed¸¦ »ç¿ëÇÏ¿© ½© ÇÁ·Î±×·¥À» ¦¢ ?prog1 ¦¢ ÀÛ¼ºÇÏ°í ÀÖ´Ù. ¦¢ a ¦¢ ¦¢ date ¦¢ ¦¢ who ¦¢ ¦¢ pwd ¦¢ ¦¢ ls ¦¢ ¦¢ . ¦¢ ¦¢ w ¦¢ ¦¢ q ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ --------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­´Â Shell ProgramÀÇ ½ÇÇà ¹æ½Ä¿¡ ´ëÇØ ¼³¸íÇÕ´Ï´Ù. --------------------------------------------------------------------------- #72 À¯´Ï½Ã½º (adunis2 ) Shell ProgramÀÇ ½ÇÇà ¹æ½Ä°ú ¿¡·¯ °ËÁõ 03/17 18:58 116 line Shell ProgramÀÇ ½ÇÇà ¹æ½Ä°ú Debug -------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. --------------------------------------------------------------------- 1. Shell ProgramÀÇ ½ÇÇà »õ·Î »ý¼ºµÇ´Â È­ÀÏ¿¡ ´ëÇØ ºÎ¿©µÇ´Â Default Permission(Á¢±Ù±ÇÇÑ)Àº rw-rw-rw-·Î ½ÇÇà Á¢±Ù±ÇÇÑÀ» ºÎ¿©ÇÏÁö ¾Ê´Â´Ù. ºñ·Ï ½© ÇÁ·Î±×·¥¿¡ ½ÇÇà °¡´ÉÇÑ ¸í·É¾îµéÀÌ µé¾î ÀÖ´Ù ÇÏ´õ¶óµµ, È­ÀÏ¿¡ ½ÇÇà ±ÇÇÑÀÌ ºÎ¿©µÇÁö ¾Ê±â ¶§¹®¿¡ ½ÇÇàÀº ºÒ°¡´ÉÇÏ´Ù. ÀÌ ¶§¹®¿¡ ÇÁ·Î±×·¥À» ½ÇÇàÇϱâ À§Çؼ­´Â ´ÙÀ½°ú °°Àº ¹æ½ÄÁß Çϳª¸¦ Àû¿ëÇØ¾ß ÇÑ´Ù. . ½ÇÇàÇÒ ¸í·É¾îµéÀÌ µé¾îÀÖ´ÂÇÁ·Î±×·¥ È­ÀÏÀ» ½ÇÇàÇϱâ À§Çؼ­ sh ¸í·É¾î¸¦ »ç¿ëÇÑ´Ù. . ÇÁ·Î±×·¥ È­ÀÏÀ» ½ÇÇàÇϱâÀ§ÇØ ¿ì¼± chmod ¸í·É¾î¸¦ ½ÇÇàÇÏ¿©, ½ÇÇà ±ÇÇÑÀ» ºÎ¿©ÇÑÈÄ, ¸í·É¾î¸¦ ½ÇÇàÇÏ´Â°Í Ã³·³ ÇÁ·Î±×·¥ È­ÀÏÀ» ½ÇÇàÇÑ´Ù. sh sh ¸í·É¾î´Â ¸¶Ä¡ ¸í·É¾îµéÀÌ Å͹̳ο¡¼­ ÀԷµǾîÁø °Íó·³ ÇÁ·Î±×·¥ È­Àϳ»ÀÇ ¸í·É¾îµéÀ» ½ÇÇàÇÑ´Ù. sh ¸í·É¾î´Â ´Ù¸¥ ½©À» ºÐ±âÇÑÈÄ, ±× ½©³»¿¡¼­ ÇÁ·Î±×·¥À» ½ÇÇàÇÑ´Ù. À̶§ ºÐ±âµÇ¾î »ý¼ºµÈ ½©Àº, À̸¦ ¼­ºê ½©À̶ó ÇÑ´Ù., Çѹø¿¡ ÇϳªÀÇ ÇÁ·Î¼¼½º¸¸À» ó¸®ÇÒ ¼ö ÀÖ´Â ÇöÀç ½©°ú µ¿ÀÏÇÑ Á¾·ùÀÇ ½©·Î »ý¼ºµÈ´Ù.( ÇöÀç ½©ÀÇ º¹»çº») ½© ÇÁ·Î±×·¥ È­ÀÏÀº ÇϳªÀÇ ÇÁ·Î¼¼½º·Î °£ÁֵDZ⠶§¹®¿¡ ½© ÇÁ·Î±×·¥³»¿¡ ¼±¾ðµÇ¾î ÀÖ´Â ¸ðµç ¸í·É¾îµéÀº ¼­ºê ½©¿¡ ÀÇÇؼ­ ½ÇÇàµÉ ¼ö ÀÖ´Ù. ´ÙÀ½Àº sh ¸í·É¾î¸¦ ÀÌ¿ëÇØ ½© ÇÁ·Î±×·¥À» ½ÇÇàÇÏ´Â ¿¹ÀÌ´Ù. $ls -l prog1 -rw-rw-rw- 1 user1 admin 1672 Jul 7 13:23 prog1 $sh prog1 ( prog1 ÇÁ·Î±×·¥ÀÇ ½ÇÇà °á°ú°¡ Ç¥½ÃµÈ´Ù. ) chmod chmod ¸í·É¾î´Â ¸í·É¾îó·³ ½© ÇÁ·Î±×·¥À» ½ÇÇàÇϱâ À§ÇØ ÇÁ·Î±×·¥ È­ÀÏ¿¡ ½ÇÇà ±ÇÇÑÀ» ºÎ¿©Çϱâ À§ÇØ »ç¿ëÇÑ´Ù. ½©Àº ÇÁ·Î±×·¥ È­ÀÏÀ» ½ÇÇàÇϱâ À§ÇØ »õ·Î¿î ¼­ºê ½©À» ºÐ±âÇÑ´Ù. À̶§ ºÐ±âµÇ¾îÁö´Â ¼­ºê ½©Àº ÇöÀç ½©°ú µ¿ÀÏÇÑ Á¾·ùÀÇ ½©·Î¼­ ºÐ±âµÈ´Ù. chmod ¸í·É¾î¿¡ Á¢±Ù ±ÇÇÑÀ» ÁöÁ¤Çϱâ À§ÇØ 8Áø¼ö ¶Ç´Â ½Éº¼¸¯ ±âÈ£¸¦ »ç¿ëÇÒ ¼ö ÀÖ´Ù. ´ÙÀ½ ¿¹´Â chmod ¸í·ÉÀ» ÀÌ¿ëÇØ ½© ÇÁ·Î±×·¥À» ±âµ¿ÇÏ´Â ¹æ½ÄÀ» º¸¿©ÁØ´Ù. $chmod 744 prog1 $ls -l prog1 -rwxr--r-- 1 user1 admin 1672 Jul 7 13:23 prog1 $prog1 ( prog1ÀÇ Ãâ·ÂÀÌ Ç¥½ÃµÈ´Ù. ) ÀÌ ¿¹¿¡¼­ prog1 È­ÀÏ¿¡ ¼ÒÀ¯ÀÚ ½ÇÇà ±ÇÇÑÀ» ºÎ¿©Çϱâ À§ÇØ 8Áø¼ö·Î 744¶ó´Â Á¢±Ù±ÇÇÑÀ» ÁöÁ¤ÇÏ°í ÀÖ´Ù. ±×ÈÄ prog1 È­ÀÏÀ» ½ÇÇàÇÑ´Ù. 2. ½© ÇÁ·Î±×·¥ÀÇ ´ëü ½ÇÇà¹æ½Ä ¸í·É¾î³ª ÇÁ·Î±×·¥ È­ÀÏÀÌ ½ÇÇàµÉ¶§, ½©Àº ½© ¸í·É¾î ½ÇÇට¿Í ¸¶Âù°¡Áö·Î µð½ºÅ©»ó¿¡¼­ ÁöÁ¤ÇÑ È­ÀϸíÀ» °®´Â ÇÁ·Î±×·¥ È­ÀÏÀ» °Ë»öÇÑ´Ù. ½©ÀÌ ÇØ´ç ÇÁ·Î±×·¥À» ¹ß°ßÇϸéÀº, ¸í·É¾î ¶óÀΠ󸮸¦ °è¼ÓÇÏ°í, ÇÁ·Î±×·¥À» ½ÇÇàÇϱâ À§Çؼ­ »õ·Î¿î ÇÁ·Î¼¼½º¸¦ ºÐ±âÇÑ´Ù. »õ·Î¿î ÇÁ·Î¼¼½º¸¦ ºÐ±âÇÏÁö ¾Ê°í ÇÁ·Î±×·¥À» ½ÇÇàÇϱâ À§Çؼ­´Â .(dot) ¿Í exec ¸í·É¾î¸¦ »ç¿ëÇÑ´Ù. .(dot) .(dot) ¸í·É¾î´Â ½© ÇÁ·Î±×·¥ÀÌ Á¾·áµÈÈÄ¿¡µµ ½ÇÇàÀ» °è¼ÓÇϱâ À§Çؼ­ ÇöÀçÀÇ ÇÁ·Î¼¼½º ÀÏºÎ·Î½á ½© ÇÁ·Î±×·¥À» ½ÇÇàÇÑ´Ù. . ¸í·ÉÀ» ÀÌ¿ëÇÏ¿© ½© ÇÁ·Î±×·¥À» ½ÇÇàÇÒ °æ¿ì¿¡´Â ½ÇÇà ±ÇÇÑÀ» ÇÊ¿ä·Î ÇÏÁö ¾Ê´Â´Ù. ±×·¯³ª ÄÄÆÄÀÏµÈ ÇÁ·Î±×·¥µéÀº . ¸í·ÉÀ» ÀÌ¿ëÇØ ½ÇÇàÇÒ ¼ö ¾ø´Ù. ÀÌ ¸í·É¾îÀÇ Çü½ÄÀº ". program" Çü½ÄÀ¸·Î ½ÇÇàÇÑ´Ù. exec exec ¸í·É¾î´Â ½©ÀÇ ÀϺηνá Á¦°øµÇ´Â ¸î°¡Áö °íÀ¯ÀÇ(Built-in) ½© ¸í·É¾îÁß ÇϳªÀÌ´Ù. ÇÁ·Î±×·¥Àº ½©¿¡ Áï½Ã À¯È¿Çϱ⠶§¹®¿¡, »õ·Î¿î ÇÁ·Î¼¼½º´Â ÇÁ·Î±×·¥À» ½ÇÇàÇϱâ À§ÇØ ºÐ±âµÇÁö ¾Ê´Â´Ù. exec ¸í·É¾î´Â ÇöÀçÀÇ ÇÁ·Î¼¼½º¸¦ µ¤¾î¾º¿ì°í, ´ëÄ¡Çϸç ÁöÁ¤ÇÑ ÇÁ·Î±×·¥À» ½ÇÇàÇÑ´Ù. ±×·¯³ª ÀÌ °æ¿ì ÇÁ·Î±×·¥ÀÌ Á¾·áÇÑÈÄ Á¦¾î°¡ º»·¡ÀÇ ½©¿¡ µÇµ¹·ÁÁöÁö ¾Ê´Â´Ù. Áï ÀÌ´Â ÇÁ·Î±×·¥ ½ÇÇàÀ» °³½ÃÇÒ¶§ À§Ä¡ÇÏ´ø ½©Àº Á¾·áµÈ´Ù´Â °ÍÀ» ÀǹÌÇÑ´Ù. exec ¸í·É¾î´Â ÇÁ·Î±×·¥À» ½ÇÇàÇϱâ À§ÇØ ½ÇÇà ±ÇÇÑÀ» ÇÊ¿ä·ÎÇÏÁö ¾Ê´Â´Ù. ¶ÇÇÑ ÀÌ ¸í·ÉÀº ÄÄÆÄÀÏµÈ ÇÁ·Î±×·¥µµ ½ÇÇàÇÒ ¼ö ÀÖ´Ù. ÀÌ ¸í·ÉÀÇ »ç¿ë Çü½ÄÀº "exec program"ÀÇ Çü½ÄÀÌ´Ù. 3. ÇÁ·Î±×·¥ ¿¡·¯ °ËÁõ sh ¸í·É¾î´Â ¶ÇÇÑ ÇÁ·Î±×·¥ ¿¡·¯¸¦ ¹ß°ßÇÒ ¼ö ÀÖ´Ù. ÀÌ ¸í·ÉÀº ÇÁ·Î±×·¥³»¿¡ ¿¡·¯ÀÇ À§Ä¡¸¦ ã±âÀ§ÇÑ µÎ°¡ÁöÀÇ À¯¿ëÇÑ ¿É¼ÇÀ» Á¦°øÇÑ´Ù. ÀÌ µÎ ¿É¼ÇÀº ´Üµ¶À¸·Î ¶Ç´Â ÇÔ²² ÁöÁ¤ÇÏ¿© »ç¿ëÇÒ ¼ö ÀÖ´Ù. -v ½ÇÇàµÇ´Â °¢°¢ÀÇ ¶óÀÎÀ» Ç¥½ÃÇÑ´Ù. -x ½ÇÇàµÇ´Â ¸í·É¾î¿Í ÀÎÀÚµéÀ» Ç¥½ÃÇÑ´Ù. ÇÁ·Î±×·¥³»ÀÇ ¿¡·¯´Â ÆíÁý±â¸¦ »ç¿ëÇÏ¿© ±³Á¤ÇÒ ¼ö ÀÖ´Ù. sh ¸í·É¾îÀÇ ¿É¼ÇÀº ÀϹÝÀûÀ¸·Î º¹ÇÕ ÇÁ·Î±×·¥¿¡¼­ »ç¿ëµÈ´Ù. ( ¿¹Á¦ ) ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $sh -v prog1 ¦¢ ¦¢ $sh -x prog1 ¦¢ ¦¢ $sh -xv prog1 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ --------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­´Â Shell Variable¿¡ ´ëÇؼ­ ¼³¸íÇÕ´Ï´Ù. --------------------------------------------------------------------------- #73 À¯´Ï½Ã½º (adunis2 ) Shell ProgrammingÀÇ ±âÃÊ: Variable 03/19 12:07 147 line Shell ProgrammingÀÇ ±âÃÊ : Variables -------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. --------------------------------------------------------------------- 1. º¯¼ö(Variables) º¯¼ö´Â º¯°æÇÒ ¼ö ÀÖ´Â Á¤º¸¸¦ °®°íÀÖ´Â ¸Þ¸ð¸®³»ÀÇ ÁöÁ¤µÈ ±â¾ï ¿µ¿ªÀÌ´Ù. º¯¼ö´Â ±ä Á¤º¸ ¶Ç´Â ¼ö½Ã·Î º¯°æµÇ´Â Á¤º¸¸¦ ÂüÁ¶Çϱâ À§Çؼ­ ÇÁ·Î±×·¥¿¡¼­ ÀÚÁÖ »ç¿ëµÈ´Ù. º¯¼ö¿¡´Â ´ÙÀ½°ú °°Àº 4°¡Áö Á¾·ù°¡ ÀÖ´Ù. ÁöÁ¤ º¯¼ö(Named Vriables) »ç¿ëÀÚ¿¡ ÀÇÇØ Á¤Àǵǰí, º¯°æµÇ´Â º¯¼ö ½© º¯¼ö(Shell Variables) ½©¿¡ ÀÇÇØ Á¤Àǵǰí, »ç¿ëÀÚ¿¡ ÀÇÇØ º¯°æµÉ ¼ö ÀÖ´Â º¯¼ö Ư¼ö º¯¼ö(Special Variables) ½©¿¡ ÀÇÇØ Á¤Àǵǰí, »ç¿ëÀÚ¿¡ ÀÇÇØ º¯°æµÉ ¼ö ¾ø´Â º¯¼ö Æ÷Áö¼Å³Î ÆĶó¸ÞÅÍ(Positional Parameter) ÇÁ·Î±×·¥¿¡¼­ ÂüÁ¶µÇ´Â º¯¼ö; ÀÌ º¯¼ö¿¡´Â ¸í·É¾î ¶óÀο¡¼­ ÁöÁ¤µÈ °¢°¢ÀÇ ÀÎÀÚµéÀÌ ¼³Á¤µÈ´Ù. º¯¼ö¿Í º¯¼ö¿¡ ¼³Á¤µÈ °ªµéÀº ·Î±×ÀÎ ¼¼¼Ç µ¿¾ÈÀÇ ÇöÀç ÇÁ·Î¼¼½º¿¡°Ô¸¸ (current process) À¯È¿ÇÏ´Ù. ±×·¯³ª º¯¼ö´Â export ¸í·É¾î¸¦ »ç¿ëÇÏ¿© ´Ù¸¥ ÇÁ·Î¼¼½º¿¡ Àü´ÞÇÒ ¼ö ÀÖ´Ù. ¶ÇÇÑ º¯¼ö´Â .profile³»¿¡ Á¤ÀÇÇØ µÒÀ¸·Î½á ·Î±×Àνÿ¡ ÀÚµ¿ÀûÀ¸·Î Á¤ÀÇÇÒ ¼ö ÀÖ´Ù. »ç¿ëÀÚ°¡ ƯÁ¤ º¯¼ö¿¡ Á¤ÀǵǾî ÀÖ´Â º¯¼öÀÇ ³»¿ëÀ» È®ÀÎÇϱâ À§Çؼ­´Â echo ¸í·É¾î¸¦ »ç¿ëÇÏ°í, º¯¼ö¸¦ »èÁ¦Çϱâ À§Çؼ­´Â unset variable_name Çü½ÄÀ¸·Î unset ¸í·É¾î¸¦ »ç¿ëÇÑ´Ù. º¯¼ö¿Í °ü·ÃµÈ ÀÚ¼¼ÇÑ ³»¿ëÀº ÀÌÈÄ Çϳª¾¿ ¼³¸íÇÑ´Ù. 2. ÁöÁ¤ º¯¼ö(Named Variables) ÀÌ º¯¼ö´Â »ç¿ëÀÚ¿¡ ÀÇÇØ Á¤Àǵǰí, »ç¿ëÀÚ°¡ º¯°æÇÒ ¼ö ÀÖ´Ù. ÁöÁ¤ º¯¼ö¸¦ Á¤ÀÇÇÏ´Â ¾ç½ÄÀº ´ÙÀ½°ú °°´Ù. variable_name=value variable_nameÀº ¹®ÀÚ ¶Ç´Â ¹ØÁÙ ¹®ÀÚ·Î ½ÃÀÛÇÏ´Â °ø¹éÀÌ ¾Æ´Ñ ÀÏ·ÃÀÇ ¹®ÀÚµé·Î ±¸¼ºµÉ ¼ö ÀÖ°í, variable_name°ú value »çÀÌÀÇ =ÀÇ ÀüÈÄ¿¡´Â °ø¹éÀ» »ç¿ëÇÒ ¼ö ¾ø´Ù. ±×¸®°í value¿¡ ¸í·É¾î ¶óÀλóÀÇ ¿É¼Ç°ú ÀÎÀÚµéó·³ °ø¹éÀÌ Àְųª, °ø¹éÀ¸·Î ±¸ºÐµÇ´Â ´Ü¾î·Î ±¸¼ºµÈ ¹®ÀÚ¿­À» ÁöÁ¤ÇÒ °æ¿ì¿¡´Â º¸È£¹®ÀÚ¸¦ »ç¿ëÇÏ¿© ¹­¾îÁÖ¾î¾ß ÇÑ´Ù. À̶§ º¸È£¹®ÀÚ·Î µû¿ÈÇ¥, ½Öµû¿ÈÇ¥, ¿ªµû¿ÈÇ¥¸¦ »ç¿ëÇÒ¼ö Àִµ¥, ÀÌÁß¿¡¼­ ¿ªµû¿ÈÇ¥´Â ¸í·É¾î ´ëÄ¡¸¦ ¼öÇàÇÏ´Â ºÎ°¡ÀûÀÎ ±â´ÉÀ» ¼öÇàÇÑ´Ù. ¿¹¸¦µé¸é var=`pwd`¶ó ÁöÁ¤ÇÒ °æ¿ì¿¡´Â var¶ó´Â º¯¼ö¿¡ pwd¶ó´Â ¹®ÀÚ¿­ÀÌ ¼³Á¤µÇ´Â °ÍÀÌ ¾Æ´Ï¶ó, pwd ¸í·ÉÀ» ½ÇÇàÇÑ °á°ú°¡ ¼³Á¤µÈ´Ù. º¯¼ö ¼³Á¤½Ã ÁÖÀÇÇÒ °ÍÀº value·Î¼­ ÆÄÀÌÇÁ ¹®ÀÚ, ¹æÇâÀüȯ ¹®ÀÚ ¶Ç´Â & ½Éº¼°ú °°Àº Ư¼ö ¹®ÀÚ´Â »ç¿ëÇÒ ¼ö ¾ø´Ù´Â °ÍÀÌ´Ù. ÀÌ·¯ÇÑ º¯¼öÀÇ Á¤ÀÇ´Â ½© ÇÁ·ÒÇÁÆ®»ó¿¡¼­ ÀÔ·ÂÇÒ ¼öµµ ÀÖ°í, ·Î±×Àνà ÀÚµ¿ÀûÀ¸·Î ¼³Á¤Çϱâ À§ÇØ .profile¿¡ ¼±¾ðÇØ µÑ¼öµµ ÀÖ´Ù. ´ÙÀ½Àº ÁöÁ¤º¯¼ö¸¦ Á¤ÀÇÇÏ´Â ¿¹ÀÌ´Ù. $var=1991 $ll=`ls -al` $msg="Reminder: Staff meeting today at 4 p.m." À§ÀÇ Ã¹¹ø° ¿¹¿¡¼­ º¯¼ö¿¡ ¼ýÀÚÇü½ÄÀÇ ¹®ÀÚ¿­À» ÇÒ´çÇÑ´Ù. µÎ¹ø° ¿¹¿¡¼­´Â ls -al ¸í·ÉÀÇ ½ÇÇà °á°ú¸¦ llÀ̶ó´Â º¯¼ö¿¡ ÇÒ´çÇÑ´Ù. ¸¶Áö¸· ¿¹´Â ÀÏ·ÃÀÇ ¹®ÀåÀ» msg¶ó´Â º¯¼ö¿¡ ¼³Á¤ÇÏ´Â °ÍÀ» º¸¿©ÁØ´Ù. ÀÌ ¿¹¿¡¼­ ¹®Àå °¡¿îµ¥ °ø¹éÀÌ ÀÖÀ½À¸·Î ÀÎÇØ ½Öµû¿ÈÇ¥·Î ¹­Àº °ÍÀ» ÁÖ¸ñÇϱ⠹ٶõ´Ù. Á¤ÀÇµÈ º¯¼ö¸¦ ÂüÁ¶ÇÏ´Â ¹æ½ÄÀº ÀÌÈÄ ¼³¸íÇÑ´Ù. 3. ½© º¯¼ö(Shell Variables) ½©Àº »ç¿ëÀÚÀÇ ½© ȯ°æ°ú ¿¬°üµÇ´Â Á¤º¸µéÀ» °®°í ÀÖ´Â º¯¼öµéÀ» Á¦°øÇÑ´Ù. ÀÌ º¯¼öµéÀº ½©¿¡ÀÇÇØ ·Î±×ÀÎ Ãʱ⿡ ¼³Á¤µÈ´Ù. ±×·¯³ª »ç¿ëÀÚ¿¡ ÀÇÇØ º¯°æµµ °¡´ÉÇÏ´Ù. ¿¹¸¦µé¸é, »ç¿ëÀÚÀÇ È¨ µð·ºÅ丮 ¶Ç´Â ½© ÇÁ·ÒÇÁÆ®¸¦ ¼³Á¤Çϱâ À§ÇØ ½©Àº ÀÌ º¯¼öµéÀ» ÀÌ¿ëÇÑ´Ù. ½© º¯¼öÀÇ Çü½ÄÀº ÁöÁ¤ º¯¼ö¿Í À¯»çÇÏ´Ù. shell_variable_name=value ½© º¯¼öÀÇ À̸§Àº ¸ðµÎ ´ë¹®ÀÚÀÎ °ÍÀ» ÁÖ¸ñÇØ¾ß Çϸç, ÁöÁ¤ º¯¼ö¿¡¼­¿Í ¸¶Âù°¡Áö·Î =À» ÀüÈÄÇØ °ø¹éÀ» ÁöÁ¤ÇÒ ¼ö ¾ø°í, °ø¹éÀÌ µé¾îÀÖ´Â value¸¦ ÁöÁ¤Çϱâ À§Çؼ­´Â ¹ÙµíÀÌ µû¿ÈÇ¥·Î ¹­¾î ÁÖ¾î¾ß ÇÑ´Ù. ½© º¯¼öÀÇ °ªÀ» º¯°æÇϱâ À§Çؼ­ ½© ÇÁ·ÒÇÁÆ®¿¡¼­ »õ·Î¿î °ªÀ¸·Î ±âÁ¸ÀÇ °ªÀ» ´ëÄ¡ÇÑ´Ù. ¿¹¸¦µé¸é, PS1="cmd? "¶ó°í ÁöÁ¤Çϸé, Åë»ó $·Î Ç¥½ÃµÇ´Â ÇÁ·ÒÇÁÆ®°¡ PS1 º¯¼ö¿¡ ¼³Á¤µÈ cmd? ¶ó´Â ÇÁ·ÒÇÁÆ®·Î ¹Ù²î°Ô µÈ´Ù. ÀϹÝÀûÀ¸·Î ¸¹ÀÌ »ç¿ëµÇ´Â ½© º¯¼ö¿Í ¼³Á¤µÇ´Â °ªÀº ´ÙÀ½°ú °°´Ù. HOME ·Î±×Àνà À§Ä¡Çϴ Ȩµð·ºÅ丮ÀÇ °æ·Î¸í IFS ½©¿¡ÀÇÇØ »ç¿ëµÇ´Â ³»ºÎÀûÀÎ ÇÊµå ±¸º°ÀÚ LOGNAME »ç¿ëÀÚÀÇ ·Î±×ÀÎ ¸í LPDEST »ç¿ëÀÚ°¡ ÇÁ¸°Æ® ¿ä±¸½Ã °ü¸®ÀÚ¿¡ ÀÇÇØ ÁöÁ¤µÈ µðÆúÆ® ÇÁ¸°ÅÍ·Î Ãâ·ÂµÇ´Âµ¥ ÀÌ °æ¿ì »ç¿ëÇÒ ´Ù¸¥ ÇÁ¸°ÅÍ ¸í MAIL »ç¿ëÀÚÀÇ ¸ÞÀÏ È­Àϸí(»ç¼­ÇÔ) PATH ¸í·É¾î ½ÇÇà½Ã¿¡ °Ë»öµÇ´Â µð·ºÅ丮µéÀÇ ¸ñ·Ï PS1 ½©ÀÇ ±âº» ÇÁ·ÒÇÁÆ® PS2 ½©ÀÌ Ãß°¡ÀûÀÎ ÀÔ·ÂÀ» ¿ä±¸ÇÒ¶§ Ç¥½ÃµÇ´Â ¼­ºê ÇÁ·ÒÇÁÆ® TERM Å͹̳ΠÀ̸§ 4. Ư¼ö º¯¼ö(Special Variable) ½©¿¡ ÀÇÇØ ¼³Á¤µÇ°í, ÀбâÀü¿ë Ư¼ö º¯¼ö´Â ¸í·É¾î ¶óÀΰú ¸í·É¾î ½ÇÇàÀÇ »óÅ¿¡ ´ëÇÑ Á¤º¸¸¦ °®°íÀÖ´Ù. ÀÌ º¯¼öÀÇ °ªÀº »ç¿ëÀÚ¿¡ ÀÇÇØ º¯°æµÉ ¼ö ¾ø´Ù. ºó¹øÈ÷ »ç¿ëµÇ´Â Ư¼ö º¯¼ö´Â ´ÙÀ½°ú °°´Ù. $# ½©¿¡ ÀÇÇØ ¸í·É¾î ¶óÀÎ ÀÎÀÚ(Arguments)ÀÇ °¹¼ö°¡ ¼³Á¤µÈ´Ù. $* ½©¿¡ ÀÇÇØ ¸ðµç ¸í·É¾î ¶óÀÎ ÀÎÀÚµéÀÌ ¼³Á¤µÈ´Ù. $0 ½©¿¡ ÀÇÇØ ÇöÀçÀÇ ÇÁ·Î±×·¥ À̸§ÀÌ ¼³Á¤µÈ´Ù. $$ ÇöÀç ½ÇÇàÁßÀÎ ÇÁ·Î¼¼½ºÀÇ PID°¡ ¼³Á¤µÈ´Ù. $! Á÷Àü¿¡ background¿¡¼­ ½ÇÇàµÈ ÇÁ·Î¼¼½ºÀÇ PID°¡ ¼³Á¤µÈ´Ù. 5. Æ÷Áö¼Å³Î ÆĶó¸ÞÅÍ(Positional Parameter) Æ÷Áö¼Å³Î ÆĶó¸ÞÅÍ´Â º¯¼öÀÇ ¶Ç´Ù¸¥ Á¾·ùÀÌ´Ù. Æ÷Áö¼Å³Î ÆĶó¸ÞÅÍ¿¡ ¼³Á¤µÇ´Â °ªÀº ¸í·É¾î ¶óÀο¡ ÁöÁ¤µÈ ÀÎÀÚµéÀÌ ½©¿¡ÀÇÇØ Â÷·Ê´ë·Î ÇÒ´çµÇ¾î Áø´Ù. ÀÌ º¯¼ö´Â ½© ÇÁ·Î±×·¥¿¡¼­ ÀÚÁÖ »ç¿ëµÈ´Ù. ¸í·É¾î ¶óÀÎÀº 128°³ÀÇ ÀÎÀÚ¸¦ °¡Áú¼ö ÀÖ´Â ¹Ý¸é¿¡, ½©Àº º¯¼ö $1ºÎÅÍ $9 ±îÁöÀÇ 9°³ÀÇ Æ÷Áö¼Å³Î ÆĶó¸ÞÅÍ¿¡ ¸í·É¾î ¶óÀÎÀÇ Ã³À½ 9°³ÀÇ ÀÎÀÚµéÀÇ °ª¸¸À» ÀúÀåÇÑ´Ù. ±×·±ÀÌÀ¯·Î ½© ÇÁ·Î±×·¥Àº 9°³ÀÇ ÀÎÀÚ¸¸À» ÂüÁ¶ÇÑ´Ù. ¿¹¸¦µé¸é, ¸í·É¾î ¶óÀο¡¼­ ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ prog2 arg1 arg2 arg3 ¦¢¶ó°í ÁöÁ¤ÇÏ¿´´Ù¸é ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ arg1Àº $1 º¯¼ö¿¡, arg2´Â $2 º¯¼ö¿¡ ±×¸®°í arg3´Â $3 º¯¼ö¿¡ ÀúÀåµÈ´Ù. ÀÌ¹Ì ¼³¸íÇÑ ½© º¯¼öÀÎ $*´Â ¸í·É¾î ¶óÀο¡ ±â¼úµÈ ¸ðµç ÀÎÀÚ°¡ ÇѲ¨¹ø¿¡ ¼³Á¤µÇ¸ç, $# º¯¼ö´Â ¸í·É¾î ¶óÀÎÀÇ ÀÎÀÚÀÇ °¹¼ö°¡ ¼³Á¤µÈ´Ù. shift ¸í·É¾î´Â Æ÷Áö¼Å³Î ÆĶó¸ÞÅÍ·Î ¼³Á¤µÇ´Â 9°³ÀÇ ÀÎÀÚ ÀÌ¿ÜÀÇ ÀÎÀÚµéÀ» ÂüÁ¶Çϱâ À§ÇØ »ç¿ëÇÑ´Ù. ÇÁ·Î±×·¥¿¡¼­ óÀ½ ½ÇÇàÇÑ shift ¸í·É¾î¸¦ »ç¿ëÇϸé 10¹ø° ÀÎÀÚ¸¦ ÂüÁ¶ÇÒ ¼ö ÀÖ°Ô µÈ´Ù. ¿©·¯¹ø shift ¸í·É¾î¸¦ »ç¿ëÇÔÀ¸·Î½á ±×¿ÜÀÇ ÀÎÀڵ鵵 ¾ï¼¼½ºÇÒ ¼ö ÀÖ´Ù. À§ÀÇ ¿¹¿¡¼­ ÇѹøÀÇ shift ¸í·ÉÀ» »ç¿ëÇß´Ù°í °¡Á¤Çϸé, arg2°¡ $1¿¡ ÀúÀåµÇ°í, arg3°¡ $2¿¡ ÀúÀåµÈ´Ù. ÀÌ·ÎÀÎÇØ arg1Àº ÂüÁ¶ ºÒ°¡´ÉÇÏ°Ô µÈ´Ù. --------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­´Â º¯¼öÀÇ ÂüÁ¶ ¹æ½Ä¹× export¿¡ ´ëÇؼ­ ¼³¸íÇÕ´Ï´Ù. --------------------------------------------------------------------------- #74 À¯´Ï½Ã½º (adunis2 ) Shell ±âÃÊ: º¯¼öÀÇ ÂüÁ¶¹× export 03/20 11:03 171 line ½© ÇÁ·Î±×·¡¹ÖÀÇ ±âÃÊ: º¯¼öÀÇ ÂüÁ¶ ¹× export -------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. --------------------------------------------------------------------- 1. º¯¼ö(Variables)ÀÇ ÂüÁ¶ ¹æ½Ä º¯¼öÀÇ ³»¿ëÀ» ÂüÁ¶ÇÏ´Â ¹æ½Ä¿¡´Â ´ÙÀ½°ú °°Àº 2°¡Áö°¡ ÀÖ´Ù. . º¯¼ö°ªÀ¸·Î ¸í·É¾î¸¦ °®°íÀÖ´Â º¯¼öÀÇ ¸í·É¾î Ãâ·ÂÀ» Ç¥½ÃÇϱâ À§Çؼ­´Â º¯¼ö¸íÀÇ ¾Õ¿¡ $ ½Éº¼À» ºÙ¿© ÂüÁ¶ÇÑ´Ù. ¿¹¸¦µé¾î, ÀÌÀü °­ÀÇ¿¡¼­ ¼Ò°³µÆ´ø ÇöÀçÀÇ µð·ºÅ丮³»ÀÇ ³»¿ë¿¡ ´ëÇÑ ÀÚ¼¼ÇÑ Ãâ·ÂÀ» Ç¥½ÃÇϱâ À§ÇØ »ý¼ºÇß´ø ll=`ls -al` º¯¼ö¸¦ º¸ÀÚ. ¸¸¾à »ç¿ëÀÚ°¡ ¸í·É¾î ¶óÀο¡ $ll /etc¶ó°í ÁöÁ¤Çϸé, /etc µð·ºÅ丮ÀÇ ÀÚ¼¼ÇÑ ³»¿ëÀ» Ç¥½ÃµÈ´Ù. ÀÌ¿Í°°ÀÌ ¿î¿ëµÇ´Â ÁöÁ¤ º¯¼öµéÀº º¹ÇÕÀûÀÎ ¸í·É¾î ±¸Á¶ÀÇ Ãà¾àÇüÀ¸·Î½á À¯¿ëÇÏ´Ù. . º¯¼ö¿¡ ¼³Á¤µÇ¾î ÀÖ´Â °ªÀ» Ç¥½ÃÇϱâ À§Çؼ­´Â echo ¸í·É¾î¿Í ÇÔ²² $ ½Éº¼À» »ç¿ëÇÑ´Ù. echo ¸í·É¾î´Â ÀÚ½ÅÀÇ ÀÎÀÚ¸¦ Ç¥ÁØÃâ·ÂÀ¸·Î Ç¥½ÃÇÑ´Ù. ¿¹¸¦µé¾î Áö³­ °­ÀÇ¿¡¼­ Á¤ÀÇÇß´ø var1 º¯¼ö¸¦ º¸ÀÚ. ¸í·É¾î ¶óÀο¡ echo $var1À̶ó°í ÁöÁ¤ÇÏ°Ô µÇ¸é, ½©Àº echo ¸í·É¾î¿¡ ÁöÁ¤µÇ¾î ÀÖ´Â $var1À» º¯¼ö¸íÀ¸·Î ÀνÄÇÏ¿©, $var1 ´ë½Å¿¡ ÁöÁ¤ º¯¼ö var1¿¡ ¼³Á¤µÇ¾î ÀÖ´Â °ªÀÎ 1991·Î ´ëÄ¡ÇÑ´Ù. ±×ÈÄ ½©Àº ÀÎÀڷμ­ 1991À» echo ¸í·É¾î¿¡ Àü´ÞÇÔÀ¸·Î½á Å͹̳ο¡´Â 1991À̶ó´Â Ãâ·ÂÀÌ Ç¥½ÃµÈ´Ù. echo ¸í·É¾î´Â ¿ª½½·¹½¬(\)°¡ ¼±ÇàÇÏ´Â ¸î°³ÀÇ ¹®Àڵ鿡 ´ëÇØ Æ¯º°ÇÑ Àǹ̸¦ ºÎ¿©ÇÑ´Ù. ±×·±µ¥ ÀÌ·± ¹®ÀÚ¿¡¼­ »ç¿ëÇÏ´Â ¿ª½½·¹½¬´Â ½©¿¡ ÀÇÇØ ¶Ç´Ù¸¥ Àǹ̰¡ ºÎ¿©µÇ¾î ÀÖÀ½À¸·Î, ÀÌ ¹®ÀÚµéÀ» echo ¸í·É¾î°¡ ó¸®Çϵµ·Ï Çϱâ À§Çؼ­´Â ¹Ýµå½Ã µû¿ÈÇ¥·Î ¹­¾îÁÖ¾î¾ß ÇÑ´Ù. echo ¸í·É¾î¿¡ ÀÇÇØ Æ¯¼öÇÑ Àǹ̰¡ ºÎ¿©µÇ´Â ¹®ÀÚµéÀº ´ÙÀ½°ú °°´Ù. \n »õ·Î¿î ¶óÀÎÀ¸·Î À̵¿ÇÑ´Ù. Áï; \n ¹®ÀÚ°¡ ÁöÁ¤µÈ ÀÌÈÄÀÇ ¹®ÀÚ¿­Àº ´ÙÀ½ ¶óÀο¡ Ç¥½ÃµÈ´Ù. \t ´ÙÀ½ ÅÇ(tab)ÀÇ À§Ä¡¸¸Å­ °£°ÝÀ» ¹ú·Á Ãâ·ÂÇÑ´Ù. \c µ¿ÀÏ ¶óÀο¡ Ãâ·ÂÀ» °è¼ÓÇÏ¿© Ãâ·ÂÇÑ´Ù. ´ÙÀ½Àº º¯¼ö¸¦ ÂüÁ¶ÇÏ´Â ¹æ½ÄÀ» º¸¿©ÁÖ´Â ¿¹ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $dir=`pwd` ¦¢ ¦¢ $echo My current directory is $dir ¦¢ ¦¢ My current directory is /home/user1 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ º¯¼öÀÇ ¸í·É¾î ´ëÄ¡¸¦ º¸¿©ÁÖ´Â ¿¹ÀÌ´Ù. dirÀ̶ó´Â º¯¼ö¿¡ pwd ¸í·É¾î°¡ º¯¼ö°ªÀ¸·Î ¼³Á¤µÇ¾ú´Ù. À̶§ ÁÖ¸ñÇÒ °ÍÀº pwd ¸í·É¾î¸¦ ¿ªµû¿ÈÇ¥·Î µÑ·¯ ½×°í ÀÖ´Ù´Â °ÍÀÌ´Ù. ÀÌ·¸°Ô ÁöÁ¤ÇÏ¸é ½©Àº º¯¼ö°ªÀ¸·Î pwd ¸í·É¾îÀÇ ½ÇÇà °á°ú¸¦ ÁöÁ¤º¯¼ö¿¡ ÀúÀåÇÑ´Ù. ±×¸®°í echo ¸í·É¾î¸¦ ÅëÇØ º¯¼öÀÇ ³»¿ëÀ» È®ÀÎÇÏ°í ÀÖ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $echo $PS1 ¦¢ ¦¢ $ ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÀÌ ¿¹´Â PS1À̶ó´Â ½© º¯¼ö¿¡ ¼³Á¤µÇ¾î ÀÖ´Â ±âº» ÇÁ·ÒÇÁÆ®¸¦ È®ÀÎÇÏ´Â ¿¹ÀÌ´Ù. ÀÌ ¿¹¿¡¼­ÀÇ µÎ¹ø° ¶óÀÎÀÇ $ Ç¥½Ã´Â ÇÁ·ÒÇÁÆ®°¡ ¾Æ´Ï¶ó, echo ¸í·ÉÀÇ ½ÇÇà °á°úÀÇ Ãâ·ÂÀÓÀ» À¯ÀÇÇϱ⠹ٶõ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $echo $$ ¦¢ ÀÌ ¿¹´Â Ư¼ö º¯¼öÀÎ $$ÀÇ ³»¿ëÀ» ÂüÁ¶ÇÏ´Â ¹æ½ÄÀ» ¦¢ 485 ¦¢ º¸¿©ÁÖ´Â ¿¹ÀÌ´Ù. ÀÌ º¯¼ö¿¡´Â ÇöÀçÀÇ ÇÁ·Î¼¼½º ½Äº°ÀÚ°¡ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¼³Á¤µÈ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $echo 'Skipping a\n\nline' ¦¢ ÀÌ ¿¹´Â echo ¸í·É¾î¿¡ ÀÇÇØ ¦¢ Skipping a ¦¢ »ç¿ëµÇ´Â Ư¼ö¹®ÀÚ(\n)ÀÇ »ç¿ë¿¹¸¦ ¦¢ ¦¢ º¸¿©ÁÖ°í ÀÖ´Ù. ¦¢ line. ¦¢ ¿©±â¼­ \nÀº »õ·Î¿î ¶óÀÎÀ¸·ÎÀÇ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ À̵¿À» ÀǹÌÇÑ´Ù. 2. º¯¼öÀÇ export ·Î±×Àνÿ¡ »ç¿ëÀÚ¸¦ À§ÇØ /etc/passwd È­ÀÏ¿¡ ÁöÁ¤µÈ ½© ÇÁ·Î±×·¥ÀÇ º¹»çº»ÀÌ ½ÇÇàµÈ´Ù. ÀÌ ½© ÇÁ·Î¼¼½º´Â ½Ã½ºÅÛ »óÀÇ ´Ù¸¥ »ç¿ëÀÚµé°ú º°°³ÀÇ »ç¿ëÀÚÀÇ ¿î¿µ ȯ°æÀ» À¯Áö°ü¸®ÇÑ´Ù. »ç¿ëÀÚ´Â ½© º¯¼ö¸¦ ÅëÇØ ÀڽŸ¸ÀÇ °íÀ¯ÇÑ È¯°æÀ» ¼³°èÇÒ ¼ö ÀÖ´Ù. º¯¼ö ÇÒ´çÀ» ÅëÇØ ¼³°èÇÑ ÀÛ¾÷ ȯ°æÀº »ç¿ëÀÚ°¡ logoutÀ» ½ÇÇàÇÒ ¶§±îÁö À¯Áö°ü¸®µÈ´Ù. ±×·±µ¥ ÁÖ¸ñÇÒ °ÍÀÌ ÀÖ´Ù. º¯¼ö ÇÒ´çÀº ÇöÀçÀÇ ÇÁ·Î¼¼½º³»¿¡¼­¸¸ À¯È¿ÇÏ´Ù´Â °ÍÀÌ´Ù. ÇϳªÀÇ ÇÁ·Î±×·¥ÀÌ ½ÇÇàµÇ¸é, ÀÚ½Ä ÇÁ·Î¼¼½º°¡ ºÐ±âµÈ´Ù. À̶§ ºÎ¸ð ÇÁ·Î¼¼½º´Â ÀÚ½Ä ÇÁ·Î¼¼½º¿¡°Ô ÀÌ·± º¯¼öµéÀÇ °ªÀ» ÀÚµ¿ÀûÀ¸·Î Àü´ÞÇÏÁö ¾Ê´Â´Ù. ÀÌ·ÎÀÎÇØ ÀÚ½Ä ÇÁ·Î¼¼½º´Â ºÎ¸ð ÇÁ·Î¼¼½º³»¿¡ ÇÒ´çµÇ¾î ÀÖ´Â º¯¼ö ÇÒ´çÀ» ¾ËÁö ¸øÇÏ°Ô µÇ¸ç, ´õ¿ì±â ÀÚ½Ä ÇÁ·Î¼¼½º´Â ºÎ¸ð ÇÁ·Î¼¼½º¿¡ ¼±¾ðµÇ¾î ÀÖ´Â º¯¼öÀÇ °ªÀ» º¯°æÇÒ ¼ö ¾ø´Ù. ´ÙÀ½Àº À̻󿡼­ ¼³¸íÇÑ ³»¿ëÀ» º¸¿©ÁÖ´Â ¿¹ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ÀÌ ¿¹¿¡¼­ ±âº» ÇÁ·ÒÇÁÆ®¸¦¼³Á¤Çϱâ À§ÇÑ ¦¢ $PS1='my_prompt> ' ¦¢ ½© º¯¼öÀÎ PS1¿¡ my_prompt> ¶ó´Â »õ·Î¿î °ªÀ» ¦¢ my_prompt> sh ¦¢ ÇÒ´çÇß´Ù. ±×ÈÄ ÇÁ·ÒÇÁÆ®°¡ ´Ù¸£°Ô Ç¥½ÃµÇ´Â ¦¢ $exit ¦¢ °ÍÀ» È®ÀÎÇÒ ¼ö ÀÖ´Ù. ±×ÈÄ sh ¸í·É¾î¸¦ ¦¢ my_prompt> ¦¢ »ç¿ëÇÏ¿© ÀÚ½Ä ÇÁ·Î¼¼½º¸¦ ±âµ¿ÇÏ´Ï, ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÀÚ½Ä ÇÁ·Î¼¼½º°¡ ±âµ¿µÈ ÈÄ¿¡´Â ´Ù½Ã ÇÁ·ÒÇÁÆ®°¡ $·Î ¹Ù²î°Ô µÇ´Â °ÍÀ» º¸¿©ÁØ´Ù. ÀÌ´Â ºÎ¸ð ÇÁ·Î¼¼½º¿¡ ¼³Á¤µÈ my_prompt> °¡ ÀÚ½Ä ÇÁ·Î¼¼½º¿¡ Àü´ÞÀÌ µÇÁö ¾Ê¾Ò±â ¶§¹®ÀÌ´Ù. ³¡À¸·Î ÀÚ½Ä ÇÁ·Î¼¼½º¸¦ Á¾·áÇÏ¿©, ºÎ¸ð ÇÁ·Î¼¼½º¸¦ Àç±âµ¿Çϴϱî, ÀÌÀü¿¡ ¼³Á¤Çß´ø ÇÁ·ÒÇÁÆ®°¡ °è¼Ó À¯ÁöµÇ°í ÀÖ´Â °ÍÀ» È®ÀÎÇÒ ¼ö ÀÖ´Ù. export ¸í·É¾î export ¸í·É¾î´Â ½© ÇÁ·Î±×·¥¿¡¼­ Á¤È®ÇÑ º¯¼ö ´ëÄ¡¸¦ À§ÇØ Áß¿äÇÑ ¿ªÇÒÀ» ¼öÇàÇÑ´Ù. export ¸í·É¾î´Â ÀÚ½Ä ÇÁ·Î¼¼½º¿¡ º¯¼ö°ªÀÇ º¹»çº»À» Àü´ÞÇÑ´Ù. ÀÚ½Ä ÇÁ·Î¼¼½º´Â ÀÚ½ÅÀÌ »ç¿ëÇϱâ À§ÇØ º¯¼öÀÇ º¹»çº»À» ¹Þ¾Æ µéÀδÙ. ºñ·Ï ÀÚ½Ä ÇÁ·Î¼¼½º°¡ º¹»çº»ÀÇ °ªµéÀ» º¯°æÇÑ´Ù ÇÏ´õ¶óµµ, ºÎ¸ð ÇÁ·Î¼¼½º³»ÀÇ º¯¼öµéÀº º¯°æµÇÁö ¾Ê°í À¯ÁöµÈ´Ù. vi ÇÁ·Î±×·¥Àº ½ÇÇàµÉ¶§ Å͹̳ÎÀÇ ¿ë·®À» ¾Ë¾Æ¾ß Çϱ⠶§¹®¿¡ TERM º¯¼ö¿¡ Å͹̳ΠÁ¾·ù°¡ ¼³Á¤µÇ¾î ÀÖ¾î¾ß Çϸç, ¶ÇÇÑ TERM º¯¼öÀÇ °ªÀº vi ÇÁ·Î±×·¥Àº ÀÚ½Ä ÇÁ·Î¼¼½º·Î ºÐ±âµÇ¾î ½ÇÇàµÇ±â ¶§¹®¿¡ export µÇ¾î¾ß¸¸ ÇÑ´Ù. export ¸í·É¾îÀÇ Çü½ÄÀº ´ÙÀ½°ú °°´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ export variable_name ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ export ¸í·ÉÀº º¯¼öÀÇ ¼±¾ð ¸í·É°ú ¼¼¹ÌÄÝ·ÐÀ»(;) »ç¿ëÇÏ¿© µ¿ÀÏÇÑ ¸í·É¾î ¶óÀο¡ ÁöÁ¤ÇÒ ¼öµµ ÀÖ°í, °¢°¢ ´Ù¸¥ ¸í·É¾î ¶óÀο¡ ÁöÁ¤ÇÒ ¼öµµ ÀÖ´Ù. ´ÙÀ½Àº export ¸í·É¾î¸¦ »ç¿ëÇÏ´Â ¿¹¸¦ º¸¿©ÁØ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $PS1='cmd> ' ¦¢ ¦¢ cmd> export PS1 ¦¢ ¦¢ cmd> sh ¦¢ ¦¢ cmd> PS1='subprompt> ' ; export PS1 ¦¢ ¦¢ subprompt> sh ¦¢ ¦¢ subprompt> exit ¦¢ ¦¢ subprompt> exit ¦¢ ¦¢ cmd> ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÀÌ ¿¹ÀÇ Ã³À½¿¡¼­ PS1À̶ó´Â º¯¼ö¿¡ cmd1> À̶ó´Â °ªÀ» ÁöÁ¤ÇÔÀ¸·Î½á ±âº» ÇÁ·ÒÇÁÆ®¸¦ ¹Ù²Ù°í ÀÖ´Ù. ±×¸®°í export ¸í·ÉÀ» ÅëÇؼ­ ÇÁ·ÒÇÁÆ®¸¦ export½ÃŲÈÄ, sh ¸í·ÉÀ» ÅëÇØ ÀÚ½Ä ÇÁ·Î¼¼½º¸¦ ºÐ±â ÇÏ¿´´Ù. ±×·±µ¥ »õ·Î¿î ÇÁ·Î¼¼½º¿¡¼­µµ µ¿ÀÏÇÑ ÇÁ·ÒÇÁÆ®°¡ »ç¿ëµÇ´Â °ÍÀ» º¼ ¼ö ÀÖ´Ù. ÀÌ´Â º¯¼öÀÇ °ªÀÌ exportµÇ¾ú´Ù´Â °ÍÀ» ÀǹÌÇÑ´Ù. ±×¸®°í ÀÚ½Ä ÇÁ·Î¼¼½º¿¡¼­ ¶ÇÇѹø ÇÁ·ÒÇÁÆ®¸¦ ÀçÁ¤ÀÇÇÏ°í À̸¦ exportÇÏ¿´´Ù. ( À̶§ º¯¼öÀÇ ¼±¾ð°ú export ¸í·É¾î°¡ ;À» »ç¿ëÇÏ¿© µ¿ÀÏ ¶óÀο¡¼­ ¼±¾ðµÇ°í ÀÖÀ½À» ÁÖ¸ñÇϱ⠹ٶõ´Ù.) ±×ÈÄ ¶Ç´Ù½Ã ÀÚ½Ä ÇÁ·Î¼¼½º¸¦ ºÐ±âÇÏ¿© export ¿©ºÎ¸¦ È®ÀÎÇÏ¿´´Ù. ±×·±´ÙÀ½ °¢°¢ÀÇ ÀÚ½Ä ÇÁ·Î¼¼½º¸¦ Á¾·áÇϸç ÇÁ·ÒÇÁÆ®°¡ º¯°æµÇ´Â »óȲÀ» È®ÀÎÇÏ´Ï °¡Àå óÀ½ÀÇ ÇÁ·Î¼¼½º¿¡¼­´Â ¾ÆÁ÷µµ cmd> ÇÁ·ÒÇÁÆ®°¡ À¯ÁöµÇ°í ÀÖÀ½À» È®ÀÎÇÒ ¼ö ÀÖ´Ù. ÀÌ´Â exportÀÇ ¹æÇâÀº »óÀ§ ÇÁ·Î¼¼½º¿¡¼­ ÇÏÀ§ ÇÁ·Î¼¼½º·Î¸¸ ÇàÇØÁø´Ù´Â °ÍÀ» ¾Ë°Ô ÇØÁØ´Ù. 3. ȯ°æ º¯¼öÀÇ Ç¥½Ã »ç¿ëÀÚÀÇ È¯°æÀ» Ç¥½ÃÇϰųª ¼öÁ¤Çϱâ À§ÇÑ ¸í·É¾î´Â ´ÙÀ½°ú °°´Ù. . set ¸í·É¾î ÀÎÀÚ¸¦ ÁöÁ¤ÇÏÁö ¾ÊÀº set ¸í·É¾î´Â ÇöÀçÀÇ È¯°æ¿¡¼­ Á¸ÀçÇÏ´Â ¸ðµç º¯¼öµéÀÇ(export ¿©ºÎ¿¡ °ü°è¾øÀÌ) ¸ñ·ÏÀ» Ç¥½ÃÇÑ´Ù. set ¸í·É¾î´Â ¶ÇÇÑ ¸í·É¾î¿Í ÀÎÀÚµéÀ» ÇÁ¸°Æ® ÇÒ°ÍÀÎÁö¸¦ ¼³Á¤Çϱâ À§ÇÑ ½© ¿É¼ÇÀ» ¼³Á¤Çϱâ À§ÇØ, ¶Ç Æ÷Áö¼Å³Î ÆĶó¸ÞŸ¸¦ ÀçÇÒ´çÇϱâ À§ÇØ »ç¿ëµÉ ¼ö ÀÖ´Ù. . env ¸í·É¾î ÀÎÀÚ¸¦ ÁöÁ¤ÇÏÁö ¾ÊÀº env ¸í·É¾î´Â ÇöÀç ȯ°æ¿¡¼­ export µÇ¾îÁø º¯¼öµéÀ» Ç¥½ÃÇÑ´Ù. env ¸í·É¾î´Â ¶ÇÇÑ ÁöÁ¤ÇÑ ¸í·É¾îÀÇ ½ÇÇൿ¾È ÇöÀçÀÇ È¯°æÀ» ¼öÁ¤Çϱâ À§ÇØ »ç¿ëÇÒ ¼ö ÀÖ´Ù. --------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­µµ ½© ÇÁ·Î±×·¡¹ÖÀÇ ±âÃÊ¿¡ ´ëÇØ °è¼ÓÇÏ¿© ¼³¸íÇÕ´Ï´Ù. --------------------------------------------------------------------------- #75 À¯´Ï½Ã½º (adunis2 ) Shell ±âÃÊ: Shell function°ú .profile 03/20 11:05 108 line ½© ÇÁ·Î±×·¡¹ÖÀÇ ±âÃÊ: shell function°ú .profile -------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. --------------------------------------------------------------------- 1. Shell function Shell functionÀº ½© ÇÁ·Î±×·¥°ú ºñ½ÁÇÏ°Ô ½ÇÇàÇϱâ À§ÇÑ ÀÏ·ÃÀÇ ¸í·É¾îµéÀ» °®°í ÀÖ´Ù. ±×·¯³ª Shell functionÀº º¯¼ö¿Í °°ÀÌ ¸Þ¸ð¸®¿¡ ÀúÀåµÇ±â ¶§¹®¿¡ ½© ÇÁ·Î±×·¥º¸´Ù ´õ¿í »¡¸® ¾ï¼¼½º¹× ½ÇÇàµÉ ¼ö ÀÖ´Ù. ±×¸®°í Shell FunctionÀº ÇöÀçÀÇ ½©³»¿¡¼­ ½ÇÇàµÈ´Ù. FunctionÀ» Á¤ÀÇÇϱâ À§ÇÑ Çü½ÄÀº ´ÙÀ½°ú °°Àº µÎ°¡Áö ¹æ½ÄÀÌ ÀÖ´Ù. Çü½Ä 1) ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ function_name() ¦¢ ¦¢ { ¦¢ ¦¢ command1 ¦¢ ¦¢ command2 ¦¢ ¦¢ command3 ¦¢ ¦¢ } ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¿©±â¼­ function_nameÀº ³ª¿­µÇ¾î ÀÖ´Â ¸í·É¾îµéÀ» ½ÇÇàÇϱâ À§ÇØ functionÀ» È£ÃâÇϱâ À§ÇÑ À̸§À¸·Î »ç¿ëµÈ´Ù. ±×¸®°í ¿¬ÀÌ¾î ±â¼úµÇ¾î ÀÖ´Â µÕ±Ù°ýÈ£'()'´Â ½©¿¡°Ô ¿¬À̾î functionÀÇ Á¤ÀÇ°¡ µÚµû¸£°í ÀÖ´Ù´Â °ÍÀ» ¾Ë·ÁÁØ´Ù. ±×¸®°í ½ÇÇàÇÒ ¸í·É¾îµéÀº { ¿Í } ½Éº¼·Î µÑ·¯ ½×´Â´Ù. functionÀº function_nameÀ» ÀÔ·ÂÇÔ¿¡ ÀÇÇؼ­ ¸í·É¾î ó·³ ½ÇÇàµÈ´Ù. Çü½Ä 1·Î functionÀ» Á¤ÀÇÇÏ´Â ¿¹ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $f1 () ¦¢ ¦¢ { ¦¢ ¦¢ date ¦¢ ¦¢ who ¦¢ ¦¢ ls -F ¦¢ ¦¢ } ¦¢ ¦¢ $f1 ¦¢ ¦¢ ( FunctionÀ» ½ÇÇàÇÑ °á°ú°¡ Ãâ·ÂµÈ´Ù. ) ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ Çü½Ä 2) function_name() { command1 ; command2 ; command3; } ÀÌ Çü½ÄÀº ÇϳªÀÇ ¸í·É¾î ¶óÀο¡ ªÀº functionÀ» Á¤ÀÇÇϴµ¥ À¯¿ëÇÏ´Ù. ÀÌ Çü½Ä¿¡¼­ ù¹ø° ¸í·É¾îÀÇ ¾Õ¿¡ °ø¹éÀ» µÎ¾î¾ß ÇÑ´Ù. ¼¼¹ÌÄÝ·ÐÀ¸·Î °¢°¢ÀÇ ¸í·É¾î¸¦ ±¸ºÐÇÏ°í, } ½Éº¼ÀÌ µ¿À϶óÀο¡ ÁöÁ¤µÉ °æ¿ì¿¡´Â ¹Ýµå½Ã ¸¶Áö¸· ¸í·É¾î ´ÙÀ½¿¡ ¼¼¹ÌÄÝ·ÐÀ» ÁöÁ¤ÇØ¾ß ÇÑ´Ù. ´ÙÀ½Àº Çü½Ä 2·Î functionÀ» Á¤ÀÇÇÏ´Â ¿¹ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $f1 () { date ; who ; pwd ; ls -r ; } ¦¢ ¦¢ $f1 ¦¢ ¦¢ (FunctionÀ» ½ÇÇàÇÑ °á°ú°¡ Ãâ·ÂµÈ´Ù. ) ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ FunctionÀº º¯¼ö¿Í °°ÀÌ unset function°ú ó·³ unset ¸í·É¾î¿¡ »èÁ¦ÇÒ function_nameÀ» ÁöÁ¤ÇÔÀ¸·Î½á »èÁ¦ÇÒ ¼ö ÀÖ´Ù. functionÀº ·Î±×Àνÿ¡ ÀÚµ¿ÀûÀÎ ½ÇÇàÀ» À§ÇØ .profile¿¡ ¼±¾ðµÈ °æ¿ì¸¦ Á¦¿ÜÇÏ°í´Â, ÇöÀçÀÇ ·Î±×ÀÎ ¼¼¼Ç³»¿¡¼­¸¸ À¯È¿ÇÏ´Ù. 2. ·Î±×ÀΠȯ°æÀÇ ¼öÁ¤: .profile ·Î±×ÀÎ ÀÛ¾÷ÀÌ ¼öÇàµÇ´Â µ¿¾È ¸ðµç »ç¿ëÀÚ¸¦ À§ÇØ Àü¹ÝÀûÀÎ ½Ã½ºÅÛ È¯°æÀ» ¼³Á¤Çϱâ À§ÇØ ½Ã½ºÅÛ /etc/profileÀÌ ½ÇÇàµÈ´Ù. /etc/profileÀº ¶ÇÇÑ news, mail, stty ±×¸®°í umask °°Àº ¸î°¡ÁöÀÇ ¸í·É¾î¸¦ ½ÇÇàÇÑ´Ù. /etc/profileÀº ½Ã½ºÅÛ Àü¹ÝÀÇ »ç¿ëÀÚ È¯°æÀ» Á¤ÀÇÇϱâ À§ÇØ ½Ã½ºÅÛ °ü¸®ÀÚ¿¡ ÀÇÇØ ¼öÁ¤µÇ¾îÁú ¼ö ÀÖ´Ù. ºÎ°¡ÀûÀ¸·Î ¸¸¾à »ç¿ëÀÚÀÇ È¨ µð·ºÅ丮¿¡ .profileÀÌ ÀÖÀ¸¸é, ±× È­Àϵµ ·Î±×Àνÿ¡ ½ÇÇàµÈ´Ù. À̶§ .profileÀÇ ³»¿ëÀÌ /etc/profileÀÇ ³»¿ëÀ» µ¤¾î ¾º¿î´Ù. .profileÀº ½© ÇÁ·Î±×·¥ÀÌ´Ù. ½Ã½ºÅÛ °ü¸®ÀÚ´Â »ç¿ëÀÚ °èÁ¤ÀÌ »ý¼ºµÇ¾úÀ»¶§ Ç¥ÁØ Çü½ÄÀÇ .profileÀ» ÇÒ´çÇÒ ¼ö ÀÖ´Ù. ½Ã½ºÅÛ¿¡¼­ Á¦°øÇϴ ǥÁØ .profileÀÇ Çü½ÄÀº ´ÙÀ½°ú °°´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ #This is the default standard profile provided to a user. ¦¢ ¦¢ #They are expected to edit it to meet their own needs. ¦¢ ¦¢ ¦¢ ¦¢ MAIL=/user/mail/${LOGNAME:?} ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ .profile¿¡´Â ÀÌÀü¿¡ °­ÀǵǾú´ø ¸í·É¾îµé, ½© ÇÁ·Î±×·¥, º¯¼ö ¶Ç´Â functionµéÀ» Æ÷ÇÔ½Ãų¼ö ÀÖ´Ù. .profileÀÇ ¿¹´Â ´ÙÀ½°ú °°´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $cat .profile ¦¢ ¦¢ PATH=:$HOME/local_bin:/bin:/usr/bin:/etc ¦¢ ¦¢ MAIL=/var/mail/logname ¦¢ ¦¢ TERM=uvt1224 ¦¢ ¦¢ PS1="Yes? " ¦¢ ¦¢ PS2="more: " ¦¢ ¦¢ export PATH MAIL TERM PS1 PS2 ¦¢ ¦¢ f1 () { date ; pwd ; ls -al | pg; } ¦¢ ¦¢ script4 ¦¢ ¦¢ echo HAVE A SUPER DAY ! ! ! ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ --------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­µµ ½© ÇÁ·Î±×·¡¹ÖÀÇ ±âÃÊ¿¡ ´ëÇØ °è¼ÓÇÏ¿© ¼³¸íÇÕ´Ï´Ù. --------------------------------------------------------------------------- #76 À¯´Ï½Ã½º (adunis2 ) Shell ProgramÀÇ Àå½Ä ±â´Éµé 03/21 12:02 159 line ½© ÇÁ·Î±×·¡¹ÖÀÇ Àå½Ä¿ä¼Ò -------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. --------------------------------------------------------------------- 1. ½© ÇÁ·Î±×·¡¹ÖÀÇ Àå½Ä ¿ä¼Òµé ½©Àº ´õ¿í À¯¿ëÇÏ°í À¶Å뼺 ÀÖ´Â ÇÁ·Î±×·¥À» ¸¶µé¼ö ÀÖµµ·Ï ½© ÇÁ·Î±×·¥À» Àå½ÄÇÒ ¼ö ÀÖ´Â ¿©·¯°¡Áö ±â´ÉµéÀ» Á¦°øÇÑ´Ù. À̹ø °­ÀÇ¿¡¼­´Â º¸´Ù Áøº¸µÈ ½© ÇÁ·Î±×·¥À» ÀÛ¼ºÇϱâ À§ÇØ »ç¿ëµÇ´Â µÎµå·¯Áø ±â´Éµé¿¡ ´ëÇØ ¼³¸íÇÑ´Ù. À̵鿡 ´ëÇÑ ÀÚ¼¼ÇÑ ¿î¿ëÇü½Ä¿¡ ´ëÇؼ­´Â ½© ÇÁ·Î±×·¡¹Ö °úÁ¤¿¡¼­ ¼³¸íÇÑ´Ù. . echo echo ¸í·É¾î´Â ÇÁ·Î±×·¥À» ½ÇÇàÇÏ´Â »ç¿ëÀÚ¿¡°Ô ¸Þ¼¼Áö¸¦ Ç¥½ÃÇϱâ À§ÇØ ÇÁ·Î±×·¥³»¿¡¼­ »ç¿ëµÉ ¼ö ÀÖ´Ù. ¿¹¸¦µé¸é echo Enter something¶ó ÁöÁ¤Çϸé, ÇÁ·Î±×·¥ÀÌ ½ÇÇà µÇ¾úÀ»¶§ È­¸é»ó¿¡ Enter something¶ó´Â ¸Þ¼¼Áö¸¦ Ç¥½ÃÇÏ°Ô µÈ´Ù. . read read ¸í·É¾î´Â »ç¿ëÀÚÀÇ ÀÔ·ÂÀ» ¹Þ¾ÆµéÀÌ´Â ½© ÇÁ·Î±×·¥À» ÀÛ¼ºÇÒ ¼ö ÀÖµµ·Ï ÇØÁØ´Ù. ¶ÇÇÑ »ç¿ëÀÚÀÇ ÀÔ·ÂÀ» ÁöÁ¤ÇÑ º¯¼ö¿¡ ÀúÀåÇØ ÁÜÀ¸·Î½á ÇÁ·Î±×·¥³»¿¡¼­ ÂüÁ¶ÇÒ ¼ö ÀÖ°Ô ÇØÁØ´Ù. ¿¹¸¦µé¾î ÇÁ·Î±×·¥¿¡¼­ read text¶ó ÁöÁ¤ÇÑÈÄ ½ÇÇàÇϸé, »ç¿ëÀÚ°¡ ÀÔ·ÂÇÑ ÀüüÀÇ ÀÔ·Â ¶óÀÎÀ» text º¯¼ö¿¡ ÀúÀåÇÑ´Ù. . sleep ÀÌ ¸í·É¾î´Â ÁöÁ¤ÇÑ ½Ã°£(´ÜÀ§:ÃÊ)µ¿¾È ½ÇÇàÀ» ÁßÁöÇÑ´Ù. ÀÌ ¸í·ÉÀº ÇÁ·Î±×·¥ ½ÇÇàÁß°£¿¡ ½ÇÇàÀ» ÁßÁöÇϱâ À§ÇØ »ç¿ëÇÑ´Ù. ¿¹¸¦µé¸é sleep 8À̶ó°í ÁöÁ¤Çϸé, 8Ãʵ¿¾È ½ÇÇàÀ» ÁßÁöÇÑ´Ù. . ÁÖ¼®(Comments) ÇÁ·Î±×·¥³»¿¡ ÇÁ·Î±×·¥³»ÀÇ Æ¯Á¤ ºÎºÐ¿¡ ´ëÇÑ ¼³¸í Á¤º¸¸¦ ±â¼úÇÒ¼ö ÀÖ´Ù. ÇÁ·Î±×·¥³»ÀÇ ¿©·¯ Àå¼Ò¿¡ ÁöÁ¤µÇ´Â ÁÖ¼®Àº ÁöÁ¤ À§Ä¡ÀÇ ÇÁ·Î±×·¥ ºÎºÐÀÌ ¼öÇàÇÏ´Â ÀÛ¾÷¿¡ ´ëÇÑ ¼­¼ú Çü½ÄÀÇ Á¤º¸¸¦ Á¦°øÇÔÀ¸·Î½á, ÇÁ·Î±×·¡¸ÓÀÇ ÇÁ·Î±×·¥ °ËÁõ¹× À¯Áö º¸¼öµî¿¡ È¿À²¼ºÀ» Á¦°øÇÑ´Ù. ½© ÇÁ·Î±×·¥¿¡¼­´Â # ½Éº¼ ÀÌÈÄ¿¡ ±â¼úµÇ´Â ÅؽºÆ®µéÀ» ÁÖ¼®Ã³¸®ÇÑ´Ù. ½©¿¡ÀÇÇØ # ½Éº¼ ÀÌÈÄÀÇ ¹®ÀÚµéÀº ¹«½ÃµÇ¸ç, ÇÁ·Î±×·¥ ½ÇÇà½Ã 󸮵ÇÁö ¾Ê´Â´Ù. ¿¹¸¦µé¸é, ´ÙÀ½°ú °°´Ù. #The statement below tests for condition A #and execute the commands that follow . Here ±â´É Here documents ±â´ÉÀº ½© ÇÁ·Î±×·¥³»¿¡¼­ ÀÔ·Â ¹æÇâÀüȯÀ» ¼öÇàÇÒ ¼ö ÀÖ°Ô ÇØÁØ´Ù. ÀÌ ±â´É¿¡¼­ »ç¿ëÇÏ´Â ÀÔ·Â ¹æÇâÀüȯ ½Éº¼ÀÎ << ´Â ÁöÁ¤ÇÑ ±¸º°ÀÚ »çÀÌÀÇ ¸ðµç ³»¿ëÀ» ÇÁ·Î±×·¥ÀÇ Ç¥ÁØ ÀÔ·ÂÀ¸·Î½á ó¸®ÇÒ °ÍÀ» ½©¿¡°Ô Áö½ÃÇÑ´Ù. Here documentsÀÇ »ç¿ë Çü½ÄÀº ´ÙÀ½°ú °°´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ÀÌ Çü½Ä¿¡¼­ !´Â ±¸º°ÀÚ·Î »ç¿ëµÇ°í ÀÖ´Ù. ¦¢ command <>>.......... --------------------------------------------------------------------------- #78 À¯´Ï½Ã½º (adunis2 ) ** À¯´Ð½º ±âÃÊ°úÁ¤ ÃÑÁ¤¸® ¹®Á¦ ** 03/21 12:28 188 line À¯´Ð½º ±âÃÊ °úÁ¤ ÃÑÁ¤¸® ¹®Á¦ ----------------------------------------------------------------------------- ¼ö°­ÀÚ ¿©·¯ºÐ²² µå¸®´Â ±Û ±×µ¿¾È À¯´Ð½º Åë½Å°­ÀÇ¿¡ º¸¿©ÁֽŠ¿©·¯ºÐÀÇ ³ôÀº °ü½É¿¡ Áø½ÉÀ¸·Î °¨»çµå¸®¸ç, ÇâÈÄ °è¼Ó °­ÀÇµÉ À¯´Ð½º ½© ÇÁ·Î±×·¡¹Ö °úÁ¤¿¡¼­µµ ¿©·¯ºÐÀÇ À¯´Ð½º ÀÌÇظ¦ ÁõÁøÇÒ ¼ö ÀÖµµ·Ï ÃÖ¼±ÀÇ ³ë·ÂÀ» ´ÙÇÒ°ÍÀ» ¾à¼Ó µå¸³´Ï´Ù. À̹ø¿¡ µå¸®´Â 2ȸ¿¡ °ÉÄ£ ""À¯´Ð½º ±âÃÊ¹× ÀÀ¿ë°úÁ¤ ÃÑÁ¤¸® ¹®Á¦""´Â ¿©·¯ºÐ²²¼­ ½© ÇÁ·Î±×·¡¹Ö °úÁ¤À» ÇнÀÇϽñâÀ§Çؼ­´Â, ¾î´ÀÁ¤µµÀÇ À¯´Ð½º ±âÃÊ°¡ ÇÊ¿äÇϱ⠶§¹®¿¡ À̸¦ È®ÀÎÇØ º¸½Ç¼ö ÀÖµµ·Ï Çϱâ À§ÇÔÀÔ´Ï´Ù. ºñ·Ï ¹ø°Å·Ó´Ù ÇÏ´õ¶óµµ ²À Ç®¾îÁֽñ⸦ ºÎŹµå¸³´Ï´Ù. ¸¸¾à ÀÌÇØ°¡ ¾ÈµÇ½Ã´Â ºÎºÐÀÌ ÀÖ´Ù¸é, ÇØ´ç ºÎºÐÀÇ °­ÀǸ¦ ´Ù½ÃÇѹø º¸½Ã±â¸¦ ¹Ù¶ø´Ï´Ù. ±×·¡µµ Ç®¼ö ¾ø´Â ¹®Á¦°¡ ÀÖÀ¸½Ã¸é, ÁúÀÇÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇØ Áú¹®Áֽñ⠹ٶø´Ï´Ù. ¶ÇÇѹø °¨»çµå¸³´Ï´Ù. ----------------------------------------------------------------------------- ´ÙÀ½ ¹®Á¦´Â À¯´Ð½º ±âÃÊ°úÁ¤¿¡ ´ëÇÑ ÀÌÇصµ¸¦ ÃøÁ¤Çϱâ À§ÇÑ ¹®Á¦ÀÔ´Ï´Ù. À̹®Á¦¸¦ 30ºÐ¾È¿¡ Ç®¾î Áֽñ⠹ٶø´Ï´Ù. ¸¸ÀÏ ¸ð¸£´Â ¹®Á¦°¡ ÀÖ´Ù¸é, ±×ºÎºÐ¿¡ ´ëÇÑ ÀÌÇØ°¡ ºÎÁ·ÇÑ °ÍÀÌ´Ï ÇØ´ç ºÎºÐ °­ÀǸ¦ ´Ù½Ã È®ÀÎÇϽñ⠹ٶø´Ï´Ù. << ÀϹݻçÇ× ÀÌÇصµ ÃøÁ¤ >> 1. À¯´Ð½º ¿î¿µÃ¼Á¦ÀÇ 3°¡Áö ±¸¼º ¿ä¼Ò¿¡ ´ëÇØ ¼³¸íÇϽÿä? 2. À¯´Ð½ºÀÇ È­ÀÏ Á¾·ù¿¡ ´ëÇØ ¼³¸íÇϽÿä? 3. ¾Æ·¡¿¡ À¯´Ð½º °èÃþÇü È­Àϱ¸Á¶¸¦ º¸°í ´ÙÀ½ Áú¹®¿¡ ´äÇϽÿä. ÇöÀçÀÇ »ç¿ëÀÚ ÀÛ¾÷ µð·ºÅ丮´Â /usr/acct/user2¶ó°í °¡Á¤ÇÕ´Ï´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ / ¦¢ ¦¦¦¡¦¡¦¨¦¡¦¡¦¥ ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦£¦¡¦¡¦ª¦¡¦¡¦¤ ¦£¦¡¦¡¦ª¦¡¦¡¦¤ ¦¢ usr ¦¢ ¦¢ etc ¦¢ ¦¦¦¡¦¡¦¨¦¡¦¡¦¥ ¦¦¦¡¦¡¦¡¦¡¦¡¦¥ ¦£¦¡¦¡¦ª¦¡¦¡¦¤ ¦¢ acct ¦¢ ¦¦¦¡¦¡¦¨¦¡¦¡¦¥ ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¤ ¦£¦¡¦¤ µð·ºÅ丮 ¦£¦¡¦¡¦ª¦¡¦¡¦¤ ¦£¦¡¦¡¦ª¦¡¦¡¦¤ ¦¦¦¡¦¥ ¦¢ user1 ¦¢ ¦¢ user2 ¦¢ ( ) È­ÀÏ ¦¦¦¨¦¡¦¨¦¡¦¨¦¥ ¦¦¦¡¦¨¦¡¦¡¦¨¦¥ ¦¢ ¦¢ ¦¢ ¦¢ (bank.sav) ¦¢ ¦¢ ¦¢ (memos.feb) (games) ¦¢ (file.c) (letters) 1) user2 µð·ºÅ丮ÀÇ Àý´ë °æ·Î¸íÀ» ±â¼úÇϽÿÀ. 2) memos.feb È­ÀÏÀÇ »ó´ë °æ·Î¸íÀ» ±â¼úÇϽÿÀ. 3) user2 µð·ºÅ丮ÀÇ ºÎ¸ð µð·ºÅ丮·Î À̵¿Çϱâ À§ÇØ, »ó´ë °æ·Î¸íÀ» »ç¿ëÇÏ´Â À̵¿ ¸í·ÉÀ» ±â¼úÇϽÿÀ. 4) ÇöÀçÀÇ µð·ºÅ丮¸¦ ³ªÅ¸³»´Â ½Éº¼À» ±â¼úÇϽÿÀ. 5) ÇöÀçÀÇ µð·ºÅ丮¿¡¼­ user1 µð·ºÅ丮ÀÇ games È­ÀÏÀ» ³ªÅ¸³»´Â »ó´ë °æ·Î¸íÀ» ±â¼úÇϽÿÀ. 4. À¯´Ð½º ¸í·É¾îÀÇ ±âº» Çü½Ä¿¡ ´ëÇØ ¼³¸íÇϽÿÀ. 5. ºÎ¸ð µð·ºÅ丮·Î À̵¿Çϱâ À§ÇÑ ¸í·ÉÀ» ¾²½Ã¿À. 6. È­ÀϸíÀ» Á¤ÀÇÇÒ¶§ÀÇ °í·Á»çÇ׿¡ ´ëÇØ ±â¼úÇϽÿÀ. 7. ½©¿¡ ÀÇÇØ È­ÀÏ¸í ´ëÄ¡°¡ ¼öÇàµÇ´Â 3°¡Áö Ư¼ö¹®ÀÚ¸¦ ±â¼úÇÏ°í, ¼³¸íÇϽÿÀ. 8.È­ÀÏ¸í ´ëÄ¡¿¡ »ç¿ëµÇ´Â Ư¼ö¹®ÀÚ¸¦ ÀϹݹ®ÀÚ·Î »ç¿ëÇϱâ À§ÇÑ ¹æ½Ä¿¡ ´ëÇØ ¼³¸íÇϽÿÀ. << ÅؽºÆ® ÆíÁý±â ÀÌÇصµ ÃøÁ¤ >> 1. À¯´Ð½ºÀÇ ±âº»ÀûÀÎ ÅؽºÆ® ÆíÁý±â 2°¡ÁöÀÇ À̸§°ú Ư¡À» ¼³¸íÇϽÿÀ. 2. ÆíÁý±â¿¡¼­ÀÇ ¸í·É¾î ¸ðµå¿Í ÀÔ·Â ¸ðµå¸¦ ±¸º°ÇϽÿÀ. 3. ed ÆíÁý±â¸¦ »ç¿ëÇÏ¿© È­ÀÏÀ» »ý¼ºÇϱâ À§ÇÑ ´Ü°è¸¦ ¼³¸íÇϽÿÀ. ( ÆíÁý±â ±âµ¿, ÅؽºÆ® ÀÔ·Â, ÅؽºÆ® ÀúÀå, ÆíÁý±â Á¾·á ) 4. ed ÆíÁý±â¸¦ »ç¿ëÇÏ¿© 7¶óÀκÎÅÍ 9°³ÀÇ ¶óÀÎÀ» ¶óÀιøÈ£¿Í ÇÔ²² Ç¥½ÃÇϱâ À§ÇÑ ¸í·É¾î¸¦ ±â¼úÇϽÿÀ. 5. vi ÆíÁý±â¿¡¼­ ÀÔ·ÂÀ» Çϱâ À§ÇÑ ¸í·É¾î¿¡ ´ëÇØ ¼³¸íÇϽÿÀ. 6. Á÷Àü¿¡ ¼öÇàÇß´ø º¯°æ »çÇ×À» Ãë¼ÒÇϱâ À§ÇÑ ¸í·ÉÀº? 7. vi¿¡¼­ ¿©·¯ ¶óÀÎÀ» º¹»çÇϱâ À§ÇÑ ¹æ¹ý°ú À̵¿ÇÏ´Â ¹æ½Ä¿¡ ´ëÇØ ¼³¸íÇϽÿÀ. 8. viÀÇ ¸í·É¾î ¸ðµå¿¡¼­ ÅؽºÆ®¸¦ »èÁ¦Çϱâ À§ÇÑ µÎ°¡Áö ¸í·É¾î´Â? 9. vi¿¡¼­ Á¤¹æÇâ °Ë»ö¹× ¿ª¹æÇâ °Ë»öÀ» À§ÇÑ ¸í·É¾î´Â? 10. vi¿¡¼­ È­Àϳ»ÀÇ ¸ðµç unix¶ó´Â ´Ü¾î¸¦ UNIX¶ó´Â ´Ü¾î·Î º¯È¯ÇÏ´Â ¸í·É¾î¸¦ ±â¼úÇϽÿÀ. 11. vi¿¡¼­ ÇöÀç ÆíÁýÇÏ°í ÀÖ´Â È­ÀϸíÀ» Ç¥½ÃÇϱâ À§ÇÑ ¸í·É¾î´Â? 12. vi¿¡¼­ ÇöÀçÀÇ ÆíÁý ¹öÆÛ»óÀÇ ³»¿ëÀ» ´Ù¸¥ È­ÀÏÀÇ ³»¿ëÀ¸·Î ´ëÄ¡Çϱâ À§ÇÑ ¸í·É¾î´Â? 13. vi¿¡¼­ ÇöÀç ÆíÁýÁßÀÎ ¹öÆÛ»ó¿¡ ´Ù¸¥ È­ÀÏÀÇ ³»¿ëÀ» ºÒ·¯µéÀ̱â À§ÇÑ ¸í·É¾î´Â? 14. ÆíÁý±â¸¦ Á¾·áÇÏÁö ¾Ê°í ÆíÁý ¹öÆÛ»óÀÇ º¯°æ»çÇ×À» Ãë¼ÒÇÏ°í ´Ù¸¥ È­ÀÏÀ» ÆíÁýÇϱâ À§ÇÑ ¸í·É¾î´Â? 15. vi¿¡¼­ Àбâ Àü¿ëÀ¸·Î È­ÀÏÀ» ÆíÁýÇϱâ À§ÇÑ ¿É¼ÇÀº? ±×¸®°í ÀÌ ¿É¼ÇÀ» »ç¿ëÇÏ¿´À»¶§ÀÇ ÆíÁýÇÑ È­ÀÏÀ» ÀúÀåÇϱâ À§ÇÑ ¸í·É¾î´Â? 16. ½© ¸í·É¾î¸¦ ½ÇÇàÇϱâ À§ÇØ ÀϽÃÀûÀ¸·Î ½© ÇÁ·ÒÇÁÆ®·Î ºüÁ®³ª°¡±â À§ÇÑ ¸í·É¾î´Â? << ¸í·É¾î ÀÌÇصµ ÃøÁ¤ >> 1. ´ÙÀ½ ±â´ÉÀ» ¼öÇàÇϱâ À§ÇÑ ¸í·É¾î´Â? 1) ·Î±×ÀÎ Æнº¿öµåÀÇ ÇÒ´ç¹× º¯°æ ? 2) ÀÛ¾÷ µð·ºÅ丮ÀÇ Àý´ë °æ·Î Ç¥½Ã ? 3) µð·ºÅ丮ÀÇ ³»¿ë Ç¥½Ã ? 4) ½Ã½ºÅÛ¿¡ ·Î±×ÀÎÇÏ¿© ÀÛ¾÷ÁßÀÎ »ç¿ëÀÚ È®ÀÎ ? 5) ÇöÀçÀÇ ½Ã½ºÅÛ ³¯Â¥¹× ½Ã°£ È®ÀÎ ? 6) ¿Â¶óÀÎ ¸Þ´º¾óÀÇ ÂüÁ¶ ? 7) È­ÀÏÀÇ º¹»ç ? 8) È­ÀÏÀÇ À̵¿ ¶Ç´Â È­ÀÏ¸í º¯°æ ? 9) È­ÀÏÀÇ ¸µÅ© »ý¼º ? 10) µð·ºÅ丮ÀÇ »ý¼º ? 11) µð·ºÅ丮ÀÇ »èÁ¦ ? 12) ÇÁ¸°ÅÍ Ãâ·ÂÀ» À§ÇÑ È­ÀÏÀÇ Formating ? 13) È­ÀÏÀÇ ÇÁ¸°Æ® ? 14) ÇöÀç Å͹̳Π¼³Á¤°ªÀ» È®ÀÎ ? 2. ¿Â¶óÀÎ ¸Þ´º¾óÀ» ÂüÁ¶½Ã ƯÀû ¹®ÀÚ¿­À» °Ë»öÇϱâ À§ÇÑ ¸í·É¾î´Â? 3. ½Ã½ºÅÛ»óÀÇ ¸ðµç ÇÁ¸°ÅÍÀÇ »óÅÂÁ¤º¸¸¦ È®ÀÎÇϱâ À§ÇÑ ¸í·É¾î´Â? 4. ¿ä±¸ÇÑ ÇÁ¸°Æ® ÀÛ¾÷À» Ãë¼ÒÇϱâ À§ÇÑ ¸í·É¾î´Â? 5. ptr1À̶ó´Â ÇÁ¸°ÅÍ°¡ Á¾À̰ɸ²(Paper Jam)À¸·Î ÀÎÇØ »ç¿ë ºÒ°¡´ÉÇÏ°Ô µÇ¾î, °É¸° ¿ëÁö¸¦ Á¦°ÅÇÏ¿´´Ù. ÀÌÈÄ ÇÁ¸°Å͸¦ ´Ù½Ã »ç¿ëÇÒ ¼ö ÀÖµµ·Ï Çϱâ À§ÇÑ ¸í·É¾î´Â? 6. »ç¿ëÀÚ¹× ±×·ì ½Äº°¸íÀ» Ç¥½ÃÇϱâ À§ÇÑ ¸í·É¾î´Â? 7. È­ÀÏÀÇ ³»¿ë¿¡ µû¶ó¼­ È­ÀÏÀ» ºÐ·ùÇϱâ À§ÇÑ ¸í·É¾î´Â? 8. 60ÀÏ ÀÌÀü¿¡ ¾ï¼¼½ºµÇ¾ú´ø È­ÀÏÀ»Ã£¾Æ ±× È­ÀϵéÀ» »èÁ¦ÇϱâÀ§ÇÑ find ¸í·É¾î¸¦ ±â¼úÇϽÿÀ? 9. salaries ¶ó´Â È­ÀÏÀÇ Á¢±Ù±ÇÇÑÀ» ¼ÒÀ¯ÀÚ¿¡°Ô´Â ¸ðµç ±ÇÇÑÀ», ±×·ì¹× ±âŸ »ç¿ëÀÚ¿¡°Ô´Â ¾ï¼¼½º ±ÇÇÑÀÌ ÁÖ¾îÁöÁö ¾Êµµ·Ï º¯°æÇϱâ À§ÇÑ ¸í·É¾î´Â? 10. files È­ÀÏÀÇ ³»¿ëÀ» ¼ýÀÚ°ªÀ¸·Î Á¤·ÄÇϱâ À§ÇÑ ¸í·É¾î´Â? 11. ÇöÀçÀÇ µð·ºÅ丮¿¡ ÀÖ´Â ¸ðµç È­ÀÏ¿¡¼­ °¢ ¶óÀÎÀÇ Ã³À½¿¡ UNIX¶ó´Â ¹®ÀÚ¿­ÀÌ µé¾îÀÖ´Â ¶óÀÎÀ» ã¾Æ Ç¥½ÃÇϱâ À§ÇÑ ¸í·É¾îÀÇ Çü½ÄÀº? 12. »õ·Î¿î È­ÀÏ°ú µð·ºÅ丮¿¡ ´ëÇØ ºÎ¿©µÇ´Â µðÆúÆ® Á¢±Ù±ÇÇÑÀ» º¯°æÇϱâ À§ÇÑ ¸í·É¾î´Â? À̶§ »õ·Î¿î Á¢±Ù±ÇÇÑÀº ¼ÒÀ¯ÀÚ¿¡°Ô´Â Àбâ¹× ¾²±â ±ÇÇÑÀ», ´Ù¸¥ »ç¿ëÀÚ¿¡°Ô´Â Àб⠱ÇÇѸ¸À» ºÎ¿©Çϵµ·Ï ÁöÁ¤ÇÑ´Ù. 13. µ¿ÀÏ ½Ã½ºÅÛ»óÀÇ ´Ù¸¥ »ç¿ëÀÚ¿Í Åë½ÅÇÒ ¼ö ÀÖµµ·Ï Á¦°øÇÏ´Â 3°¡Áö À¯´Ð½º ¸í·É¾î´Â? 14. ´Ù¸¥ Å͹̳ηΠºÎÅÍÀÇ ¸Þ¼¼Áö ¼ö·É °¡´É ¿©ºÎ¿¡ ´ëÇÑ ÇöÀçÀÇ ¼³Á¤Ä¡¸¦ È®ÀÎÇϱâ À§ÇÑ ¸í·É¾î´Â? 15. mail°ú mailx¸¦ ±¸º°ÇϽÿä. ±×¸®°í mailx¿¡¼­ ½©·Î ÀϽÃÀûÀ¸·Î ºüÁ® ³ª°¡±â À§ÇÑ ¸í·É¾î´Â? --------------------------------------------------------------------------- ´ÙÀ½¿¡´Â À¯´Ð½º ÀÀ¿ë°úÁ¤ ÃÑÁ¤¸® ¹®Á¦¸¦ µå¸®°Ú½À´Ï´Ù. --------------------------------------------------------------------------- #79 À¯´Ï½Ã½º (adunis2 ) ** À¯´Ð½º ÀÀ¿ë°úÁ¤ ÃÑÁ¤¸® ¹®Á¦ ** 03/22 11:09 75 line À¯´Ð½º ÀÀ¿ë °úÁ¤ ÃÑÁ¤¸® ¹®Á¦ ----------------------------------------------------------------------------- ÀÌÇØ°¡ ¾ÈµÇ½Ã´Â ºÎºÐÀÌ ÀÖ´Ù¸é, ÇØ´ç ºÎºÐÀÇ °­ÀǸ¦ ´Ù½ÃÇѹø º¸½Ã±â¸¦ ¹Ù¶ø´Ï´Ù. ±×·¡µµ Ç®¼ö ¾ø´Â ¹®Á¦°¡ ÀÖÀ¸½Ã¸é, ÁúÀÇÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇØ Áú¹®Áֽñ⠹ٶø´Ï´Ù. °¨»çÇÕ´Ï´Ù. ----------------------------------------------------------------------------- ´ÙÀ½ ¹®Á¦´Â À¯´Ð½º ÀÀ¿ë°úÁ¤¿¡ ´ëÇÑ ÀÌÇصµ¸¦ ÃøÁ¤Çϱâ À§ÇÑ ¹®Á¦ÀÔ´Ï´Ù. 1. Ç¥ÁØÀÔ·Â, Ç¥ÁØÃâ·Â, Ç¥ÁØ¿¡·¯¿¡ ´ëÇØ ¼³¸íÇϽÿÀ. 2. ´ÙÀ½¿¡ ³ª¿­µÇ¾î ÀÖ´Â ½Éº¼À» ¼³¸íÇϽÿÀ. > < >> < . Foreground jobÀ» ÁßÁöÇÑ´Ù. kill . Foreground¿¡ jobÀ» À§Ä¡½ÃŲ´Ù. . ´ÙÀ½ ¶Ç´Â Á÷Àü ÀÛ¾÷À» ÂüÁ¶ÇÑ´Ù. 16. Shell Function¿¡ ´ëÇØ ¼³¸íÇϽÿÀ. --------------------------------------------------------------------------- <<< ¼ö°­ÀÚ ¿©·¯ºÐ!!! ¼ö°íÇϼ̽À´Ï´Ù. >>> ´ÙÀ½ °­ÀǺÎÅÍ´Â º»°ÝÀûÀ¸·Î À¯´Ð½º ½© ÇÁ·Î±×·¡¹Ö¿¡ ´ëÇØ °­ÀÇ°¡ °è¼ÓµÇ°Ú½À´Ï´Ù. --------------------------------------------------------------------------- #80 À¯´Ï½Ã½º (adunis2 ) Shell ProgrammingÀÇ »çÀü Áö½Ä 03/23 22:38 195 line ½© ÇÁ·Î±×·¡¹ÖÀÇ »çÀü Áö½Ä -------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. --------------------------------------------------------------------- 1. Shell 1960³â´ë ÈÄ¹Ý À¯´Ð½º°¡ °³¹ßµÈ ÀÌ·¡, »ç¿ëÀÚÀÇ ÀÛ¾÷À» µ½±âÀ§ÇÑ ¸î°¡Áö ´Ù¸¥ ÀÎÅÍÆäÀ̽º(Interface)°¡ °³¹ßµÇ¾ú´Ù. ÀÌ·¯ÇÑ ÀÎÅÍÆäÀ̽º(Áï; ½©)µéÀº ´õ¿í »ç¿ëÀÚ¿¡ Ä£¼÷ÇÑ ¿î¿µÃ¼Á¦·Î½á À¯´Ð½º¸¦ ¸¸µé±â À§ÇÏ¿© °è¼ÓÀûÀ¸·Î °»½Å¹× ¼öÁ¤µÇ¾ú´Ù. °¡Àå ³Î¸® ¾Ë·ÁÁø ½©Àº 1970³â ÃÊ¹Ý Stephen Bourne¿¡ ÀÇÇØ °³¹ßµÈ Bourne ShellÀÌ´Ù. ÀÌ ½©Àº ¸ðµç À¯´Ð½º ½Ã½ºÅÛ¿¡¼­ »ç¿ë°¡´ÉÇÏ´Ù. ÀÌ ½©Àº ÀÎÅÍÆäÀ̽º·Î¼­ ÃÖ¼Ò ±â´Éµé¸¸À» °®°í ÀÖÀ¸¸ç, AT&TÀÇ Bell ¿¬±¸¼Ò¿¡ ÀÇÇØ °è¼Ó °³¼±µÇ¾ú´Ù. ¶ÇÇϳª ³Î¸® ¾Ë·ÁÁø ½©ÀÌ 1970³â´ë ÃÊ¹Ý Ä̸®Æ÷´Ï¾Æ ¹öŬ¸® ´ëÇÐÀÇ Bill Joy¿¡ ÀÇÇØ »ý¼ºµÈ C ShellÀÌ´Ù. ÀÌ ½©Àº Bourne Shell¿¡ Command history¿Í C ÇÁ·Î±×·¡¹Ö°ú À¯»çÇÑ ¹®¹ý ±¸Á¶¿Í °°Àº ºÎ°¡Àû ±â´ÉÀ» °®µµ·Ï °³·®ÇÑ °ÍÀÌ´Ù. C ShellÀº Ãß°¡ÇÑ ±â´Éµé·Î ÀÎÇØ Bourne Shellº¸´Ù 󸮼ӵµ°¡ ´À¸®´Ù. C ShellÀº È®½ÇÈ÷ Bourne Shell¿¡ ºñÇØ ¸Å¿ì Ä£¼÷ÇÑ »ç¿ëÀÚ ÀÎÅÍÆäÀ̽ºÀÌ´Ù. ±×·¸Áö¸¸ ÀÌ µÎ ½©ÀÇ ¹®¹ýÀº ¸¹Àº Â÷ÀÌ°¡ ³­´Ù. µû¶ó¼­ À̵鰣ÀÇ Â÷ÀÌ·ÎÀÎÇØ »ç¿ëÀÚ´Â »õ·Î¿î ³»¿ëÀ» ÀÍÇô¾ß ÇÏ´Â ¼ö°í°¡ ¿ä±¸µÈ´Ù. ±×·¯³ª °ÆÁ¤ÇÏÁö ¸¶¶ó. Korn ShellÀÌ ÀÖ´Ù. ÀÌ ÀÎÅÍÆäÀ̽º Áï; Korn ShellÀº AT&T Bell ¿¬±¸¼ÒÀÇ David Korn¿¡ ÀÇÇØ °³¹ßµÇ¾ú´Ù. ÀÌ ½©Àº Bourne ShellÀ» ±â¹ÝÀ¸·Î ÇÑ´Ù. ±×·¸Áö¸¸ »ç¿ëÀÚ¿¡ Ä£¼÷ÇÑ C ShellÀÇ ±â´ÉµéÀ» Æ÷ÇÔÇÏ°í ÀÖ´Ù. ÀÌ ½©Àº Bourne ShellÀ̳ª C Shellº¸´Ù ÇÁ·Î±×·¥ ±Ô¸ð°¡ Å©´Ù. ±×·¸Áö¸¸ ÇÁ·Î±×·¥ Å©±â·Î ÀÎÇÑ Ã³¸®¼ÓµµÀÇ ÀúÇϸ¦ ¹æÁöÇϱâ À§ÇØ, Korn Shell ¿É¼ÇÀ» Á¦°øÇÑ´Ù. À̸¦ »ç¿ëÇÏ¿© ¸í·É¾î ó¸® ¼Óµµ¸¦ ºü¸£°Ô ÇÒ ¼ö ÀÖ´Ù. ÀÌÀü¿¡´Â Korn ShellÀº À¯´Ð½ºÀÇ ÇϳªÀÇ °³º°ÀûÀÎ ÆåÅ°Áöó·³ ÀÌ¿ëµÇ¾ú±â ¶§¹®¿¡ »ç¿ëÀÚ°¡ »ç¿ëÀÌ ºÒÆíÇßÀ¸³ª, À¯´Ð½º SVR4.0 ¹öÀü¿¡´Â Korn ShellÀÌ Æ÷ÇÔµÊÀ¸·Î½á »ç¿ëÀÚ´Â º¸´Ù ½±°Ô Korn ShellÀ» ÀÌ¿ëÇÒ ¼ö ÀÖ°Ô µÇ¾ú´Ù. ºñ·Ï SVR4.0 ¹öÀü¿¡¼­ Bourne ShellÀÌ Default ShellÀÌÁö¸¸, »ç¿ë»óÀÇ Æí¸®ÇÔÀ¸·Î ÀÎÇØ Korn ShellÀº º¸´Ù ¸¹Àº À¯´Ð½º »ç¿ëÀÚÃþÀ» È®º¸ÇÏ°Ô µÉ °ÍÀÌ´Ù. À̹ø¿¡ °­ÀÇµÉ À¯´Ð½º ½© ÇÁ·Î±×·¡¹Ö °úÁ¤¿¡¼­´Â Bourne Shell°ú Korn ShellÀ» ±âÁØÀ¸·Î °­ÀÇ°¡ ÁøÇàµÉ °ÍÀÌ´Ù. C Shell¿¡ °üÇÑ ³»¿ëÀº °­ÀÇÀÇ ¸¶Áö¸· ºÎºÐ¿¡¼­ µû·Î Ư¡ÀûÀÎ ±â´Éµé¸¸À» ¼Ò°³ÇÒ °ÍÀÌ´Ù. 2. ¿¬»êÀÚ(Operator) Bourne Shell°ú Korn ShellÀº ½©¿¡ Ưº°ÇÑ Àǹ̸¦ °®´Â ÀÏ·ÃÀÇ ¿¬»êÀÚµéÀ» °®°íÀÖ´Ù. ÀÌ·¯ÇÑ ¿¬»êÀÚµéÀÇ Á¤È®ÇÑ ÀÇ¹Ì¿Í ¿¹´Â ÀÌÈÄÀÇ °­ÀÇ¿¡¼­ Çϳª¾¿ ¼Ò°³µÉ °ÍÀÌ´Ù. ÀÌ·± ¿¬»êÀÚµéÀº ½ÇÇà ³»¿ë¿¡ µû¶ó ÀÔÃâ·Â ¹æÇâÀüȯ ¿¬»êÀÚ¿Í Á¦¾î ¿¬»êÀÚ, µÎ Á¾·ù·Î ³ª´­¼ö ÀÖ´Ù. ±×¸®°í ÀÌµé ¿¬»êÀÚµéÀ» »ç¿ëÇÔ¿¡ À־ ¿¬»êÀÚ ÀüÈÄ¿¡ °ø¹éÀ» ÁöÁ¤ÇÑ´Ù. ±×·¯³ª ÀÌµé °ø¹éÀº Çʼö ÁöÁ¤ ¿ä¼Ò´Â ¾Æ´Ï´Ù. °ü½À¿¡ ÀÇÇÑ »ç¿ëÀÌ´Ù. ±×·¸Áö¸¸ && ¶Ç´Â >&¿Í °°ÀÌ Á¶ÇÕµÈ µÎ¹®ÀÚ°¡ ÇϳªÀÇ ¿¬»êÀÚ¸¦ ³ªÅ¸³¾ °æ¿ì¿¡, ÀÌ ¹®ÀÚµé »çÀÌ¿¡ °ø¹éÀ» ÁöÁ¤ÇÏ¸é ¾ÊµÈ´Ù. (1) ÀÔÃâ·Â ¹æÇâÀüȯ ¿¬»êÀÚ( I/O Redirection Operators) - Bourne Shell¿¡¼­ Á¦°øÇÏ´Â ¿¬»êÀÚµé > >> >& < << <<- <& - Korn Shell¿¡¼­ Á¦°øÇÏ´Â ¿¬»êÀÚµé Bourne Shell¿¡¼­ Á¦°øÇÏ´Â ¿¬»êÀÚ ¸ðµÎ >| <> (2) Á¦¾î ¿¬»êÀÚ( Control Operator ) - Bourne Shell¿¡¼­ Á¦°øÇÏ´Â ¿¬»êÀÚµé | & ; ( { || && ;; ) } - Korn Shell¿¡¼­ Á¦°øÇÏ´Â ¿¬»êÀÚµé Bourne Shell¿¡¼­ Á¦°øÇÏ´Â ¿¬»êÀÚµé (( )) |& 3. ¿¹¾à¾î ( Reserved Words ) ¿¹¾à¾î´Â ½Ã½ºÅÛ¿¡¼­ º¸ÅëÀÇ ´Ü¾îµé°ú´Â ´Ù¸£°Ô ÀνĵȴÙ. Bourne°ú Korn ShellÀº ÀÌµé ¿¹¾à¾î°¡ ¸í·É¾î ¶óÀλó, ´Ù¸¥ ¿¹¾à¾î Á÷ÈÄ ¶Ç´Â Á¦¾î ¿¬»êÀÚÀÇ Á÷Àü¿¡ ù¹ø° ´Ü¾î·Î ÁöÁ¤µÇ¾úÀ» °æ¿ì¿¡, ÀÌ ¿¹¾à¾î¿¡ ºÎ¿©µÇ¾î ÀÖ´Â Àǹ̿¡ µû¶ó¼­ ÀÛ¾÷À» ½ÇÇàÇÑ´Ù. ¸í·É¾î°¡ º¹ÇÕ ¸í·É¾î(Compound Command)ÀÎ °æ¿ì¿¡´Â, ¾î¶² ¿¹¾à¾î´Â ´Ù¸¥ ¿¹¾à¾î ÀÌÈÄÀÇ ¼¼¹ø° À§Ä¡¿¡ ÀÖÀ» °æ¿ì¿¡¸¸ ¿¹¾à¾î·Î ÀνĵȴÙ. ¿¹¸¦µé¸é, case, for ±×¸®°í select´Â ±×µéÀ» »ç¿ëÇÒ¶§ 3¹ø° ´Ü¾î·Î¼­ inÀ» ¿ä±¸ÇÏ´Â ¿¹¾à¾îµéÀÌ´Ù. À̶§ inÀº ÀÌµé ¸í·É¾î »ç¿ë½Ã 3¹ø° ´Ü¾î·Î ÁöÁ¤µÇ¾î¾ß¸¸ ¿¹¾à¾î·Î ÀνĵǴ ¿¹¾à¾îÀÌ´Ù. ¿¹¾à¾îµéÀº º¸È£¹®ÀÚ( ',",` ¿Í \¿Í °°Àº)³»¿¡ ÁöÁ¤µÈ °æ¿ì¿¡´Â ÀÏ¹Ý ¹®ÀڷΠ󸮵ǰí, ¿¹¾à¾î·Î 󸮵ÇÁö ¾Ê´Â´Ù. ´ÙÀ½Àº ½© ¿¹¾à¾îµéÀÌ´Ù. - Bourne Shell¿¡¼­ÀÇ ¿¹¾à¾î { } case do done elif else esac fi for if in then until while - Korn Shell¿¡¼­ÀÇ ¿¹¾à¾î Bourne Shell¿¡¼­ÀÇ ¿¹¾à¾î ÀüºÎ function select time [[ ]] 4. Korn ShellÀÇ Alias Korn ShellÀº ºó¹øÇÏ°Ô ½ÇÇàÇÏ´Â ¸í·É¾î ¶óÀο¡ ´ëÇؼ­ Ãà¾àÇü½ÄÀÇ ¸í·É¾î À̸§À» ºÎ¿©ÇÒ ¼ö ÀÖ´Â ±â´ÉÀ» Á¦°øÇÑ´Ù. ÀÌ·¸°Ô ºÎ¿©µÈ Ãà¾àÇü ¸í·É¾î À̸§À» Alias¶ó ÇÑ´Ù. Alias´Â "alias name=value" Çü½ÄÀ¸·Î alias ¸í·É¾î¸¦ »ç¿ëÇÏ¿© »ý¼ºÇÑ´Ù. À̶§ nameÀº ¸í·É¾î ¶óÀο¡ ºÎ¿©ÇÒ »õ·Î¿î À̸§À̸ç, value´Â nameÀ» ½ÇÇàÇßÀ»¶§ ¶Ç´Â È£ÃâÇßÀ»¶§ ½ÇÇàÇÒ Çϳª ¶Ç´Â ±×ÀÌ»óÀÇ ¸í·É¾î°¡ ±â¼úµÇ¾î ÀÖ´Â ¸í·É¾î ¶óÀÎÀÌ´Ù. ¶ÇÇÑ value¿¡ °ø¹éÀ̵é¾î ÀÖÀ» °æ¿ì¿¡´Â ¸í·É¾î ¶óÀÎ Àüü¸¦ º¸È£¹®ÀÚ·Î ¹­¾îÁÖ¾î¾ß ÇÑ´Ù. ±×·¯³ª name¿¡´Â °ø¹éÀ» »ç¿ëÇÒ ¼ö ¾øÀ¸¸ç, = ½Éº¼ ÀüÈÄ¿¡´Â °ø¹éÀ» ÁöÁ¤Çؼ­´Â ¾ÊµÈ´Ù. alias¸¦ »èÁ¦Çϱâ À§Çؼ­´Â unalias nameÀÇÇü½ÄÀ¸·Î unalias ¸í·ÉÀ» »ç¿ëÇÑ´Ù. alias¸¦ »ç¿ëÇÔÀ¸½áÀÇ ¶Ç´Ù¸¥ ÀÕÁ¡Àº ½© ÇÁ·Î±×·¥º¸´Ù ó¸® ¼Óµµ°¡ ºü¸£´Ù´Â µ¥ ÀÖ´Ù. ±×·¯³ª »ç¿ëÀÚ°¡ ³Ê¹«³ª ¸¹Àº alias¸¦ ¼±¾ðÇÒ °æ¿ì ½©ÀÇ ½ÇÇà ¼Óµµ°¡ ´Ê¾îÁö´Â ¾Ç¿µÇâÀ» ÃÊ·¡ÇÑ´Ù. ±×·¯¹Ç·Î ²À ÇÊ¿äÇÑ °Í¸¸À» alias·Î ¼±¾ðÇØ¾ß ÇÑ´Ù. alias À̸§À¸·Î ±âÁ¸ÀÇ ¸í·É¾î À̸§À» ÁöÁ¤ÇÒ ¼öµµ ÀÖ´Ù. ÀÌ¿Í°°ÀÌ µ¿ÀÏÇÏ°Ô »ç¿ëµÇ´Â À̸§À» ½ÇÇàÇϸé, ½©ÀÌ aliasÀÇ ÁöÁ¤µÈ ¸í·É¾î ¶óÀÎÀ¸·ÎÀÇ ´ëÄ¡ÀÛ¾÷À» ¸ÕÀú ½ÇÇàÇϱ⠶§¹®¿¡, alias·Î ÁöÁ¤µÈ ¸í·É¾î ¶óÀÎÀ» ½ÇÇàÇÑ´Ù. ÀÌ °æ¿ì alias°¡ ¾Æ´Ñ ±âÁ¸ÀÇ ¸í·É¾î¸¦ ½ÇÇàÇϱâ À§Çؼ­´Â º¸È£¹®ÀÚ¸¦ ÅëÇØ ½©ÀÇ ´ëÄ¡ ÀÛ¾÷À» ¸·¾ÆÁÖ¾î¾ß ÇÑ´Ù. ±×¸®°í alias À̸§À» ¿¹¾à¾î¿Í µ¿ÀÏÇÏ°Ô ÁöÁ¤µÇ¾úÀ» °æ¿ì¿¡´Â ½©ÀÌ ¿¹¾à¾î¿¡ ´ëÇÑ Ã³¸®¸¦ alias 󸮺¸´Ù ¸ÕÀú ÇàÇϱ⠶§¹®¿¡, alias´Â ¹«½ÃµÇ°Ô µÈ´Ù. ¸¸¾à set -h ¸í·ÉÀ»ÅëÇØ ½©ÀÇ trackall ¿É¼ÇÀÌ ¼³Á¤µÇ¾úÀ» °æ¿ì, Korn ShellÀº ¸í·É¾î°¡ óÀ½ ½ÇÇàµÇ¾úÀ»¶§, ¸í·É¾î À̸§¿¡ ´ëÇØ tracked alias¸¦ Á¤ÀÇÇÑ´Ù. tracked alias´Â ¸í·É¾î ½ÇÇàÀ» »¡¸®ÇÒ ¼ö ÀÖµµ·Ï ¸í·É¾î¸¦ alias·Î ¼±¾ðÇÏ´Â ±â´ÉÀÌ´Ù. Á¤ÀǵǴ tracked alias ¸íÀ¸·Î´Â Àý´ë °æ·Î¸íÀÌ »ç¿ëµÈ´Ù. Á¤ÀǵǾî ÀÖ´Â tracked alias´Â alias -t ¸í·ÉÀ» ÅëÇØ Ç¥½ÃÇÒ ¼ö ÀÖ´Ù. tracked alias´Â PATH º¯¼ö°¡ resetµÉ¶§ ¹ÌÁ¤Àǵǰí, ¸í·É¾î°¡ ½ÇÇàµÉ¶§ À籸ÃàµÈ´Ù. ( ¿¹Á¦ ) ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢KORN> alias ls='ls -CF' ¦¢ ¦¢KORN> ls ¦¢<- alias¸íÀÎ ls°¡ ¦¢bin/ f1 f2 f3 f4 f5 f6 f7 m1* m2* m3* m4* ¦¢ ½ÇÇàµÇ¾ú´Ù. ¦¢KORN> alias now="date;pwd;who am i" ¦¢<- ÇϳªÀÇ alias¿¡ ¦¢KORN> now ¦¢ ¿©·¯ ¸í·É¾î°¡ ÁöÁ¤µÈ ¦¢Fri Aug 23 08:4233 EDT 1991 ¦¢ ¿¹¿Í ½ÇÇà °á°ú ¦¢/home/mjr ¦¢ ¦¢mjr term/03 Aug 23 8:03 ¦¢ ¦¢KORN> unalias ls ¦¢<- alias¸¦ Á¦°ÅÇÑ´Ù. ¦¢KORN> ls ¦¢<- ls ¸í·É¾î°¡ ½ÇÇàµÈ´Ù. ¦¢bin f1 f2 f3 f4 f5 f6 f7 m1 m2 m3 m4 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ 5. »çÀü Á¤ÀÇµÈ aliasµé Korn ShellÀº ÀϹÝÀûÀ¸·Î »ç¿ëµÇ´Â ¸í·É¾îµéÀ» Ãà¼ÒÇÑ ÀÏ·ÃÀÇ alias¸¦ Á¦°øÇÑ´Ù. ÀÌ·¯ÇÑ aliasµéÀº »ç¿ëÀÚ°¡ ÀçÁ¤ÀÇÇÒ ¼ö´Â ÀÖÀ¸³ª, µÉ¼ö ÀÖ´ÂÇÑ ÀçÁ¤ÀÇÇÏÁö ¾Ê´Â´Ù. ´ÙÀ½Àº »çÀü Á¤ÀǵǴ aliasµéÀ» º¸¿©ÁØ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦½¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ »çÀü Á¤ÀÇµÈ Alias ¦­ Á¤ÀÇ ³»¿ë ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ autoload ¦­ 'typeset -fu' ¦¢ ¦¢ false ¦­ 'let 0' ¦¢ ¦¢ functions ¦­ 'typeset -f' ¦¢ ¦¢ hash ¦­ 'alias -t -' ¦¢ ¦¢ history ¦­ 'fc -l -' ¦¢ ¦¢ integer ¦­ 'typeset -i' ¦¢ ¦¢ nohup ¦­ 'nohup ' ¦¢ ¦¢ r ¦­ 'fc -e -' ¦¢ ¦¢ true ¦­ : ¦¢ ¦¢ type ¦­ 'whence -v' ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¿¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÀÌ»óÀÇ »çÀü Á¤ÀÇµÈ aliasÁß¿¡ ÁÖ¸ñÇØ¾ß ÇÒ°ÍÀÌ ÀÖ´Ù. ±×°ÍÀº nohup aliasÀÇ Á¤ÀÇ¿¡ µé¾îÀÖ´Â °ø¹éÀÌ´Ù. ÀÌ°ÍÀº Korn shell¿¡°Ô nohup alias¸¦ ½ÇÇàÇÔ¿¡ À־ alias ´ÙÀ½¿¡ »ç¿ëÀÚ·Î ºÎÅÍÀÇ Ãß°¡ÀÇ ÁöÁ¤ÀÌ ÀÖ´Ù´Â °ÍÀ» ¾Ë·ÁÁÜÀ¸·Î½á, Korn shellÀº alias ½ÇÇà½Ã »ç¿ëÀÚ¿¡°Ô Ãß°¡ÁöÁ¤À» ¿ä±¸ÇÏ°Ô ÇÑ´Ù. --------------------------------------------------------------------------- ´ÙÀ½¹ø °­ÀÇ¿¡¼­´Â Bourne Shell¿¡¼­ÀÇ ¸í·É¾î ¶óÀΠ󸮰úÁ¤¿¡ ´ëÇؼ­ °­ÀÇÇÕ´Ï´Ù. --------------------------------------------------------------------------- #83 À¯´Ï½Ã½º (adunis2 ) Bourne ShellÀÇ ¸í·É¾î ¶óÀΠ󸮰úÁ¤ I 03/26 10:21 190 line Bourne Shell¿¡¼­ÀÇ ¸í·É¾î ¶óÀΠ󸮰úÁ¤ I -------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. --------------------------------------------------------------------- ½© ÇÁ·Î±×·¥À» ÀÛ¼ºÇϱâ Àü¿¡, ¸í·É¾î¸¦ ½ÇÇàµÇ´Â µ¿¾È¿¡ ½©¿¡ ÀÇÇؼ­ ¼öÇàµÇ´Â 󸮰úÁ¤À» ÀÌÇØÇÏ´Â °ÍÀÌ ¸Å¿ì Áß¿äÇÏ´Ù. Å͹̳ο¡¼­ ÀÔ·ÂÇÑ ¸ðµç ¶óÀÎÀº ½ÇÇàÀ» À§Çؼ­ ½©¿¡ ÀÇÇØ ºÐ¼®µÈ´Ù. À̶§ ´Ü¸»¿¡¼­ ÀÔ·ÂÇÑ ¶óÀÎÀ» ¸í·É¾î ¶óÀÎÀ̶ó Çϸç, ±âº»ÀûÀ¸·Î ´ÙÀ½°ú °°Àº Çü½ÄÀ» °®´Â´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $Program_name arguments ... ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¸í·É¾î°¡ Ä¿³Î¿¡ ÀÇÇØ ½ÇÇàµÇ±âÀü, ½©Àº ÀԷ¶óÀÎÀ» »çÀü¿¡ Á¤ÀÇµÈ ¹ø¿ª ÀýÂ÷¸¦ ¼öÇàÇÑ´Ù. Bourne Shell°ú Korn ShellÀº ¼­·Î ´Ù¸¥ ¹ø¿ª ÀýÂ÷¸¦ ¼öÇàÇϴµ¥, ÀÌÈÄ Bourne Shell°ú Korn ShellÀÇ ¸í·É¾î ¶óÀΠó¸® °úÁ¤À» °¢°¢ °­ÀÇÇÑ´Ù. ¿ì¼± Bourne Shell¿¡¼­ÀÇ ¸í·É¾î ¶óÀΠ󸮰úÁ¤À» ¼³¸íÇϱ⿡ ¾Õ¼­, ÀüüÀÇ ¹ø¿ª °úÁ¤À» µµÇ¥·Î ¼Ò°³ÇÑ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦½¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢½ÇÇà ´Ü°è ¦­ ½ÇÇà ³»¿ë ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ 1 ¦­ ÀÔ·ÂÀÇ Àбâ(read)¹× ºÐ¼®(parse) ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ 2 ¦­ ÆĶó¸ÞÅÍ ´ëÄ¡(Substitution) ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ 3 ¦­ ¸í·É¾î ´ëÄ¡(Substitution) ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ 4 ¦­ ÀÔÃâ·Â ¹æÇâÀüȯ(Redirection)°ú ÆÄÀÌÇÁ(Pipe) ó¸® ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ 5 ¦­ IFS(Internal Field Separator) ó¸® ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ 6 ¦­ È­ÀÏ¸í ´ëÄ¡(Substitution) ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ 7 ¦­ ȯ°æ ó¸® ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ 8 ¦­ º¸È£¹®ÀÚ Á¦°Å ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ 9 ¦­ ¸í·É¾î ½ÇÇà ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¿¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÀÌ °úÁ¤À» ¼³¸íÇϱâ À§ÇØ ´Ü¸»·Î ºÎÅÍ ´ÙÀ½°ú °°Àº ¶óÀÎÀÌ ÀԷµǾú´Ù°í °¡Á¤ÇÏ¿© ÀÌÈÄ °¢ ´Ü°è¸¦ ¼³¸íÇÑ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$f="The files are: "; echo `pwd` $f * > outfile ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ 1. ÀÔ·ÂÀÇ Àбâ¹× ¸í·É¾î ¶óÀÎ ºÐ¼® ÀÔ·ÂÀº newline(\n), ¼¼¹ÌÄÝ·Ð(;), ¹é±×¶ó¿îµå(&), ³í¸®°ö(&&) ¶Ç´Â ³í¸®ÇÕ(||) ¹®ÀÚµéÀ» ¸¸³¯¶§±îÁö µ¥ÀÌŸ È­ÀÏÀ̳ª ´Ü¸»ÀÇ ¸í·É¾î ¶óÀÎÀ¸·Î ºÎÅÍ ÀоîµéÀδÙ. ¸¸¾à ¸í·É¾î°¡ ´Ü¼øÇÑ º¯¼ö ÇÒ´çÀÌ ¾Æ´Ñ °æ¿ì¿¡´Â, ÀÔ·ÂÀº °¢°¢ÀÇ ´Ü¾î(Word)º°·Î ºÐ¼®µÈ´Ù. ÀÌ·¯ÇÑ ºÐ¼® ÀÛ¾÷Àº °ø¹é°ú ÅÇÀ» ±âÁØÀ¸·Î ÇàÇØÁø´Ù. À̶§ º¸È£¹®ÀÚ¿¡ µÑ·¯½×ÀÎ °ø¹éÀ̳ª ÅÇ ¹®Àڴ ó¸®ÀÇ ´ë»óÀÌ µÇÁö ¾Ê´Â´Ù. ÀÌ ´Ü°è¿¡¼­´Â À§¿¡¼­ ÀüÁ¦ÇÑ ¸í·É¾î ÀÔ·ÂÀ» ÀоîµéÀÎ ÈÄ, ÀÔ·Â ¶óÀÎÀ» °³º°ÀûÀÎ ¸í·É¾î·Î ºÐ¼®ÇÏ´Â ÀÛ¾÷ÀÌ ÇàÇØÁø´Ù. ±× °á°ú´Â ´ÙÀ½°ú °°´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ ¸í·É¾îº° ºÐ¼® ¦¢ ¦¼¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¾ ¦¢ f="The files are: " ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ echo `pwd` $f * > outfile ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÀÌÈÄ ºÐ¼®µÈ °á°úÀÇ Ã¹¹ø° ¸í·É¾îÀÎ º¯¼ö fÀÇ ÇÒ´çÀÌ ¿ì¼± º°µµ·Î ÇàÇØÁøÈÄ, µÎ¹ø°·Î ÁöÁ¤µÈ echo ¸í·É¾îÀÇ Ã³¸®°¡ °³½ÃµÈ´Ù. À̶§ echo ¸í·É¾î¸¦ ½©Àº ´Ü¾îº°·Î ºÐ¼®ÇÏ´Â ÀÛ¾÷À» ¼öÇàÇϴµ¥, ¼öÇà °á°ú´Â ´ÙÀ½°ú °°´Ù. < echo ¸í·É¾îÀÇ ºÐ¼® °á°ú > ¦£¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¤ ¦¢echo ¦¢`pwd` ¦¢$f ¦¢* ¦¢> ¦¢outfile ¦¢ ¦¦¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¥ ½©Àº À§ÀÇ °á°ú¸¦ °®°í ´ÙÀ½ ´Ü°èÀÇ ÀÛ¾÷À» ¼öÇàÇÑ´Ù. 2. ÆĶó¸ÞÅÍ ´ëÄ¡(Substitution) ÀÌ ´Ü°è¿¡¼­´Â ¸í·É¾î ¶óÀο¡ ÁöÁ¤µÇ¾î ÀÖ´Â Æ÷Áö¼Å³Î ÆĶó¸ÞÅÍ ´ëÄ¡, º¯¼ö ´ëÄ¡ ±×¸®°í Ư¼ö º¯¼ö ´ëÄ¡°¡ ½©¿¡ ÀÇÇØ ¼öÇàµÈ´Ù. ÀÌ ´Ü°è¿¡¼­ ´ëÄ¡µÇ´Â ÆĶó¸ÞÅ͵鿡´Â ¸ðµÎ $ ±âÈ£°¡ ¼±ÇàÇÑ´Ù. Àü ´Ü°èÀÇ °á°ú¸¦ º¸¸é, ÆĶó¸ÞÅͷμ­ $f°¡ ¼±¾ðµÇ¾î ÀÖ´Ù. ½©Àº $f¸¦ ´ë½ÅÇؼ­, ½ÇÁ¦ f º¯¼ö¿¡ ¼±¾ðµÇ¾î ÀÖ´Â º¯¼ö°ªÀ¸·Î ´ëÄ¡ ÀÛ¾÷À» ¼öÇàÇÑ´Ù. ´ëÄ¡ ÀÛ¾÷ ¼öÇàÈÄÀÇ °á°ú´Â ´ÙÀ½°ú °°´Ù. ¦£¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦Ô¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦Ó¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¤ ¦¢echo ¦¢`pwd` ¦­The files are ¦­* ¦¢> ¦¢outfile ¦¢ ¦¦¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦Ø¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦×¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¥ º¯È¯ÈÄ ´ÙÀ½ ´Ü°è°¡ °è¼ÓµÈ´Ù. 3. ¸í·É¾î ´ëÄ¡(Substitution) ÇѽÖÀÇ ¿ªµû¿ÈÇ¥(Grave accents(`))³»¿¡ ÁöÁ¤µÇ¾î ÀÖ´Â ¹®ÀÚ¿­¿¡ ´ëÇؼ­´Â, ½©¿¡ ÀÇÇØ ½ÇÇà ¸í·É¾î·Î ÀνĵǾî 󸮵ȴÙ. ¹Ù·Î ÀÌ ´Ü°è°¡ ¿ªµû¿ÈÇ¥³»¿¡ ±â¼úµÇ¾î ÀÖ´Â ¸í·É¾î¸¦ ½ÇÇàÇÏ´Â ´Ü°èÀÌ´Ù. ½ÇÇàµÈ ¸í·É¾î·ÎºÎÅÍÀÇ Ãâ·ÂÀÌ º»·¡ÀÇ À§Ä¡¿¡ ¸í·É¾î¸¦ ´ë½ÅÇØ À§Ä¡µÈ´Ù. ¿ªµû¿ÈÇ¥³»¿¡´Â ±×·ìÈ­, ÆÄÀÌÇÁ ¶óÀÎ, ¿¬¼ÓµÈ ¸í·É¾îµéÀ» ±â¼úµÉ ¼ö ÀÖ´Ù. ±×¸®°í ¸í·É¾î ½ÇÇà °á°ú¿¡ µé¾î ÀÖ´Â ºÒÇÊ¿äÇÑ °ø¹é, ÅÇ ±×¸®°í newline ¹®ÀÚµéÀº ½©¿¡ ÀÇÇØ Á¦°ÅµÈ´Ù. ÁÖÀÇ) ¿ªµû¿ÈÇ¥(`)¿Í µû¿ÈÇ¥(')¸¦ È¥µ·ÇÏÁö ¸»¾Æ¾ß ÇÑ´Ù. µû¿ÈÇ¥´Â Ư¼ö¹®ÀÚÀÇ Ã³¸®¸¦ ½©ÀÌ ¼öÇàÇÏÁö ¸øÇϵµ·Ï Çϴµ¥ »ç¿ëµÇ´Â ¶Ç´Ù¸¥ Ư¼ö¹®ÀÚÀÌ´Ù. ÀÌ ´Ü°èÀÇ ½ÇÇà °á°ú´Â ´ÙÀ½°ú °°´Ù. ¦£¦¡¦¡¦¡¦Ô¦¬¦¬¦¬¦¬¦¬¦¬¦Ó¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¨¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢echo ¦­/home/user1 ¦­The files are ¦¢* ¦¢ > ¦¢ outfile ¦¢ ¦¦¦¡¦¡¦¡¦Ø¦¬¦¬¦¬¦¬¦¬¦¬¦×¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦ª¦¡¦¡¦ª¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¥ 4. ÀÔÃâ·Â ¹æÇâÀüȯ(Redirection)°ú ÆÄÀÌÇÁ(Pipe) ó¸® ´ÙÀ½Àº ÀÔÃâ·Â ¹æÇâÀüȯÀ» ³ªÅ¸³»´Â ±âÈ£µéÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ ¹æÇâÀüȯ ½Éº¼ ¦¦¦¡¦¤ ó¸® ³»¿ë ¦¢ ¹ÌÁ¤Àǽà ±âº»°ª ¦¢ ¦¢(Redirection Symbol) ¦¢ ¦¢ (Default) ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¨¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ 0< ¶Ç´Â < ¦¢ ÀÔ·Â ¹æÇâÀüȯ ¦¢ Å͹̳ΠŰº¸µå ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢1>,1>>,> ¶Ç´Â >> ¦¢ Ãâ·Â ¹æÇâÀüȯ ¦¢ Å͹̳Π½ºÅ©¸° ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢2>,2>>,> ¶Ç´Â >> ¦¢ ¿¡·¯ ¹æÇâÀüȯ ¦¢ Å͹̳Π½ºÅ©¸° ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ À§ µµÇ¥¿¡¼­ ¹æÇâÀüȯ ½Éº¼¿¡ »ç¿ëµÈ ¼ýÀÚ´Â °¢°¢ÀÇ ÀÔÃâ·Â Á¾·ù¿Í ¿¬°üµÈ´Ù. ÀÌ ¼ýÀÚ´Â ÇÁ·Î±×·¥¿¡¼­ »ç¿ëµÇ´Â °¢°¢ÀÇ È­ÀϵéÀ» ±¸º°Çϱâ À§ÇØ »ç¿ëÇÏ´Â, È­ÀÏ ±â¼úºÎ(File Descriptor Table)³»ÀÇ À妽º ¹øÈ£ÀÎ È­ÀÏ ±â¼úÀÚ(File Descriptor)¸¦ ÀǹÌÇÑ´Ù. ÀÌ Å×ÀÌºí³»ÀÇ °¢°¢ÀÇ À妽ºµéÀº 0,1,2,3,4 µîÀÇ Á¤¼ö·Î ±¸º°µÇ´Âµ¥, °¢°¢ÀÇ À妽º¿¡´Â ÇÁ·Î±×·¥³»¿¡¼­ »ç¿ëÇÏ´Â °¢°¢ÀÇ È­ÀϵéÀÌ µî·ÏµÈ´Ù. ÀÌÁß 0,1,2¹øÀº ½Ã½ºÅÛ¿¡ ÀÇÇØ Ç¥ÁØÀÔ·Â, Ç¥ÁØÃâ·Â, Ç¥ÁØ¿¡·¯¸¦ ÀúÀåÇÒ È­ÀϵéÀÌ µî·ÏµÈ´Ù. Áï À̸¦ ±×¸²À¸·Î ¼³¸íÇÏ¸é ´ÙÀ½°ú °°´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¤ ¦£¦¡¦¡¦¡¦¡¦© FDT ¦¢ ¦¢ ¦§¦¡¦½¦¡¦¡¦¡¦© ¦¢ ¦¢0 ¦­ ¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡ Å͹̳ΠŰº¸µå ¦¢ ¦§¦¡¦À¦¡¦¡¦¡¦© ¦¢ ÇÁ·Î±×·¥¿¡¼­ ¦¢1 ¦­ ¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡ Å͹̳Π½ºÅ©¸° ¦¢ »ç¿ëÇÏ´Â ¦§¦¡¦À¦¡¦¡¦¡¦© ¦¢ ¦¢ È­ÀÏÀ» µî·Ï ¦¢2 ¦­ ¦¡¦¡¦¡¦¡¦¡¦¡¦¡ Å͹̳Π½ºÅ©¸° ¦¢ ¦¢ ¦¢ ¦§¦¡¦¿¦¡¦¡¦¡¦© ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ . ¦¢ ¦¦¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¥ ¦¦¦¡¦¡¦¡¦¡¦© . ¦¢ ¦¢ ¦¢ . ¦¢ »ç¿ëÀÚ°¡ ÀÌ °ªµéÀ» ¦¦¦¡¦¡¦¡¦¡¦¡¦¥ ¹æÇâÀüȯ ½É¹úÀ» ÀÌ¿ëÇÏ¿© ¹Ù²Ü¼ö ÀְԵȴÙ. ¸¸¾à ¹æÇâÀüȯ ½Éº¼ »ç¿ë½Ã ÀÔÃâ·Â ¹æÇâÀÌ ÁöÁ¤µÇÁö ¾ÊÀ¸¸é, µµÇ¥³»¿¡ ±â¼úµÇ¾îÀÖ´Â µðÆúÆ®°¡ °¡Á¤µÈ´Ù. ¶ÇÇÑ ¹æÇâÀüȯ ½Éº¼¿¡ È­ÀÏ ±â¼úÀÚ°¡ ÁöÁ¤µÇ¾î ÀÖÀ¸¸é, µðÆúÆ®·Î ¼±¾ðµÅÀÖ´Â È­ÀÏÀÌ ¾Æ´Ñ, ÁöÁ¤ÇÑ È­ÀÏ·Î ¶Ç´Â È­ÀÏ·Î ºÎÅÍ ÀÔÃâ·ÂÀÌ ÇàÇØÁø´Ù. ¶Ç ÆÄÀÌÇÁ°¡ ÁöÁ¤µÇ¾î ÀÖ´Â °æ¿ì¿¡´Â ù¹ø° ÁöÁ¤µÈ ¸í·É¾îÀÇ Ç¥ÁØÃâ·ÂÀÌ ÆÄÀÌÇÁ ´ÙÀ½¿¡ ÁöÁ¤µÇ¾î ÀÖ´Â ¸í·É¾îÀÇ Ç¥ÁØ ÀÔ·ÂÀ¸·Î Àü´ÞµÈ´Ù. ¦£¦¡¦¨¦¡¦¡¦¡¦¡¦¤ ¦¢0 ¦¢Å°º¸µå ¦¢ ¦£¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¤ ¦§¦¡¦«¦¡¦¡¦¡¦¡¦© ¦¢echo ¦¢/home/user1 ¦¢The files are ¦¢* ¦¼¦¬¦¬> ¦¢1 ¦¢outfile ¦¢ ¦¦¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦ª¦¡¦¡¦¥ ¦§¦¡¦«¦¡¦¡¦¡¦¡¦© ¦¢2 ¦¢Å͹̳Π¦¢ ÀÌ °á°ú¿¡¼­ Ãâ·Â ¹æÇâÀüȯ ½Éº¼¿¡ ÀÇÇØ ¦§¦¡¦«¦¡¦¡¦¡¦¡¦© È­ÀÏ ±â¼úÀÚ 1¹ø¿¡ µî·ÏµÈ È­ÀÏÀÌ outfile·Î ¦¢. ¦¢ . ¦¢ º¯°æµÈ°ÍÀ» ÁÖ¸ñÇϱ⠹ٶõ´Ù. ¦¢. ¦¢ . ¦¢ ÀÌ º¯°æÀº ÇöÀçÀÇ ½ÇÇà ´Ü°è¿¡¼­´Â ¾Æ¹«·± ¿µÇâÀ» ¦¦¦¡¦ª¦¡¦¡¦¡¦¡¦¥ ¹ÌÄ¡Áö ¾ÊÀ¸³ª, ¸í·É¾î ½ÇÇàÈÄ »ý¼ºµÇ´Â Ãâ·Â 󸮽ÿ¡ ¿©±â¼­ ÁöÁ¤ÇÑ È­ÀÏ Áï outfileÀÌ »ç¿ëµÈ´Ù. --------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­µµ °è¼ÓÇÏ¿© Bourne Shell¿¡¼­ÀÇ ¸í·É¾î ó¸® °úÁ¤¿¡ ´ëÇØ °­ÀÇÇÕ´Ï´Ù. --------------------------------------------------------------------------- #84 À¯´Ï½Ã½º (adunis2 ) Bourne ShellÀÇ ¸í·É¾î ¶óÀΠ󸮰úÁ¤ II 03/26 10:56 156 line Bourne Shell¿¡¼­ÀÇ ¸í·É¾î ¶óÀΠ󸮰úÁ¤ II -------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. --------------------------------------------------------------------- À̹ø °­ÀÇ¿¡¼­´Â ÀÌÀü ´Ü°è¿¡¼­ ¼³¸íÇÏ´ø Bourne Shell¿¡¼­ÀÇ ¸í·É¾î ¶óÀΠ󸮰úÁ¤¿¡ ´ëÇØ °è¼ÓÇÏ¿© ¼³¸í µå¸³´Ï´Ù. 5. IFS (Internal Field Separator) ó¸® ´ÙÀ½ ´Ü°è·Î IFS 󸮰¡ ¼öÇàµÈ´Ù. ÀÔ·ÂÀº ¸í·É¾î, È­ÀÏ¸í ¶Ç´Â º¯¼ö ´ëÄ¡·Î ÀÎÇØ ÀԷ½ÃÀÇ »óÅÂ¿Í ´Þ¶óÁö°Ô µÇ±â ¶§¹®¿¡ IFS¸¦ ±âÁØÀ¸·Î ÀçºÐ¼®µÈ´Ù. IFS º¯¼ö´Â ¸í·É¾î ¶óÀγ»ÀÇ °¢ Çʵ带 ±¸º°ÇÒ¶§ »ç¿ëµÇ´Â ¹®ÀÚµéÀÌ Á¤ÀǵǾî ÀÖ´Ù. ±âº»ÀûÀ¸·Î(µðÆúÆ®·Î) IFS º¯¼ö¿¡´Â °ø¹é, ÅÇ ±×¸®°í newline ¹®ÀÚ°¡ Á¤ÀǵǾî ÀÖ´Ù. ¸í·É¾î ¶óÀÎ»ó¿¡ ÁöÁ¤µÇ¾îÀÖ´Â IFS¿¡ Á¤ÀǵǾî ÀÖ´Â ¹®ÀÚµéÀº °¢ Çʵ带 ±¸º°Çϱâ À§ÇØ °ø¹éÀ¸·Î ´ëÄ¡µÈ´Ù. ±×·¯³ª º¸È£¹®ÀÚ(µû¿ÈÇ¥, ½Öµû¿ÈÇ¥µî)·Î µÑ·¯ ½×ÀÎ IFS ¹®ÀÚµéÀº ½©ÀÇ Ã³¸®·ÎºÎÅÍ º¸È£µÈ´Ù. ¸¸¾à IFS°¡ »ç¿ëÀÚ¿¡ ÀÇÇØ º¯°æµÇ¾ú´Ù¸é, IFS°¡ °ø¹é ¹®ÀÚ¿¡ ´õÇÏ¿© ÁöÁ¤ÇÑ °ªÀÌ ÇÒ´çµÈ´Ù. ¿¹¸¦µé¸é: "" $IFS=: "" ¶ó°í ÁöÁ¤ÇÏ¸é °ø¹é¿¡ ´õÇÏ¿© IFS¿¡ :À» ÇÒ´çÇÑ´Ù. À̹ø ´Ü°è¿¡ ´ëÇÑ ¿¹Á¦´Â Ãæ½ÇÇÑ ¿¹¸¦µé±â À§Çؼ­ Áö±Ý±îÁö¿Í´Â ´Ù¸¥ ¿¹¸¦ µé°íÀÚ ÇÑ´Ù. ¸í·É¾î ¶óÀο¡ ´ÙÀ½°ú °°ÀÌ ÁöÁ¤µÇ¾î ÀÖ´Ù°í °¡Á¤ÇÏÀÚ. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $echo The files in /home/mjr are: * ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÀÌ °æ¿ì, ÀÌ ´Ü°è°¡ ¼öÇàµÇ¸é ¹®ÀÚ´Â °ø¹éÀ¸·Î ´ëÄ¡µÇ°Ô µÈ´Ù. ±× °á°ú´Â ´ÙÀ½°ú °°´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ echo The files in /home/mjr are: * ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ±×·¯³ª º¸È£¹®ÀÚ³»¿¡ À̵é IFS ¹®ÀÚµéÀÌ ÁöÁ¤µÇ¾î ÀÖÀ» °æ¿ìÀÇ Ã³¸® °æ¿ì¸¦ º¸ÀÚ. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $echo "The files in /home/mjr are: " * ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÀÌ °æ¿ì¿¡´Â ¾Æ·¡¿Í °°ÀÌ º»·¡ ÁöÁ¤µÇ¾î ÀÖ´Â ¶óÀÎ ±×´ë·Î À¯ÁöµÈ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ echo "The files in /home/mjr are: " * ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ 6. È­Àϸí Àü°³(Expansion) ÀÌ ´Ü°è¿¡¼­ ÀÔ·Â ¶óÀÎÀÌ È­ÀÏ¸í ¸ÞŸÄɸ¯ÅÍ(metacharacters)ÀÇ Á¸Àç ¿©ºÎ¸¦ È®ÀÎÇϱâ À§ÇØ °Ë»öµÈ´Ù. À̶§ ÀÌµé ¹®ÀÚ°¡ ÀÔ·Â ¶óÀο¡¼­ ¹ß°ßµÇ¸é, ½©Àº ´ë»ó µð·ºÅ丮³»¿¡¼­ ÁöÁ¤ÇÑ Á¶°Ç°ú ÀÏÄ¡ÇÏ´Â È­ÀÏÀ» ã´Â ÀÛ¾÷À» ¼öÇàÇÑ´Ù. ÀÏÄ¡µÇ´Â È­ÀÏÀÌ ¹ß°ßµÇ¸é, ¹ß°ßµÈ È­ÀÏÀÇ È­ÀϸíÀ¸·Î ´ëÄ¡ÇÏ°Ô µÈ´Ù. ¸¸¾à ÀÏÄ¡µÇ´Â È­ÀÏÀÌ ¹ß°ßµÇÁö ¾ÊÀ¸¸é º»·¡ÀÇ ¸ÞŸÄɸ¯Å͵éÀÌ ±×´ë·Î ÀÔ·Â ¶óÀο¡ ³²°ÔµÈ´Ù. ´ÙÀ½ ¿¹Á¦´Â È­Àϸí Àü°³ÈÄ °á°ú¸¦ º¸¿©ÁØ´Ù. ( 4´Ü°èÀÇ ½ÇÇà °á°ú ) ¦£¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¤ ¦¢ echo ¦¢ /work/acct/user¦¢The files are:¦¢ * ¦¢ ¦¦¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦ª¦¡¦¡¦¥ ÀÌ °á°ú¿¡¼­ º¸¸é È­ÀÏ¸í ´ëÄ¡¸¦ ÀǹÌÇÏ´Â * ¹®ÀÚ°¡ ÁöÁ¤µÇ¾î ÀÖ´Ù. ( È­Àϸí Àü°³ ´Ü°èÀÇ ½ÇÇà °á°ú ) ¦£¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦Ô¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¯ ¦¢ echo ¦¢ /work/acct/user¦¢The files are:¦­file1 file2 file3 ¦­ ¦¦¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦Ø¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦° * ¹®ÀÚ°¡ ÁöÁ¤µÇ¾ú´ø °÷¿¡, ÇöÀçÀÇ µð·ºÅ丮³»¿¡ ÀÖ´Â ¸ðµç È­ÀϸíÀÌ ´ëÄ¡µÈ °ÍÀ» º¼¼ö ÀÖ´Ù. 7. ȯ°æ ó¸® (Environment Processing) ÀÌ ´Ü°è¿¡¼­´Â 3°¡ÁöÀÇ ÀÛ¾÷ÀÌ ¼öÇàµÈ´Ù. ù°·Î, ¸í·É¾î¿¡¼­ ¿ä±¸ÇÏ´Â ¸í·É¾î ½ÇÇà ȯ°æÀ» ±¸ÃàÀ» À§ÇÑ º¯¼öµé¿¡ ´ëÇÑ ÇÒ´çÀÌ ÇàÇØÁø´Ù. ÁÖÀÇ) À̶§ÀÇ º¯¼ö ÇÒ´çÀº ¸í·É¾î°¡ ½ÇÇàµÉ¶§ ½ÇÇà ȯ°æÀ» ¼³Á¤Çϱâ À§Çؼ­ ¸í·É¾î ÀÚü¿¡¼­ º¯¼öÇÒ´çÀ» ¿ä±¸ÇÏ´Â °æ¿ì¿¡ ¸í·É¾î»ó¿¡ ÁöÁ¤µÇ¾î ÀÖ´Â º¯¼öµéÀÇ ÇÒ´çÀ» ÀǹÌÇÑ´Ù. ÀÌ °æ¿ìÀÇ ¿¹·Î dd ¸í·É¾î¸¦ µé¼ö ÀÖ´Ù. dd ¸í·É¾î´Â È­ÀÏÀÇ ³»¿ëÀ» º¯È¯ ¶Ç´Â º¹»çÇÏ´Â ±â´ÉÀ» ¼öÇàÇÑ´Ù. ±×·±µ¥ ÀÌ ¸í·ÉÀº ÀÌ¿Í °°Àº ÀÛ¾÷À» ½ÇÇàÇϱâ À§ÇØ ¸í·É¾î»ó¿¡¼­ ¸î°¡Áö º¯¼öÇÒ´çÀ» ÇÊ¿ä·Î ÇÑ´Ù. ´ÙÀ½Àº dd ¸í·É¾îÀÇ ¿¹ÀÌ´Ù. $dd conv=ucase if=prog1 ÀÌ ¸í·ÉÀº prog1 È­ÀÏÀÇ ³»¿ëÀ» ´ë¹®ÀÚ·Î º¯È¯ÇÑ´Ù. À̶§ conv¿Í if´Â ¸í·É¾îÀÇ ½ÇÇà ȯ°æÀ» Á¤ÀÇÇϱâ À§ÇØ dd ¸í·É¾î¿¡ ÀÇÇØ ÇÊ¿ä·ÎÇÏ´Â º¯¼öÀÌ´Ù. conv´Â º¯È¯ Á¾·ù¸¦ ÁöÁ¤ÇÏ´Â º¯¼öÀÌ°í, if´Â ´ë»óÈ­ÀÏÀ» ÁöÁ¤ÇÏ´Â º¯¼öÀÌ´Ù. ¹Ù·Î ÀÌ·± º¯¼öµé¿¡ ´ëÇÑ ÇÒ´çÀÌ ¼öÇàµÇ´Â ´Ü°è°¡ ȯ°æ ó¸® ´Ü°èÀÌ´Ù. µÑ°·Î, ¸í·É¾îÀÇ À§Ä¡¸¦ ã±âÀ§ÇØ PATH º¯¼öÀÇ °Ë»öÀÌ ¼öÇàµÈ´Ù. ¸¸¾à PATH º¯¼ö¿¡ ÁöÁ¤µÇ¾î ÀÖ´Â °æ·Î¸íÀ» °Ë»öÇÏ¿© ¸í·É¾î°¡ ¹ß°ßµÇ¸é, ¸í·É¾î°¡ Àý´ë °æ·Î¸íÀ¸·Î ´ëÄ¡µÈ´Ù. ±×·¯³ª ¸í·É¾î°¡ Àý´ë °æ·Î¸íÀ¸·Î ÁöÁ¤µÈ °æ¿ì¿¡´Â, ÀÌ¿Í°°Àº PATH º¯¼ö¸¦ »ç¿ëÇÏ´Â È­ÀÏ °Ë»öÀÌ ¼öÇàµÇÁö ¾Ê°í ÁöÁ¤µÈ Àý´ë °æ·Î¸íÀÌ ±×´ë·Î »ç¿ëµÈ´Ù. ¼Â°·Î, Æ÷Áö¼Å³Î ÆĶó¸ÞÅÍ ÇÒ´çÀÌ ¼öÇàµÈ´Ù. 8. º¸È£¹®ÀÚÀÇ Á¦°Å ½© ó¸®ÀÇ ¸¶Áö¸·À¸·Î ÀÔ·Â ¶óÀο¡ ³²¾ÆÀÖ´Â º¸È£¹®ÀÚ°¡ »èÁ¦µÇ°í, ¸í·É¾î´Â ½ÇÇàÀÌ °³½ÃµÈ´Ù. ÀÔ·Â ¶óÀÎÀÇ ½©ÀÇ Ã³¸® °á°ú´Â ½©ÀÇ ½ÇÇà Ç÷¯±×¸¦ set -x¿¡ ÀÇÇØ ¼³Á¤ÇÔÀ¸·Î½á È®ÀÎÇÒ ¼ö ÀÖ´Ù. ÀÌ Ç÷¯±×¸¦ ¼³Á¤ÇÔ¿¡ ÀÇÇؼ­, »ç¿ëÀÚ´Â ½ÇÁ¦·Î Ä¿³Î¿¡ Àü´ÞµÇ´Â º¯È¯µÈ ÀÔ·Â ¶óÀÎÀ» È®ÀÎÇØ º¼¼ö ÀÖ°Ô µÈ´Ù. À̶§ ½©Àº º¯È¯µÈ ÀÔ·Â ¶óÀÎÀÇ ¾Õ¿¡ +¶ó´Â Ç¥½ÄÀÚ¸¦ ºÙ¿© Ãâ·ÂÇÏ¿© º»·¡ÀÇ ÀÔ·Â ¶óÀΰú ±¸º°ÇØÁØ´Ù. ´ÙÀ½Àº set -x ¸í·ÉÀ» »ç¿ëÇؼ­ ÀÔ·Â ¶óÀÎÀÇ º¯È¯µÈ °á°ú¸¦ È®ÀÎÇÏ´Â ¿¹¸¦ º¸¿©ÁÖ´Â ¿¹ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $set -x ¦¢ ¦¢ $echo "The files in" `pwd` are: * ¦¢ ¦¢ + pwd ¦¢ ¦¢ + echo The files in /home/mjr are: bin f1 f2 f3 f4 ¦¢ ¦¢ The files in /home/mjr are:bin f1 f2 f3f4 ¦¢ ¦¢ $set +x ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ À§ÀÇ ¿¹¿¡¼­ +°¡ ºÙ¾î Ãâ·ÂµÈ ¶óÀÎÀÌ µÎ ¶óÀÎÀÌ ÀÖ´Ù. óÀ½ÀÇ ¶óÀÎÀº ¿ªµû¿ÈÇ¥(½ÇÇà ¸í·É¾îÀÓÀ» ÀǹÌ)·Î ÁöÁ¤µÇ¾î ½©¿¡ ÀÇÇØ ¿ì¼± ó¸®Çϱâ À§ÇØ Ä¿³Î¿¡ Àü´ÞµÈ ¸í·É¾î¸¦ Ç¥½ÃÇϸç, µÎ¹ø° ¶óÀÎÀº echo ¸í·É¾î¸¦ ½©ÀÌ º¯È¯ÇÏ¿© Ä¿³Î¿¡ Àü´ÞµÉ¶§ÀÇ »óŸ¦ º¸¿©ÁÖ´Â °á°úÀÌ´Ù. 9. ¸í·É¾î ½ÇÇà ÀÔ·ÂµÈ ¸í·É¾î ¶óÀÎÀº ÀÌ»óÀÇ ´Ü°è¸¦ °ÅÃÄ º¯È¯µÇ°í, ½ÇÇàÀ» À§ÇØ Ä¿³Î¿¡ Àü´ÞµÇ¾î, ½ÇÇàµÈ´Ù. ¸¸¾à ÀÌ ¸í·É¾î°¡ À¯´Ð½º ¿î¿µÃ¼Á¦ÀÇ ±âº» ¸í·É¾î(Built-in)ÀÎ °æ¿ì¿¡´Â ÇöÀçÀÇ ½©ÀÌ ÀÌ ¿ä±¸¸¦ ó¸®ÇÑ´Ù. ´Ù¸¥ °æ¿ì¿¡´Â ¸í·É¾î´Â ÄÄÆÄÀÏµÈ ÇÁ·Î±×·¥°ú °°ÀÌ ¸Þ¸ð¸®·ÎÀÇ load°¡ ¼öÇàµÇ°í, load°¡ Á¤»óÀûÀ¸·Î µÇ¾îÁö¸é exec ½Ã½ºÅÛ È£ÃâÀ» ÅëÇØ ½ÇÇàµÈ´Ù. ¸¸¾à Á¤»óÀûÀÎ load°¡ ¼öÇàµÇÁö ¾ÊÀ¸¸é, fork ½Ã½ºÅÛ È£ÃâÀÌ ¼öÇàµÇ°í, ÇÏÀ§ ½©Àº µ¥ÀÌŸó·³ ÀÔ·Â ½ºÅ©¸³Æ®¸¦ Àоîµé¿©, ÀÔ·Â ½ºÅ©¸³Æ®´Â ½©¿¡ ÀÇÇØ ¹ø¿ªµÇ¾î 󸮵ȴÙ. --------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­´Â Korn ShellÀÇ ¸í·É¾î ¶óÀΠ󸮰úÁ¤¿¡ ´ëÇؼ­ °­Àǵ˴ϴÙ. --------------------------------------------------------------------------- #85 À¯´Ï½Ã½º (adunis2 ) Korn ShellÀÇ ¸í·É¾î ¶óÀΠ󸮰úÁ¤ 03/27 13:49 244 line Korn Shell¿¡¼­ÀÇ ¸í·É¾î ¶óÀΠ󸮰úÁ¤ -------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. --------------------------------------------------------------------- ¿©·¯ °üÁ¡¿¡¼­ Korn ShellÀº Bourne Shell°ú µ¿ÀÏÇÑ ¹æ½ÄÀ¸·Î ¸í·É¾î¸¦ ½ÇÇàÇϳª, ¸í·É¾î ½ÇÇൿ¾È ¸î°¡Áö ºÎ°¡ÀûÀΠ󸮸¦ ´õ ¼öÇàÇÑ´Ù. ´ÙÀ½Àº Korn Shell¿¡ÀÇÇØ ¼öÇàµÇ´Â ¸í·É¾î ½ÇÇà ÀýÂ÷¸¦ ³ªÅ¸³»´Â µµÇ¥ÀÌ´Ù. ÀÌ µµÇ¥»ó¿¡¼­ ¿ì¸®´Â ½±°Ô µÎ ½©°£ÀÇ Â÷À̸¦ È®ÀÎÇÒ ¼ö ÀÖ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦½¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ ½ÇÇà´Ü°è ¦­ ½ÇÇà ³»¿ë ¦¢ ¦¼¦¬¦¬¦¬¦¬¦¬¦¬¦¶¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¾ ¦¢ 1 ¦­ ¸í·É¾î ¶óÀÎ Àб⠦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ 2 ¦­ ¸í·É¾î ¶óÀÎ ºÐ¼® ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ 3 ¦­ ÅäÅ«(Token)µéÀÇ ºÐ·ù ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ 4 ¦­ ¾Ë¸®¾Æ½º(Alias) ´ëÄ¡ ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ 5 ¦­ Æ¿µå(Tilde) È®Àå ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ 6 ¦­ ¸í·É¾î ´ëÄ¡ ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ 7 ¦­ ÆĶó¸ÞÅÍ ´ëÄ¡ ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ 8 ¦­ IFS ó¸® ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ 9 ¦­ È­Àϸí È®Àå ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ 10 ¦­ º¸È£¹®ÀÚ Á¦°Å ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ 11 ¦­ ¸í·É¾î ½ÇÇà ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¿¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ Korn ShellÀº À§¿Í°°Àº °úÁ¤À» ÅëÇØ ¸í·É¾î¸¦ ½ÇÇàÇÏ°Ô µÇ´Âµ¥, ÀÌµé °úÁ¤Àº Å©°Ô µÎ ´Ü°è·Î ºÐ·ùÇÒ ¼ö ÀÖ´Ù. ù¹ø° ´Ü°è´Â ÀÔ·ÂµÈ ¸í·É¾î¸¦ Àаí, ÅäÅ«(Token)À¸·Î ºÐ·ùÇÏ´Â ´Ü°èÀÌ°í, µÎ¹ø° ´Ü°è´Â ¸í·É¾î¸¦ È®ÀåÇÏ´Â °úÁ¤°ú, ¸¶Áö¸· ½ÇÇà°úÁ¤±îÁöÀÇ ´Ü°èÀÌ´Ù. ÀÌÁ¦ºÎÅÍ Korn Shell¿¡ÀÇÇØ ½ÇÇàµÇ´Â 󸮰úÁ¤À» ¼³¸íÇÑ´Ù. ±×·¯³ª Bourne Shell°ú À¯»çÇÑ °úÁ¤À¸·Î ¼öÇàµÇ±â ¶§¹®¿¡ ´ë·«ÀûÀ¸·Î ¼³¸íÇÑ´Ù. ¸¸ÀÏ ÀÌÇØ°¡ µÇÁö ¾Ê´Â ºÎºÐÀº "Bourne ShellÀÇ ¸í·É¾î ¶óÀΠ󸮰úÁ¤" °­ÀǸ¦ ÂüÁ¶Çϱ⠹ٶõ´Ù. ¹°·Ð Korn Shell ƯÀ¯ÀÇ Ã³¸®¿¡ ´ëÇؼ­´Â ÀÚ¼¼È÷ ¼³¸íÇÒ °ÍÀÌ´Ù. 1. ¸í·É¾î ¶óÀÎ Àбâ Á¦ÀÏ Ã³À½ÀÇ ¼öÇà´Ü°è´Â »ç¿ëÀÚ°¡ ¿ä±¸ÇÑ ÀÔ·ÂÀ» ¹Þ¾ÆµéÀÌ´Â ´Ü°èÀÌ´Ù. Korn ShellÀº ;, |, &, ||, &&, |& ¶Ç´Â newlineÀ» ¸¸³¯¶§±îÁö ¸í·É¾î ¶óÀÎÀ» Àд´Ù. À̶§ ÇÑ°¡Áö ¿ì¸®°¡ ¾Ë°í ³Ñ¾î°¡¾ß ÇÒ°ÍÀÌ ÀÖ´Ù. ¹°¸®Àû ¶óÀΰú ¸í·É¾î ¶óÀÎÀÌ µ¿ÀÏÇÏÁö ¾Ê´Ù´Â °ÍÀÌ´Ù. ´Ü¼øÇÑ ¸í·É¾î´Â ÇϳªÀÇ ¶óÀο¡ ±â¼úµÉ¼ö ÀÖÀ¸³ª, º¹ÇÕ ¸í·É¾îµéÀº ¿©·¯ ¶óÀο¡ °ÉÃļ­ ±â¼úµÉ ¼ö Àֱ⠶§¹®ÀÌ´Ù. ±×·¯¹Ç·Î ½©¿¡ ÀÇÇØ ¹Þ¾Æµé¿©Áö´Â ¸í·É¾î ¶óÀÎÀº ÇϳªÀÇ ¶óÀÎÀÌ ¾Æ´Ï¶ó, ¿©·¯ ¶óÀεµ µÉ¼ö ÀÖ´Ù´Â °ÍÀ» ÀνÄÇØ¾ß ÇÑ´Ù. ¸¸¾à Alias ¼±¾ð°ú ¸í·É¾î°¡ µ¿ÀÏÇÑ ¹°¸®Àû ¶óÀÎ»ó¿¡ ÁöÁ¤µÇ¾î ÀÖÀ» °æ¿ì¿¡´Â °°Àº ¹°¸®Àû ¶óÀÎ»ó¿¡ ÁöÁ¤µÈ Alias´Â ¸í·É¾î¿¡¼­ ÂüÁ¶ÇÒ ¼ö ¾ø°ÔµÈ´Ù. ±× ÀÌÀ¯´Â Alias´Â Alias°¡ Á¤ÀÇµÈ ¹°¸®Àû ¶óÀÎ ÀÌÈÄÀÇ ¶óÀο¡¼­¸¸ ÂüÁ¶ÇÒ ¼ö Àֱ⠶§¹®ÀÌ´Ù. ´ÙÀ½Àº ±× ¿¹¸¦ º¸¿©ÁÖ°í ÀÖ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ KORN> alias p=pwd;p ¦¢<- µ¿ÀÏÇÑ ¹°¸®Àû ¶óÀÎ»ó¿¡ ÁöÁ¤µÈ Alias´Â ¦¢ ksh:p:not found ¦¢ µ¿ÀÏ ¶óÀλóÀÇ ¸í·É¾î¿¡¼­ ÂüÁ¶ ºÒ°¡´ÉÇÏ´Ù. ¦¢ KORN> x=Here \ ¦¢<- Alias¿Í ¸í·É¾î°¡ ¹°¸®ÀûÀ¸·Î ¦¢ ;echo $x ¦¢ ´Ù¸¥ ¶óÀο¡ ÁöÁ¤µÇ¾î Àֱ⠶§¹®¿¡ ¦¢ Here ¦¢ ÂüÁ¶ ¸í·ÉÀÌ ½ÇÇàµÆ´Ù. ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ 2.,3. ¸í·É¾î ¶óÀÎÀÇ ÅäÅ«º° ºÐ¼®¹× ºÐ·ù ÀÏ´Ü ¹Þ¾ÆµéÀÎ ÀÔ·ÂÀº, Korn ShellÀÌ ÅäÅ«º°·Î ºÐ¼®ÇÑ´Ù. À̶§ÀÇ ºÐ¼® ´ÜÀ§ÀÎ ÅäÅ«¿¡´Â ´ÙÀ½°ú °°Àº °ÍµéÀÌ ÀÖ´Ù. . ÀÔÃâ·Â ¿¬»êÀÚ . Á¦¾î ¿¬»êÀÚ . Newline ¹®ÀÚ . ¿¹¾à¾î . º¯¼ö ½Äº°ÀÚ . ´Ü¾î . Here Document ( < alias l l=ls -CF KORN> l ~mjr <----- mjrÀ̶ó´Â »ç¿ëÀÚÀÇ È¨ µð·ºÅ丮¸¦ ÀǹÌÇÑ´Ù. bin/ f1 f2 f3 f4 f5 f6 f7 m1* m2* m3* m4* 6. ¸í·É¾î ´ëÄ¡ Korn ShellÀº ÀÔ·Â ¶óÀο¡ $(...) ¶Ç´Â `...` Çü½ÄÀ¸·Î ÁöÁ¤µÇ¾î ÀÖ´Â ½ÇÇàÇØ¾ß ÇÒ ¸í·É¾îÀÇ Á¸Àç ¿©ºÎ¸¦ °Ë»çÇÑ´Ù. ¸¸ÀÏ ÀÔ·Â ¶óÀο¡ ÀÌ·± Çü½ÄÀÇ ½ÇÇà ¸í·É¾îµéÀÌ ÀÖÀ» °æ¿ì¿¡´Â, Korn ShellÀº ÀÌµé ¸í·É¾îµéÀ» ½ÇÇàÇÏ°í, ÁöÁ¤ À§Ä¡¿¡ ¸í·É¾îÀÇ Ãâ·ÂÀ» À§Ä¡½ÃŲ´Ù. ÀÔ·Â ¶óÀο¡ ¸í·É¾î ´ëÄ¡¸¦ ÁöÁ¤ÇÒ¶§ $(cat file)ÀÇ Çü½ÄÀ» ´ë½ÅÇÏ¿©, $( cat list ¦¢ ¦¢ user1 ¦¢ ¦¢ user2 ¦¢ ¦¢ user3 ¦¢ ¦¢ nouser ¦¢ ¦¢ KORN> mail `cat list` < letter <---------------- (1) ¦¢ mail: Can't send to nouser ¦¢ ¦¢ mail: Return to mjr ¦¢ ¦¢ KORN> echo "the names in list are: $(cat list)" <---- (2) ¦¢ the names in list are:user1 ¦¢ ¦¢ user2 ¦¢ ¦¢ user3 ¦¢ ¦¢ nouser ¦¢ ¦¢ KORN> echo "the names in list are: $(< list)" <----- (3) ¦¢ the names in the list are: user1 ¦¢ ¦¢ user2 ¦¢ ¦¢ user3 ¦¢ ¦¢ nouser ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ À§ÀÇ ¿¹¿¡¼­´Â ¸í·É¾î ´ëÄ¡ °úÁ¤ÀÇ ½ÇÇà ¿¹¸¦ º¸¿©ÁÖ°í ÀÖ´Ù. (1)¹øÀÇ ¿¹´Â cat list ¸í·É¾îÀÇ ½ÇÇà °á°ú·Î »ý¼ºµÇ´Â list È­Àϼӿ¡ »çÀü Á¤ÀǵǾî ÀÖ´Â »ç¿ëÀڵ鿡°Ô ¸ÞÀÏÀÌ ¹ß¼ÛµÇ´Â °ÍÀ» È®ÀÎÇÒ ¼ö ÀÖ´Ù. º»·¡ mail ¸í·É¾î´Â ½ÇÇà °á°ú¿¡ ´ëÇÑ ¸Þ¼¼Áö¸¦ Ç¥½ÃÇÏÁö ¾Ê±â ¶§¹®¿¡ ÀÌ ¿¹¿¡¼­´Â ½Ã½ºÅÛ»ó¿¡ Á¸ÀçÇÏÁö ¾Ê´Â »ç¿ëÀÚ Áï, nouser¸¦ ÁöÁ¤ÇÏ¿© ¿¡·¯¸¦ ¹ß»ý½ÃÅ´À¸·Î½á ½ÇÇà ¿©ºÎ¸¦ È®ÀÎÇÒ¼ö ÀÖ°Ô Çß´Ù. (2),(3)¹øÀÇ ¿¹´Â $(...) Çü½ÄÀ¸·Î ¸í·É¾î ´ëÄ¡¸¦ ÁöÁ¤ÇÏ´Â ¿¹¸¦ º¸¿©ÁØ´Ù. (2)¹ø Çü½Äº¸´Ù´Â (3)¹ø Çü½ÄÀÌ È¿À²ÀûÀÌ´Ù. 7.,8.,9.,10. ÆĶó¸ÞÅÍ ´ëÄ¡ IFS ó¸® È­Àϸí È®Àå º¸È£¹®ÀÚ Á¦°Å Korn Shellµµ Bourne Shell°ú µ¿ÀÏÇÑ Çü½ÄÀ¸·Î ÀÌ ´Ü°èµéÀ» ¼öÇàÇÑ´Ù. ÀÚ¼¼ÇÑ ³»¿ëÀº "Bourne ShellÀÇ ¸í·É¾î ¶óÀΠó¸® °úÁ¤"À» ÂüÁ¶Çϱ⠹ٶõ´Ù. ´ÙÀ½Àº ÀÌ ´Ü°èµéÀÇ ¼öÇà ³»¿ëÀ» º¸¿©ÁÖ´Â ¿¹ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢KORN> set -x ¦¢ ¦¢KORN> echo "The files in $PWD are :" * ¦¢ ¦¢+echo The files in /home/mjr are : bin f1 f2 f3 f4 f5 f6 f7 m1 m2 m3¦¢ ¦¢The files in /home/mjr are : bin f1 f2 f3 f4 f5 f6 f7 m1 m2 m3 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ set -x ¸í·ÉÀ» ÅëÇØ Korn Shell¿¡ÀÇÇØ º¯È¯µÇ¾î, Kernel¿¡ Àü´ÞµÇ´Â º¯È¯µÈ ÀÔ·ÂÀÌ + ÇÁ·ÒÇÁÆ®¿¡ ¿¬À̾î Ç¥½ÃµÇ°í ÀÖ´Ù. 11. ¸í·É¾î ½ÇÇà ÀÌ ´Ü°è¿¡¼­´Â Korn ShellÀº È­ÀÏ ÀÔÃâ·Â ¹æÇâÀüȯÀ» ÅëÇØ Áö½ÃµÈ È­ÀϵéÀ» »ý¼ºÇÑ´Ù. ¿¹¸¦µé¸é " cat list > newfile "À̶ó°í ÁöÁ¤ÇßÀ» °æ¿ì, ÁöÁ¤µÈ newfileÀ» ÀÌ ´Ü°è¿¡¼­ »ý¼ºÇÑ´Ù. ´ÙÀ½¿¡ Korn ShellÀº ½ÇÇàÇÒ ¸í·É¾î°¡ Built-in ¸í·É¾îÀÎÁö¸¦ °Ë»çÇÑ´Ù. Built-in ¸í·É¾î¶õ À¯´Ð½º °íÀ¯ ¸í·É¾î¸¦ ÀǹÌÇÑ´Ù. ¸¸ÀÏ ½ÇÇàÇÒ ¸í·É¾î°¡ Built-in ¸í·É¾îÀÎ °æ¿ì¿¡´Â ÇöÀçÀÇ ½©¿¡¼­ ¸í·É¾î¸¦ ½ÇÇàÇÑ´Ù. ±×·¯³ª ÆÄÀÌÇÁ ¶óÀÎ»ó¿¡ ÁöÁ¤µÈ Built-in ¸í·É¾îµéÀº ÆÄÀÌÇÁ»óÀÇ ¸¶Áö¸· ¸í·ÉÀ» Á¦¿ÜÇÏ°í´Â ¸ðµÎ ¼­ºê ½©¿¡¼­ ½ÇÇàµÈ´Ù. ±×¶§¹®¿¡ ÆÄÀÌÇÁ ¶óÀλóÀÇ Built-in ¸í·É¾îµéÀº ÇöÀçÀÇ ½©¿¡ ¾Æ¹«·± ¿µÇâÀ» ³¢Ä¡Áö ¾Ê´Â´Ù. (Á¶±ÝÀü¿¡ ¼³¸íÇßµíÀÌ ÆÄÀÌÇÁ ¶óÀλóÀÇ ¸¶Áö¸· ¸í·É¾î´Â ¿¹¿ÜÀÌ´Ù.) ´ÙÀ½À¸·Î Korn ShellÀº ¸í·É¾î°¡ functionÀÎÁö¸¦ È®ÀÎÇϱâ À§ÇØ °Ë»çÇÏ°í, ¿ä±¸µÈ ȯ°æ¿¡¼­ functionÀ» ½ÇÇàÇÑ´Ù. Built-in ¸í·É¾î¿Í ´Þ¸®, functionÀº Æ÷Áö¼Å³Î ÆĶó¸ÞÅÍ, functionÀÌ È£ÃâµÇ¾úÀ» ¶§ÀÇ ÇàÇØÁö´Â º¯¼öÇÒ´ç, È£Ãâ ȯ°æ¿¡ ÀÇÇØ ¼³Á¤µÇ´Â ¿É¼Ç°ú Trap (TrapÀº ÇÁ·Î±×·¥³»¿¡¼­ ƯÁ¤ÇÑ Çö»óÀÌ(signal·Î °¨ÁöÇÏ°Ô µÈ´Ù.) ¹ß»ýÇßÀ»¶§ 󸮹æ½ÄÀ» ÁöÁ¤Çϱâ À§ÇÑ ¸í·É¾îÀÌ´Ù.)À» ÀÌ¿ëÇÒ ¼ö ¾ø´Ù. ¸¸¾à ¸í·É¾î°¡ Built-in ¸í·É¾î ¶Ç´Â functionÀÌ ¾Æ´Ï¸é, Korn ShellÀº ÇØ´ç ¸í·É¾î¸¦ ã±â À§ÇØ PATH º¯¼ö¿¡ ÇÒ´çµÇ¾î ÀÖ´Â °æ·Î¸íµéÀ» »ç¿ëÇÑ´Ù. À̶§ set -h ¸í·É¿¡ ÀÇÇØ Track all ¿É¼ÇÀÌ ¼³Á¤µÇ¾î ÀÖ°í, ¸í·É¾î ´Ü¾î°¡ ÀÌ¹Ì Tracked alias·Î ¼º¾ðµÇ¾î ÀÖÁö ¾Ê´Ù¸é, ¸í·É¾î ´Ü¾î´Â ¸í·É¾îÀÇ Àý´ë °æ·Î¸íÀ» °ªÀ¸·Î °®´Â Tracked Alias·Î ¼±¾ðµÈ´Ù. ÀÌ·¸°Ô ¼±¾ðµÇ´Â Tracked Alias´Â ¸í·É¾î ½ÇÇà½Ã ¸í·É¾îÀÇ À§Ä¡¸¦ °Ë»öÇϱâ À§ÇØ ¼Ò¿äµÇ´Â Ž»ö½Ã°£À» ÁÙ¿©ÁÜÀ¸·Î½á, ¸í·É¾îÀÇ ½ÇÇà ¼Óµµ¸¦ ºü¸£°ÔÇØÁÖ°Ô µÈ´Ù. Tracked AliasµéÀº alias -t ¸í·ÉÀ» ÅëÇØ È®ÀÎÇغ¼¼ö ÀÖ´Ù. --------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­´Â Shell Reserved Variables¿¡ ´ëÇØ °­ÀÇ µå¸³´Ï´Ù. --------------------------------------------------------------------------- #86 À¯´Ï½Ã½º (adunis2 ) ½© º¯¼ö¸¦ ÀÌ¿ëÇÑ ÀÛ¾÷ȯ°æ ±¸Ãà 03/27 21:53 210 line º¯¼ö¸¦ ÀÌ¿ëÇÑ ÀÛ¾÷ȯ°æ ±¸ÃàÀÇ ±âº»»çÇ× ------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. --------------------------------------------------------------------- ÀÌ¹Ì À¯´Ð½º ÀÀ¿ë°úÁ¤ ¼³¸í½Ã¿¡ À¯´Ð½º º¯¼öµéÀÇ Á¾·ù, Ư¡ ¹× ±â´Éµé¿¡ ´ëÇÏ¿© ¼³¸íÇß´Ù. ±×·¯¹Ç·Î À̹ø °úÁ¤¿¡¼­´Â ½©¿¡ÀÇÇØ ÀÚµ¿À¸·Î »ý¼ºµÇ¾î ¿î¿µµÇ°í, »ç¿ëÀÚ¿¡ ÀÇÇØ ÂüÁ¶°¡ °¡´ÉÇÑ ½©ÀÇ Reserved Variable¹× ±â´Éµé¿¡ ´ëÇؼ­¸¸ °£·«È÷ ¼Ò°³ÇÑ´Ù. 1. Bourne Shell º¯¼ö ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦½¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ º¯¼ö¸í ¦­ ¼³ Á¤ °ª ¦¢ ¦¼¦¬¦¬¦¬¦¬¦¬¦¬¦¶¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¾ ¦¢ $PATH ¦­¸í·É¾î °Ë»ö½Ã °Ë»ö ´ë»ó µð·ºÅ丮ÀÇ °æ·Î¸íµé ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ $HOME ¦­»ç¿ëÀÚ È¨ µð·ºÅ丮ÀÇ Àý´ë °æ·Î¸í ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ $CDPATH ¦­cd ¸í·É¾î »ç¿ë½Ã ÀÎÀÚ·Î °æ·Î¸íÀ» ÁöÁ¤ÇÏÁö ¾Ê¾ÒÀ» ¦¢ ¦¢ ¦­°æ¿ì¿¡ »ç¿ëµÉ µðÆúÆ® °æ·Î¸í. ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ $IFS ¦­³»ºÎ ÇÊµå ±¸º°ÀÚ(µðÆúÆ®: °ø¹é, newline ±×¸®°í ÅÇ) ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ $MAIL ¦­MAILPATH º¯¼ö°¡ ¼³Á¤µÇÁö ¾Ê¾ÒÀ» °æ¿ì ¸ÞÀÏÀ» °Ë»öÇÒ ¦¢ ¦¢ ¦­È­ÀÏ¸í ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ $MAILCHECK ¦­¸ÞÀÏÀ» °Ë»öÇÏ´Â ÁÖ±â(ÃÊ´ÜÀ§ÀÇ ½Ã°£) ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ $MAILPATH ¦­¸ÞÀÏÀ» °Ë»çÇÒ È­ÀϵéÀÇ ¸ñ·Ï ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ $PS1 ¦­±âº» ÇÁ·ÎÇÁÆ®·Î »ç¿ëÇÒ ¹®ÀÚ¿­(µðÆúÆ®:$) ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ $PS2 ¦­º¸Á¶ ÇÁ·ÒÇÁÆ®·Î »ç¿ëÇÒ ¹®ÀÚ¿­(µðÆúÆ®:>) ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ $SHACCT ¦­½© °èÁ¤(Account) µ¥ÀÌŸ¸¦ ÀúÀåÇÒ È­ÀÏ ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ $SHELL ¦­ÇöÀç »ç¿ëÁßÀÎ ½©(µðÆúÆ®: /bin/sh) ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¿¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ 2. Korn Shell º¯¼ö À§¿¡¼­ ¼³¸íÇÑ Bourne ShellÀÇ º¯¼ö´Â Korn Shell¿¡¼­µµ ¸ðµÎ »ç¿ë°¡´ÉÇÏ´Ù. ¶ÇÇÑ Korn ShellÀº ÀÌ¿¡ ´õÇÏ¿© »ç¿ëÀÚÀÇ ¿øÇÒÇÑ ÀÛ¾÷À» À§ÇÏ¿© ´ÙÀ½°ú °°Àº ¸î°¡Áö º¯¼ö¸¦ Ãß°¡·Î Áö¿øÇÑ´Ù. Korn Shell¿¡¼­ °íÀ¯ÇÏ°Ô Áö¿øÇÏ´Â º¯¼öµéÀº ´ÙÀ½°ú °°´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦½¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $HISTFILE ¦­History FileÀÇ À̸§(µðÆúÆ®:$HOME/.sh_history) ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ $HISTSIZE ¦­History File³»¿¡¼­ ¾ï¼¼½ºÇÒ ¼ö ÀÖ´Â ¸í·É¾îÀÇ ¦¢ ¦¢ ¦­ÃÖ´ë °¹¼ö (µðÆúÆ®: 128) ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ $REPLY ¦­read ¸í·É¾î¿¡¼­ ÀÔ·ÂÀ» ¹Þ¾ÆµéÀ϶§ »ç¿ëÇÒ µðÆúÆ® ¦¢ ¦¢ ¦­º¯¼ö·Î »ç¿ëµÈ´Ù. ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ $OLDPWD ¦­Á÷ÀüÀÇ ÀÛ¾÷ µð·ºÅ丮ÀÇ Àý´ë °æ·Î¸í ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ $TMOUT ¦­´Ü¸»·ÎºÎÅÍÀÇ ÀÔ·ÂÀÌ ÀÏÁ¤ ½Ã°£µ¿¾È ¾øÀ» °æ¿ì¿¡ ¦¢ ¦¢ ¦­´Ü¸»ÀÇ ÀÚµ¿ÀûÀÎ logoutÀ» ½ÇÇàÇÒ ¼ö Àִµ¥, À̶§ ¦¢ ¦¢ ¦­Àû¿ëÇÒ ½Ã°£À» ÁöÁ¤. ´ÜÀ§´Â ÃÊÀÌ´Ù. ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ $PS3 ¦­select ¸í·É¾î¿¡¼­ »ç¿ëÇÒ ÇÁ·ÒÇÁÆ® ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ $PPID ¦­ºÎ¸ð ÇÁ·Î¼¼½º ½Äº°ÀÚ ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ $EDITOR ¦­Korn ShellÀÇ History ±â´É¿¡¼­ »ç¿ëÇÒ ÆíÁý±â¸í ¦¢ ¦¢ ¦­(µðÆúÆ®: /bin/ed)¦¢ ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ $VISUAL ¦­EDITOR º¯¼ö¿Í µ¿ÀÏ, ´Ü VISUALÀÌ ¿ì¼±µÈ´Ù. ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ $_ ¦­Á÷Àü¿¡ ¼öÇàÇÑ ¸í·É¾îÀÇ ¸¶Áö¸· ÀÎÀÚ(Argument) ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¿¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÁÖÀÇ) ´ÙÀ½ÀÇ º¯¼öµéÀ» unset ÇßÀ»°æ¿ì (unset ¸í·ÉÀ» »ç¿ëÇؼ­) ·Î±×ÀÎ ¼¼¼Çµ¿¾È ±×µéÀ» ´Ù½Ã resetÇÑ´Ù ÇÏ´õ¶óµµ, ±×µé¿¡°Ô ºÎ¿©µÆ´ø Ưº°ÇÑ Àǹ̴ »èÁ¦µÈ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ PPID , _ , RANDOM ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ´ÙÀ½Àº Korn Shell º¯¼ö¸¦ ¼³¸íÇϱâ À§ÇÑ ¿¹ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ KORN> print $RANDOM $RANDOM ¦¢ <--(1) ¦¢ 15359 468 ¦¢ ¦¢ KORN> read ¦¢ ¦¢ welcome to korn ¦¢ <--(2) ¦¢ KORN> echo $REPLY ¦¢ ¦¢ welcome to korn ¦¢ ¦¢ KORN> echo $_ ¦¢ <--(3) ¦¢ korn ¦¢ ¦¢ KORN> pwd ¦¢ ¦¢ /home/mjr/bin ¦¢ ¦¢ KORN> dir=$PWD ¦¢ <--(4) ¦¢ KORN> cd /etc ¦¢ ¦¢ KORN> cp passwd $dir/mycopy ¦¢ ¦¢ KORN> cp $OLDPWD/group . ¦¢ ¦¢ KORN> ls ¦¢ ¦¢ group mycopy ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ (1) RANDOM º¯¼öÀÇ Ã³¸® ³»¿ëÀ» º¸¿©ÁÖ°í ÀÖ´Ù. RANDOM º¯¼ö´Â ¹«ÀÛÀ§ÀÇ ¼ýÀÚ¸¦ µ¹·ÁÁÖ´Â º¯¼öÀÌ´Ù. (2) REPLY º¯¼ö´Â read ¸í·É¾î¸¦ ÅëÇØ ÀÔ·ÂÀ» ¹Þ¾Æµé¿´À»¶§, À̸¦ ÀúÀåÇϱâ À§ÇØ »ç¿ëÇÏ´Â º¯¼öÀÌ´Ù. ÀÔ·ÂÀ» ÀúÀåÇÒ º¯¼ö´Â »ç¿ëÀÚ ÀÓÀǷεµ ÁöÁ¤ °¡´ÉÇÏ´Ù. ±× ³»¿ëÀº Â÷ÈÄ ¼³¸íµÈ´Ù. (3) »ç¿ëÀÚ°¡ Á¤ÀÇÇÑ º¯¼ö dir¿¡ PWD º¯¼ö¿¡ ¼³Á¤µÇ¾î ÀÖ´Â °ªÀ» ÇÒ´çÇؼ­, À̸¦ ´Ù¸¥ ¸í·É¾î ¶óÀο¡¼­ ÂüÁ¶ÇÏ´Â °ÍÀ» º¸¿©ÁÖ´Â ¿¹ÀÌ´Ù. 3. ½© º¯¼ö¸¦ ÀÌ¿ëÇÑ È¯°æ Á¦¾î ÀÌÀü¿¡ ¼³¸íÇß´ø º¯¼öµéÀÇ µðÆúÆ® °ªÀ» º¯°æÇϰųª °ªÀ» ¼³Á¤ÇÔ¿¡ ÀÇÇؼ­, »ç¿ëÀÚ´Â ÀÛ¾÷ ȯ°æÀÇ Çü¼¼¸¦ º¯°æÇÒ ¼ö ÀÖ´Ù. ÀÌµé º¯¼öÀÇ °ªÀ» º¯°æÇϱâ À§Çؼ­´Â variable=valueÀÇ Çü½ÄÀ¸·Î º¯°æÇÑ´Ù. º¯¼öÀÇ °ªÀÌ ¼³Á¤ÇßÀ»¶§, ÀÌ °ªÀ» ¼­ºê ½©¿¡¼­ ÀÌ¿ë°¡´ÉÇÏ°Ô Çϱâ À§Çؼ­´Â º¯¼ö¸¦ ¹Ýµå½Ã ÇÏÀ§½©¿¡ Àü´ÞÇØ ÁÖ¾î¾ß ÇÑ´Ù. ÀÌ°ÍÀº export variable_name ¸í·É¾î¸¦ ÅëÇØ ¼öÇàÇÒ ¼ö ÀÖ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $set ¦¢ ÀÌ ¿¹´Â set ¸í·É¾î¸¦ ÅëÇØ ¦¢ HOME=/home/mjr ¦¢ ÇöÀç ÀÛ¾÷ȯ°æÀ» ±¸ÃàÀ» À§ÇØ ¦¢ IFS= ¦¢ ¼³Á¤µÇ¾î ÀÖ´Â º¯¼öµéÀ» ¦¢ LOGNAME=mjr ¦¢ È®ÀÎÇÏ´Â ¿¹ÀÌ´Ù. ¦¢ MAIL=/usr/mail/mjr ¦¢ ¦¢ PATH=/bin:/usr/bin:/sbin:/etc:/usr/lib:.:¦¢ ¦¢ PS1=$ ¦¢ ¦¢ PS2=> ¦¢ ¦¢ SHELL=/sbin/sh ¦¢ ¦¢ TERM=uvt1224 ¦¢ ¦¢ TERMCAP=/etc/termcap ¦¢ ¦¢ TZ=EST5EDT ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $env ¦¢ ÀÌ ¿¹´Â env ¸í·É¾î¸¦ ÅëÇØ ¦¢ HOME=/home/mjr ¦¢ exportµÈ º¯¼öµéÀ» È®ÀÎÇÏ´Â ¦¢ LOGNAME=mjr ¦¢ ¿¹ÀÌ´Ù. ¦¢ MAIL=/usr/mail/mjr ¦¢ ¦¢ PATH=/bin:/usr/bin:/sbin:/etc:/usr/lib:.:¦¢ ¦¢ PS1=$ ¦¢ ¦¢ SHELL=/sbin/sh ¦¢ ¦¢ TERM=uvt1224 ¦¢ ¦¢ TERMCAP=/etc/termcap ¦¢ ¦¢ TZ=EST5EDT ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $PS1="prompt> " ¦¢ ÀÌ ¿¹´Â º¯¼ö¸¦ ¼­ºê ½©¿¡¼­ ¦¢ prompt> PS2="continue> " ¦¢ ÂüÁ¶ÇÒ ¼ö ÀÖµµ·Ï exportÇÏ´Â ¹æ½Ä°ú ¦¢ prompt> echo this \ ¦¢ ½ÇÁ¦ ÇÏÀ§ ½©¿¡¼­ ÂüÁ¶µÇ´Â °ÍÀ» ¦¢ continue> on the next line ¦¢ º¸¿©ÁÖ´Â ¿¹Á¦ÀÌ´Ù. ¦¢ this ¦¢ ¦¢ on the next line ¦¢ ¦¢ prompt> export PS1 PS2 ¦¢ ¦¢ prompt> sh ¦¢ ¦¢ prompt> ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ 4. .profile »ç¿ëÀÚ°¡ ½Ã½ºÅÛ¿¡ ·Î±×ÀÎÀ» ¼öÇàÇϸé, ½©¿¡ ÀÇÇØ ¼öÇàµÇ´Â ù¹ø° È­ÀÏÀÌ /etc/profileÀ̶ó´Â È­ÀÏÀÌ´Ù. ÀÌ È­ÀÏÀº ÀϹÝÀûÀ¸·Î ½Ã½ºÅÛ °ü¸®ÀÚ¿¡ ÀÇÇØ À¯Áö°ü¸®µÈ´Ù. Bourne Shell°ú Korn Shell ¸ðµÎ ÀÌ È­ÀÏÀ» »ç¿ëÇÑ´Ù. ÀÌ È­ÀÏÀº º¸Åë ½Ã½ºÅÛ °ü¸®ÀÚ°¡ ¸ðµç »ç¿ëÀÚ¿¡ ´ëÇØ ±âº»ÀûÀ¸·Î ÀÛ¾÷ÇÒ ¼ö Àִ ȯ°æÀ» ±¸ÃàÇϱâ À§ÇÑ º¯¼öµéÀ» ÀÌ È­ÀÏ¿¡ ¼±¾ðÇصÒÀ¸·Î½á, °¢ »ç¿ëÀÚÀÇ ±âº»ÀûÀÎ ÀÛ¾÷ ȯ°æÀ» ±¸ÃàÇØÁÖ´Â ¿ëµµ·Î »ç¿ëµÈ´Ù. °¢°¢ÀÇ »ç¿ëÀÚ´Â ÀÚ½ÅÀÇ °íÀ¯ÇÑ ÀÛ¾÷ ȯ°æÀ» ±¸ÃàÇϱâ À§ÇØ .profileÀ̶ó´Â È­ÀÏÀ» ÀÌ¿ëÇÒ ¼ö ÀÖ´Ù. ( ÀÌ È­ÀÏÀº ¹Ýµå½Ã Ȩ µð·ºÅ丮³»¿¡ À§Ä¡µÇ¾î ÀÖ¾î¾ß¸¸ À¯È¿ÇÏ´Ù´Â °ÍÀ» ÁÖ¸ñÇØ¾ß ÇÑ´Ù. ) »ç¿ëÀÚ°¡ ½Ã½ºÅÛ¿¡ ·Î±×ÀÎÀ» ÇÒ¶§, /etc/profileÀÌ ½ÇÇàµÇ°í, ±×¸®°í ½©¿¡ ÀÇÇØ .profileÀÌ ½ÇÇàµÈ´Ù. .profileÀº /etc/profileÀÌ ½ÇÇàµÈÈÄ ½ÇÇàµÇ¾îÁö´Â ÀÌÀ¯·ÎÇؼ­, °¢°¢ÀÇ º¯¼öµéÀº .profile¿¡ ÀÇÇØ º¯°æµÉ ¼ö ÀÖ´Ù. .profileÀº »ç¿ëÀÚ°¡ ·Î±×Àνÿ¡ ½ÇÇàÇϱ⸦ ¿øÇÏ´Â ¸í·É¾îµéÀ» ½ÇÇàÇϱâ À§Çؼ­µµ »ç¿ëµÉ¼ö ÀÖ´Ù. ´ÙÀ½Àº ÀϹÝÀûÀÎ .profileÀÇ ¿¹ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $HOME/.profile ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ PS1="! $PWD> " ¦¢ ¦¢ PS2="continue> " ¦¢ ¦¢ PS3="choose> " ¦¢ ¦¢ PS4="trace> " ¦¢ ¦¢ PATH=/usr/bin:/bin:/etc:/usr/lib:: ¦¢ ¦¢ alias ls="ls -CF" ¦¢ ¦¢ alias id="who am i;id;pwd" ¦¢ ¦¢ HISTSIZE=20 ¦¢ ¦¢ HISTFILE=$HOME/.sh_history ¦¢ ¦¢ alias h=history ¦¢ ¦¢ TMOUT=600 ¦¢ ¦¢ export PS1 PS2 PS3 PS4 HISTSIZE ¦¢ ¦¢ export HISTFILE PATH ¦¢ ¦¢ export TMOUT ¦¢ ¦¢ banner HELLO $LOGNAME ¦¢ ¦¢ id ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ --------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­´Â ½© ÇÁ·Î±×·¡¹ÖÀÇ ±âÃÊ»çÇ׿¡ ´ëÇØ ¼³¸íÇÕ´Ï´Ù. --------------------------------------------------------------------------- #87 À¯´Ï½Ã½º (adunis2 ) Shell ProgramÀÇ Comment ó¸® ±â´É 03/30 09:05 54 line ½© ÇÁ·Î±×·¥¿¡¼­ÀÇ ÁÖ¼®Ã³¸® ¹æ½Ä ------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. --------------------------------------------------------------------- ÀÌÈÄ ¸î¹øÀÇ °­ÀÇ¿¡ °ÉÃļ­ Bourne Shell°ú Korn ShellÀÇ ±âº»ÀûÀÎ ±â´ÉµéÀ» ÀÌ¿ëÇÏ¿© ½© ÇÁ·Î±×·¥¿¡¼­, ¹®ÀÚ¿­, È­ÀÏÀÇ »óÅÂ, ½ÇÇà °á°úÀÇ »óÅÂ¿Í ¼ýÀÚ°ªÀ» ´Ù·ç´Â ¹æ½Ä¿¡ ´ëÇØ ¼³¸íÇÕ´Ï´Ù. 1. ÁÖ¼® (Comments) ÁÖ¼®Àº ½©ÇÁ·Î±×·¥À» ÀÛ¼ºÇÒ¶§ ¸Å¿ì À¯¿ëÇÏ´Ù. ÀÛ¼ºµÈ ÇÁ·Î±×·¥¿¡ ´ëÇØ ÇÁ·Î±×·¥³»ÀÇ ÁÖ¿ä ºÎºÐ¿¡ ¼³¸í ¹®±¸¸¦ ³²°Ü³õÀ½À¸·Î½á, Â÷ÈÄ¿¡ ½±°Ô ºÐ¼®ÇÒ¼ö ÀÖµµ·Ï ÇϱâÀ§ÇÑ ¸ñÀûÀ¸·Î »ç¿ëµÈ´Ù. ÀûÀýÇÑ ÁÖ¼®Àº ÇÁ·Î±×·¥µéÀ» °ËÁõ°ú À¯Áöº¸¼ö¸¦ ½±°Ô ÇØÁØ´Ù. °¡Àå ÀϹÝÀûÀÎ ÁÖ¼®Àº # ½Éº¼ÀÌ´Ù. ÇÁ·Î±×·¥ ½ÇÇà½Ã ½©ÀÌ #À» ¸¸³ª¸é, ±× ¶óÀÎÀÇ ³ª¸ÓÁö ºÎºÐÀ» ÁÖ¼®¹®À¸·Î ó¸®ÇÑ´Ù. ÁÖ¼®À» ³ªÅ¸³»±â À§ÇØ »ç¿ëÇÒ¼ö ÀÖ´Â ´Ù¸¥ ¹®ÀÚ´Â :(ÄÝ·Ð)ÀÌ´Ù. ±×·¯³ª :Àº ¶óÀÎÀÇ Ã³À½¿¡ ±â¼úÇØ¾ß ÇÑ´Ù´Â Á¦ÇÑÀÌ ÀÖ´Ù. º»·¡ :Àº ½©ÀÇ null ¹®ÀÚ·Î »ç¿ëµÇ´Â Ư¼ö¹®ÀÚÀÌ´Ù. ¸¸ÀÏ :ÀÌ ¶óÀÎÀÇ Áß°£¿¡ ±â¼úµÇ¾î ÀÖÀ» °æ¿ì¿¡´Â, ÇÁ·Î±×·¥Àº Çʵ屸º°ÀÚ·Î½á ºÐ¼®µÇÁö ¾ÊÀ½À¸·Î½á ¹®Á¦°¡ ¹ß»ýÇÒ¼öµµ ÀÖÀ¸´Ï ÁÖÀÇÇØ¾ß ÇÑ´Ù. ´ÙÀ½Àº ½© ÇÁ·Î±×·¥³»¿¡¼­ ÁÖ¼®À» ¼±¾ðÇÏ´Â ¹æ½ÄÀ» º¸¿©ÁÖ´Â ¿¹Á¦ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ # ¦¢<- (1) ¦¢ #This program shows comments. ¦¢ ¦¢ # ¦¢ ¦¢ echo "This is it" # This line performs an echo. ¦¢<- (2) ¦¢ :The colon can be used for comment at beginning of a line ¦¢<- (3) ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÀÌ ¿¹¿¡¼­´Â # ½Éº¼À» »ç¿ëÇÏ¿© ¶óÀÎ Àüü¸¦ ÁÖ¼®Ã³¸®ÇÏ´Â ¹æ¹ý(1)°ú ¶óÀÎÀÇ ÀÓÀÇÀÇ À§Ä¡ ÀÌÈĸ¦ ÁÖ¼® ó¸®ÇÏ´Â ¹æ½Ä(2)À» º¸¿©ÁÖ°íÀÖ´Ù. ¶ÇÇÑ :À» »ç¿ëÇÏ¿© ¶óÀÎÀüü¸¦ ÁÖ¼® ó¸®ÇÏ´Â °Í(3)À» º¸¿©ÁØ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $ls -al | ¦¢ ¦¢ >#this is another use of a comment ¦¢ ¦¢ >pg ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÀÌ ¿¹´Â Ç¥ÁØ ÀԷ ó¸®½ÃÀÇ ÁÖ¼®Ã³¸® ¹æ½ÄÀ» º¸¿©ÁØ´Ù. --------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­´Â º¯¼öÀÇ ¿î¿ë ¹æ½Ä¿¡ ´ëÇØ ¼³¸íÇÕ´Ï´Ù. --------------------------------------------------------------------------- #88 À¯´Ï½Ã½º (adunis2 ) Shell Program¿¡¼­ÀÇ º¯¼ö ¿î¿ë¹æ½Ä I 03/30 10:11 137 line ½© ÇÁ·Î±×·¥¿¡¼­ÀÇ º¯¼öÀÇ ¿î¿ë I ------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. ------------------------------------------------------------------- 1. º¯¼ö( Å°¿öµå ÆĶó¸ÞÅÍ ) ´ëºÎºÐÀÇ ¸ðµç ÇÁ·Î±×·¡¹Ö ¾ð¾îµé°ú °°ÀÌ, ½© ÇÁ·Î±×·¥¿¡¼­µµ »ç¿ëÀÚ°¡ ¼±¾ðÇÑ º¯¼ö¿¡ ÀÓÀÇÀÇ °ªÀ» ÀúÀåÇÏ´Â ¹æ½ÄÀ» Áö¿øÇÑ´Ù. ±×·¯³ª ´ëºÎºÐÀÇ ´Ù¸¥ ÇÁ·Î±×·¥ ¾ð¾îµé¿¡¼­´Â º¯¼ö¿¡ ÀúÀåÇÒ °ªÀÇ µ¥ÀÌŸÇüÀ» ÇÑÁ¤½ÃÅ°´Âµ¥ ¹ÝÇÏ¿©, Bourne Shell¿¡¼­´Â º¯¼ö¿¡ ÀúÀåµÇ¾îÁö´Â µ¥ÀÌŸ Çü¿¡ ´ëÇÑ Á¦ÇÑÇÏÁö ¾Ê°í ¿î¿µÇÒ ¼ö ÀÖ°Ô ÇØÁØ´Ù. »ç¿ëÀÚ°¡ ½© º¯¼ö¿¡ ¾î¶°ÇÑ °ªÀ» ÇÒ´çÇÏ´õ¶óµµ ±âº»ÀûÀ¸·Î ¹®ÀÚ¿­·Î½á ½©¿¡ ÀÇÇØ Çص¶µÇ¾î 󸮵DZ⠶§¹®ÀÌ´Ù. ´ÙÀ½Àº Bourne/Korn Shell¿¡¼­ µ¿ÀÏÇÏ°Ô »ç¿ëµÇ´Â º¯¼ö ¿î¿ë»óÀÇ ±ÔÄ¢À» ³ªÅ¸³½´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ 1. º¯¼ö¸íÀº ¹Ýµå½Ã ¿µ¹®ÀÚ³ª ¹ØÁÙ¹®ÀÚ(_)·Î ½ÃÀÛÇØ¾ß ÇÑ´Ù. ¦¢ ¦¢ 2. º¯¼ö¸í¿¡´Â ¿µ¼ýÀÚ¿Í ¹ØÁÙ¹®ÀÚ(_) ¸¸ÀÌ Æ÷ÇԵɼö ÀÖ´Ù. ¦¢ ¦¢ 3. º¯¼ö¸íÀº ÃÖ¼Ò ÇÑÀÚ ÀÌ»óÀ̾î¾ß ÇÑ´Ù. ¦¢ ¦¢ 4. º¯¼ö°ªÀÇ ¼³Á¤Àº ´ÙÀ½ Çü½ÄÀ¸·Î ¼öÇàÇÑ´Ù. ¦¢ ¦¢ º¯¼ö¸í=º¯¼ö°ª ¦¢ ¦¢ 5. À§ÀÇ Çü½Ä¿¡¼­ = Ç¥½Ã ÀüÈÄ¿¡ °ø¹éÀ» ÁöÁ¤ÇÏ¸é ¾ÊµÈ´Ù. ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ºñ·Ï ÇÁ·Î±×·¥ ÀÛ¼º½Ã Çʼö ¿ä¼Ò´Â ¾Æ´ÏÁö¸¸, Korn ShellÀº Bourne Shell°ú ´Þ¸® º¯¼ö¿¡ ÀúÀåµÉ µ¥ÀÌŸÇüÀ» ÇÑÁ¤ÇÏ´Â ¹æ½ÄÀ» Á¦°øÇÑ´Ù. º¯¼ö¿¡ µ¥ÀÌŸÇüÀ» ÁöÁ¤Çϱâ À§Çؼ­´Â typeset ¸í·É°ú ±×ÀÇ ¿É¼ÇÀ» »ç¿ëÇÏ¿© ¼öÇàÇÑ´Ù. ´ÙÀ½Àº typeset ¸í·É¾îÀÇ ¿É¼ÇµéÀ» ³ª¿­ÇÑ °ÍÀÌ´Ù. -i[base] Á¤¼öÇü -u ´ë¹®ÀÚ -l ¼Ò¹®ÀÚ -L[width] ¿ÞÂÊ Á¤·Ä -R[width] ¿À¸¥ÂÊ Á¤·Ä -x exportµÇ´Â º¯¼ö -r ÀбâÀü¿ë º¯¼ö -Z ¼³Á¤°ª ÀÌ¿ÜÀÇ ¿µ¿ªÀ» 0À¸·Î ä¿î´Ù. -LZ ¼±ÇàÇÏ´Â 0À» Á¦°ÅÇÏ°í ¿ÞÂÊÁ¤·ÄÇÑ´Ù. -RZ ¿À¸¥ÂÊ Á¤·ÄÀ»ÇÏ°í, ³ª¸ÓÁö ¿µ¿ªÀ» 0À¸·Î ä¿î´Ù. typeset ¸í·É¾î´Â º¯¼öÀÇ µ¥ÀÌŸÇü ¼Ó¼ºÀÇ Á¦°Å¹× º¯¼ö°ªÀ» ¼³Á¤Çϱâ À§Çؼ­µµ »ç¿ëµÉ ¼ö ÀÖ´Ù. ¸¸¾à º¯¼ö¿¡ ¼Ó¼ºÀÌ ¼³Á¤µÇÁö ¾ÊÀ¸¸é, Korn ShellÀº º¯¼öÀÇ °ªÀ» ¹®ÀÚ¿­·Î °£ÁÖÇÑ´Ù. C¿Í Pascal°ú °°Àº ÇÁ·Î±×·¥ ¾ð¾î¿Í ¸¶Âù°¡Áö·Î, ½© ÇÁ·Î±×·¥¿¡¼­ »ç¿ëÇÒ º¯¼ö´Â »çÀü¿¡ ¼±¾ðµÇ¾î¾ß¸¸ ÇÑ´Ù. Bourne Shell°ú Korn ShellÀº ¹®ÀÚ¿­·Î ó¸®ÇÏ´Â µðÆúÆ® º¯¼öÇüÀ» °®°í ÀÖÀ½À¸·Î ÀÎÇØ, º¯¼ö´Â ÀÌÀü¿¡ ÂüÁ¶ÇÔÀÌ ¾øÀÌ ¼³Á¤µÉ ¼ö ÀÖ´Ù. ½©Àº »ç¿ëÀÚ°¡ º¯¼ö¸¦ »ç¿ëÇϱ⸦ ¿øÇÒ¶§ °ªÀ» º¯¼ö¿¡ ÇÒ´çÇÑ´Ù. ´ÙÀ½Àº º¯¼öÀÇ µ¥ÀÌŸÇüÀ» ÀÀ¿ëÇÏ´Â ¿¹ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ Bourne/Korn ¦¢ Korn ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢$os=UNIX ¦¢ typeset -i sys=6000/55 ¦¢ ¦¢$sys=6000/55 ¦¢ typeset -u os=unix ¦¢ ¦¢$user=`who am i` ¦¢ typeset +u $os ¦¢<- (1) ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÀÌ ¿¹¿¡¼­ (1)¿¡¼­ÀÇ +u ¿É¼ÇÀº os¶ó´Â º¯¼ö¿¡ ¼³Á¤µÇ¾î ÀÖ´Â °ªÀ» ¼Ò¹®ÀÚ·Î ´Ù½Ã º¯È¯Çϱâ À§ÇÑ ¿É¼ÇÀÌ´Ù. 2. º¯¼ö¿¡ ¼³Á¤µÈ °ªÀÇ ÇÁ·Î±×·¥³»¿¡¼­ÀÇ ÂüÁ¶ ¹æ½Ä¹×Ç¥½Ã ¹æ½Ä º¯¼ö´Â Ư¼ö¹®ÀÚÀÎ $ ¹®ÀÚ¸¦ »ç¿ëÇÔÀ¸·Î½á ÂüÁ¶ÇÒ ¼ö ÀÖ´Ù. º¯¼ö°¡ ÂüÁ¶µÉ¶§ $ ¹®ÀÚÀÇ µÚ¿¡ Àû´çÇÑ º¯¼ö¸íÀÌ ÁöÁ¤µÇ¾î ÀÖÀ¸¸é, ½©Àº ±× ½ËÁ¡¿¡ ÇØ´ç º¯¼ö¿¡ ÀúÀåµÇ¾î ÀÖ´Â °ªÀ¸·Î ´ëÄ¡ÇØÁØ´Ù. echo ¸í·É¾î(/bin/echo)´Â È­¸é»ó¿¡ ƯÁ¤ º¯¼ö¿¡ ¼³Á¤µÇ¾î ÀÖ´Â °ªÀ» Ç¥½ÃÇϱâ À§Çؼ­ »ç¿ëÇÒ ¼ö ÀÖ´Ù. ÇöÀç ¼±¾ðµÇ¾î ÀÖ´Â ¸ðµç º¯¼ö¹× ¼³Á¤°ªÀ» È®ÀÎÇϱâ À§Çؼ­´Â set°ú env ¸í·É¾î¸¦ »ç¿ëÇÒ ¼ö Àִµ¥, set ¸í·ÉÀº export ¿©ºÎ¿Í´Â °ü°è¾øÀÌ ÇöÀçÀÇ ½©¿¡ ¼±¾ðµÇ¾î ÀÖ´Â ¸ðµç º¯¼ö¸¦ Ç¥½ÃÇØÁÖ¸ç, env ¸í·ÉÀº ÇöÀçÀÇ ½©¿¡ ¼±¾ðµÇ¾î ÀÖ´Â º¯¼öÁß exportµÇ¾îÁø º¯¼öµé¸¸À» Ç¥½ÃÇØÁØ´Ù. Korn Shell¿¡¼­´Â º¯¼öÀÇ °ªÀ» Ç¥½ÃÇϱâ À§ÇØ echo ¸í·É¾î ÀÌ¿Ü¿¡µµ, print ¸í·É¾î¸¦ Á¦°øÇÑ´Ù. ¸¸¾à ½© ó¸® ¼Óµµ°¡ ½© ÇÁ·Î±×·¥ ÀÛ¼º½Ã Áß¿äÇÑ ¿ä¼ÒÀÏ °æ¿ì¿¡´Â, Korn Shell¿¡¼­ ½ÇÇàµÇ´Â ½© ÇÁ·Î±×·¥À̸é echo ¸í·É¾î¸¦ »ç¿ëÇÏ´Â °Íº¸´Ù print ¸í·ÉÀ» »ç¿ëÇÏ´Â °ÍÀÌ º¸´Ù È¿À²ÀûÀÌ´Ù. ÇÑ°¡Áö ÁÖ¸ñÇϱ⠹ٶõ´Ù. ±×°ÍÀº ½©Àº Ç×»ó º¯¼öÀÇ ÂüÁ¶°¡ ±â¼úµÇ¾î ÀÖ´Â ¸í·É¾î ¶óÀÎÀ» ½ÇÇàÇϱâ Àü¿¡º¯¼öÀÇ ´ëÄ¡°¡ ¼öÇàµÈ´Ù´Â °ÍÀÌ´Ù. ±×·¯¹Ç·Î º¯¼ö·Î¼­ ÂüÁ¶µÇ´Â ¸í·É¾î¸¦ ½ÇÇàÇÒ ¼ö ÀÖ°Ô µÈ´Ù. ´ÙÀ½Àº º¯¼öÀÇ ÂüÁ¶¹× º¯¼ö°ªÀÇ Ç¥½Ã ¹æ½ÄÀ» º¸¿©ÁÖ´Â ¿¹ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ Bourne/Korn ¦¢ Korn ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢$os=UNIX ¦¢ KORN> typeset -i sys=6000/55 ¦¢ ¦¢$sys=6000/55 ¦¢ KORN> typeset -u os=unix ¦¢ ¦¢$user=`who am i` ¦¢ KORN> user=$(who am i) ¦¢ ¦¢$echo $os on the $sys ¦¢ KORN> print $os on the $sys ¦¢ ¦¢UNIX on the 6000/55 ¦¢ UNIX on the 109 ¦¢ ¦¢$cmd=cp ¦¢ KORN> print $user ¦¢ ¦¢$new_dir=/home/mjr/bin/ ¦¢ mjr term/03 Sep 12 8:35 ¦¢ ¦¢$echo cmd $cmd ¦¢ KORN> typeset +u $os ¦¢ ¦¢cmd cp ¦¢ KORN> echo $os ¦¢ ¦¢$echo new_dir $new_dir ¦¢ unix ¦¢ ¦¢new_dir /home/mjr/bin/ ¦¢ ¦¢ ¦¢$ls ¦¢ ¦¢ ¦¢f1 f2 f3 f4 ¦¢ ¦¢ ¦¢$echo $cmd * $new_dir ¦¢ ¦¢ ¦¢cp f1 f2 f3 f4 /home/mjr/bin/ ¦¢ ¦¢ ¦¢$$cmd * $new_dir < ¦¬¦¯ ¦¢ ¦¢ ¦¢$ls $new_dir ¦­ ¦¢ ¦¢ ¦¢f1 f2 f3 f4 ¦­ ¦¢ ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡ ¦­ ¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¦±¦¬ (ÁÖ¸ñ) À§ÀÇ ¿¹Á¦ÀÇ (ÁÖ¸ñ) ºÎºÐ¿¡ ±â¼úµÇ¾î ÀÖ´Â ¸í·É¾î ¶óÀÎÀÌ ½ÇÇàµÉ¶§ ¼öÇàµÇ´Â ÀÏ·ÃÀÇ Ã³¸®°úÁ¤Àº ´ÙÀ½°ú °°´Ù. 1. ½©Àº º¯¼ö ´ëÄ¡¸¦ ¼öÇàÇϱâ À§ÇØ ¸í·É¾î ¶óÀÎÀ» Ž»öÇÑ´Ù. ±×·³À¸·Î½á $cmd¸¦ ´ë½ÅÇØ cp¸¦, $new_dirÀ» ´ë½ÅÇØ /home/mjr/bin/¸¦ ´ëÄ¡ÇÑ´Ù. 2. ½©Àº È­Àϸí È®Àå¹®ÀÚ¸¦ °Ë»öÇϱâ À§ÇØ ¸í·É¾î ¶óÀÎÀ» À玻öÇÑ´Ù. ÀÌ·ÎÀÎÇØ ¸í·É¾î ¶óÀο¡ ±â¼úµÇ¾î ÀÖ´Â *¸¦ ´ë½ÅÇÏ¿©, ÇöÀç µð·ºÅ丮³»ÀÇ ¸ðµç È­ÀϸíÀ» ´ëÄ¡½ÃÅ°°Ô µÈ´Ù. 3. ½©Àº º¯È¯µÈ ¸í·É¾î ¶óÀÎÀ» ¸í·É¾î¿Í ÀÎÀÚ·Î ºÐ¼®ÇÑ´Ù. 4. ½©Àº cp ¸í·É¾î¸¦ ½ÇÇàÇÏ°í, ¸í·É¾î ¶óÀÎ»ó¿¡ ±â¼úµÇ¾î ÀÖ´ø ÀÎÀÚµéÀ» Àü´ÞÇÑ´Ù. --------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­´Â ½© ÇÁ·Î±×·¥¿¡¼­ÀÇ º¯¼öÀÇ ¿î¿ë ¹æ½Ä¿¡ ´ëÇØ °è¼ÓÇÏ¿© ¼³¸í µå¸®°Ú½À´Ï´Ù. --------------------------------------------------------------------------- #89 À¯´Ï½Ã½º (adunis2 ) Shell Program¿¡¼­ÀÇ º¯¼öÀÇ ¿î¿ë¹æ½Ä II 03/30 14:44 173 line ½© ÇÁ·Î±×·¥¿¡¼­ÀÇ º¯¼öÀÇ ¿î¿ë II ------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. ------------------------------------------------------------------- 1. Bourne Shell°ú Korn Shell¿¡¼­ÀÇ º¯¼ö¸¦ ÀÌ¿ëÇÑ ÀÔ·Â ¹Þ¾ÆµéÀ̱⠽© ÇÁ·Î±×·¥¿¡¼­´Â read ¸í·É¾î¸¦ ÅëÇؼ­ Ç¥ÁØÀÔ·ÂÀ¸·Î »ç¿ëÀÚ°¡ ÀÔ·ÂÇÑ ³»¿ëÀ» ÇÁ·Î±×·¥³»ÀÇ º¯¼ö¿¡ ÀúÀåÇÒ ¼ö ÀÖ´Ù. read ¸í·É¾îÀÇ Çü½ÄÀº ´ÙÀ½°ú °°´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ read º¯¼ö¸í1 º¯¼ö¸í2 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ À̶§ »ç¿ëÀÚ°¡ ÁöÁ¤ÇÑ ¿©·¯°³ÀÇ ÀÔ·ÂÀº(°ø¹éÀ¸·Î ±¸ºÐµÇ´Â °¢°¢ÀÇ ÀԷ°ª) ÁöÁ¤ ¼ø¼­¿¡µû¶ó read ¸í·É¾î¿¡ ÁöÁ¤µÈ °¢°¢ÀÇ º¯¼ö¿¡ º°µµ·Î ÀúÀåµÇ¾îÁø´Ù. Åë»ó ´Ü¸»·ÎºÎÅÍ ÀÔ·ÂÀ» ¹Þ¾ÆµéÀÌ´Â ÇÁ·Î±×·¥¿¡¼­´Â ÀԷ¹ÞÀ» ³»¿ëÀ» ¾Ë·ÁÁÖ´Â ¸Þ¼¼Áö¸¦ ½ºÅ©¸°»ó¿¡ Ç¥½ÃÇÑÈÄ ÀÔ·ÂÀ» ¹Þ¾ÆµéÀδÙ. ±×·¡¼­ read ¸í·É¾îµµ Åë»óÀº echo ¸í·É¾î¿Í ÇÔ²² ÁöÁ¤ÇÏ°Ô µÈ´Ù. Áï, ÇÁ·Î±×·¥¿¡¼­ echo ¸í·É¾î¸¦ »ç¿ëÇÏ¿© ÀԷ»çÇ×À» ¾Ë·ÁÁÖ´Â ¸Þ¼¼Áö¸¦ Ç¥½ÃÇÑÈÄ, read ¸í·É¾î¸¦ ÅëÇØ ÀÔ·ÂÀ» ¹Þ¾ÆµéÀÌ´Â Çü½ÄÀÌ´Ù. À̶§ read ¸í·É¾î´Â echo ¸í·É¾î¿¡ ÀÇÇØ ¸Þ¼¼Áö°¡ Ç¥½ÃµÇ´Â ¶óÀÎÀÇ ´ÙÀ½ ¶óÀο¡¼­ ÀÔ·ÂÀ» ¹Þ¾ÆµéÀÌ°Ô µÈ´Ù. ´ÙÀ½Àº Ç¥ÁØ ÀÔ·ÂÀ¸·ÎºÎÅÍ ÀÔ·ÂÀ» ¹Þ¾Æ ó¸®ÇÏ´Â ÇÁ·Î±×·¥ ¿¹ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ myprog ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ echo "Please enter the input filename ¦¢ ¦¢ followed by the output filename" ¦¢ ¦¢ read file1 file2 ¦¢ ¦¢ echo Input: $file1 ¦¢ ¦¢ echo Output: $file2 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ (½ÇÇ࿹) $myprog Please enter the filename followed by the output filename data1 report1 <------ »ç¿ëÀÚ°¡ ÀÔ·ÂÇÑ ³»¿ë Input: data1 Output: report1 ¸¸ÀÏ echo ¸Þ¼¼Áö¿¡ ÀÇÇØ Ç¥½ÃµÇ´Â ¶óÀο¡¼­ ¿¬¼ÓÇÏ¿© ÀÔ·ÂÀ» ¹Þ¾ÆµéÀÌ°í ½ÍÀº °æ¿ì¿¡´Â echo ¸í·É¾î¿¡ ÀÇÇØ Ç¥½ÃµÇ´Â ¸Þ¼¼ÁöÀÇ ³¡¿¡ \c¹®ÀÚ¸¦ ÁöÁ¤ÇÑ´Ù. ÀÌ °æ¿ì¿¡ ¸Þ¼¼Áö°¡ Ç¥½ÃµÈ ¶óÀο¡¼­ read ¸í·É¾î°¡ ÀÔ·ÂÀ» ¹Þ¾ÆµéÀÌ°Ô µÈ´Ù. ´ÙÀ½Àº ¸Þ¼¼Áö¿¡ ¿¬À̾î ÀÔ·ÂÀ» ¹Þ¾ÆµéÀ̵µ·Ï ÁöÁ¤µÈ ¿¹Á¦ ÇÁ·Î±×·¥ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ myprog1 ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ echo "Please enter the input filename ¦¢ ¦¢ followed by the output filename \c" ¦¢ ¦¢ read file1 file2 ¦¢ ¦¢ echo Input: $file1 ¦¢ ¦¢ echo Output: $file2 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ (½ÇÇ࿹) $myprog Please enter the filename ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ followed by the output filename ¦¢data1 report1 ¦¢ Input: data1 ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ Output: report1 »ç¿ëÀÚÀÇ ÀÔ·ÂÀÌ ¸Þ¼¼Áö¿¡ ¿¬À̾î ÁöÁ¤µÇ¾î ÀÖ´Ù. 2. Korn Shell ƯÀ¯ÀÇ ÀÔ·Â ¹æ½Ä read ¸í·É¾î´Â µðÆúÆ®·Î Ç¥ÁØÀÔ·ÂÀ¸·ÎºÎÅÍ ÀÔ·ÂÀ» ¹Þ¾ÆµéÀÌ´Â ¸í·É¾îÀÓÀ» ÀÌ¹Ì ¼³¸íÇß´Ù. ¸¸¾à read ¸í·É¾î¿¡ º¯¼ö°¡ ÁöÁ¤µÇÁö ¾Ê¾ÒÀ» °æ¿ì¿¡´Â ¾î¶»°Ô µÉ±î? ÀÌ °æ¿ì read ¸í·É¾î´Â ½© º¯¼öÀÎ REPLY º¯¼ö¿¡ ÀÔ·ÂÀ» ÇÒ´çÇÑ´Ù. ÁÖÀÇÇÒ °ÍÀº REPLY º¯¼ö´Â Korn Shell¿¡¼­¸¸ Áö¿øÇÏ´Â ½© º¯¼ö¶ó´Â °ÍÀÌ´Ù. À̶§ ÀÔ·ÂµÈ ¶óÀÎÀÇ °¢°¢ÀÇ Çʵå´Â IFS º¯¼ö¿¡ ¼±¾ðµÇ¾î ÀÖ´Â ¹®ÀÚ¿¡ ÀÇÇØ ±¸ºÐµÈ´Ù. ³ª¿­µÈ °¢°¢ÀÇ º¯¼öµé¿¡´Â ÁöÁ¤ ¼ø¼­´ë·Î, ÀÔ·ÂµÈ ÇʵåµéÀÌ Çϳª¾¿ ÇÒ´çµÈ´Ù. ±×·¯³ª read ¸í·É¾î¿¡ ÁöÁ¤µÈ º¯¼öÀÇ ¼ö°¡ ÀÔ·Â ¶óÀÎÀÇ ÇʵåÀÇ ¼öº¸´Ù ÀûÀ» °æ¿ì¿¡´Â º¯¼öÀÇ ¼ö¸¦ ³Ñ¾î°¡´Â ÇʵåµéÀº ¸ðµÎ ¸¶Áö¸·¿¡ ÁöÁ¤µÈ º¯¼ö¿¡ ÀúÀåµÇ¾î Áø´Ù. ¶Ç ÀÌ¿Í ¹Ý´ë·Î º¯¼öÀÇ ¼ö°¡ ÀÔ·Â ÇʵåÀÇ ¼öº¸´Ù ¸¹À» °æ¿ì¿¡´Â ´ëÄ¡µÇ°í ³²´Â º¯¼ö¿¡´Â NULL °ªÀÌ ÀúÀåµÈ´Ù. ÀÌÀü¿¡ ÀԷ»çÇ׿¡ ´ëÇÑ ¸Þ¼¼Áö¸¦ Ç¥½ÃÇϱâ À§Çؼ­, echo¿Í read ¸í·É¾î¸¦ Åë»ó ÇÔ²² »ç¿ëÇÑ´Ù°í ¼³¸íÇß´Ù. ±×·¯³ª Korn Shell¿¡¼­´Â read ¸í·É¾î¿¡¼­ ¸Þ¼¼Áö¸¦ ÇÔ²² Ç¥½ÃÇÒ¼ö ÀÖ´Â ±â´ÉÀ» Á¦°øÇÑ´Ù. ÀÌ´Â read ¸í·É¾î¿¡ ÁöÁ¤µÈ ù¹ø° º¯¼ö¸íÀÇ ³¡¿¡ ?¸¦ ÁöÁ¤ÇÔÀ¸·Î½á °¡´ÉÇÏ°Ô µÈ´Ù. ´ÙÀ½Àº À̸¦ º¸¿©ÁÖ´Â ¿¹ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ myprog ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ read file1?"Please enter the input filename ¦¢ ¦¢ followed by the output filename" file2 ¦¢ ¦¢ echo Input:$file1 ¦¢ ¦¢ echo Outfile:$file2 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ $myprog Please enter the input filename followed by the output filename data1 report1 Input: data1 Output: report1 read ¸í·É¾î´Â -rÀ̶ó´Â ¿É¼ÇÀ» Á¦°øÇÑ´Ù. ÀÌ ¿É¼ÇÀº newline ¹®ÀÚÀÇ ¸ñÀûÀ¸·Î ¶óÀÎÀÇ ³¡¿¡ \¸¦ ´ë½ÅÇϱâ À§Çؼ­ »ç¿ëµÈ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ myprog ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ read -r file1?"Please enter the input filename ¦¢ ¦¢ followed by the output filename" file2 ¦¢ ¦¢ echo Input:$file1 ¦¢ ¦¢ echo Outfile:$file2 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ $myprog Please enter the input filename followed by the output filename data1 \ report1 Input: data1 Output: 3. º¯¼öÀÇ Á¶ÇÕ ½© ÇÁ·Î±×·¥À» ÀÛ¼ºÇÒ¶§¿¡ °£È¤ ƯÁ¤ÇÑ ¸í·É¾îµéÀ» ½ÇÇàÇϱâ À§ÇØ º¯¼ö°ª¿¡ ƯÁ¤ÇÑ ¿µ¼ýÀÚµéÀ» µ¡ºÙÀÌ°íÀÚ ÇÏ´Â °æ¿ì°¡ ÀÖÀ» °ÍÀÌ´Ù. ¿¹¸¦µé¸é ¾î´À º¯¼ö¿¡ "myfile"À̶ó´Â ¹®ÀÚ¿­ÀÌ ÀúÀåµÇ¾î ÀÖÀ»¶§, ÀÌ ¹®ÀÚ¿­ÀÇ ³¡¿¡ "1"À̶ó´Â ¹®ÀÚ¸¦ ºÙ¿©, "myfile1"À¸·Î º¯È¯ÇÏ°íÀÚ ÇÏ´Â °æ¿ìÀÌ´Ù. ÀÌ·± ÀÛ¾÷Àº { } ½Éº¼ Áï ºê·¹À̽º ¹®ÀÚ¸¦ ÀÌ¿ëÇϸé ÇàÇÒ¼ö ÀÖ´Ù. ´ë·«ÀûÀ¸·Î ÀÌ ±âÈ£¸¦ »ç¿ëÇÏ´Â ¹æ¹ýÀº ´ÙÀ½°ú °°´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ ${º¯¼ö¸í}Ãß°¡¹®ÀÚ¿­ ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÀÌ Çü½Ä¿¡¼­ $´Â º¯¼öÀÇ ÂüÁ¶¸¦ ÀǹÌÇÏ°í, {} ±âÈ£ ¾È¿¡ ±â¼úµÇ¾î ÀÖ´Â º¯¼ö¸íÀº ÂüÁ¶ÇÏ°íÀÚ ÇÏ´Â ¹®ÀÚ¿­ÀÌ´Ù. ±×¸®°í ÂüÁ¶ÇÏ´Â º¯¼ö¸í¿¡ Á¶ÇÕÇÏ°íÀÚ ¹®ÀÚ¿­À» ¿¬ÀÌ¾î ±â¼úÇÑ´Ù. ´ÙÀ½Àº º¯¼öÀÇ Á¶ÇÕ¿¡ °ü·ÃµÈ ¿¹ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ÀÌ ¿¹¿¡¼­ÀÇ »ç¿ëÀÚÀÇ Àǵµ´Â ¦¢ $f=abcdefghijkl ¦¢ f ¶ó´Â º¯¼öÀÇ °ª¿¡ mÀ̶ó´Â ¦¢ $echo $f ¦¢ ¹®ÀÚ¿­À» Ãß°¡ÇÏ¿© Ç¥½ÃÇÏ°íÀÚ ¦¢ abcdefghijkl ¦¢ ÇÏ´Â °ÍÀÌ´Ù. ±×·¡¼­ $fmÀ̶ó°í ¦¢ $echo $fm ¦¢ ÁöÁ¤ÇÏ¿´´õ´Ï ¾Æ¹«°Íµµ Ãâ·ÂÀÌ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ µÇÁö ¾Ê´Â´Ù. ¿Ö ±×·²±î? ÀÌ´Â ´ç¿¬ÇÑ °á°úÀÌ´Ù. ±× ÀÌÀ¯´Â fmÀ̶ó´Â ¹®ÀÚ ÀÚü¸¦ ½©Àº º¯¼ö¸íÀ¸·Î ÀνÄÇϱ⠶§¹®ÀÌ´Ù. ¹Ù·Î ÀÌ·²¶§ À̸¦ ÇØ°áÇÏ´Â ¹æ½ÄÀÌ ¾Æ·¡ÀÇ ¿¹ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ {} ½Éº¼À» ÀÌ¿ëÇÏ´Ï±î ½ÇÁ¦·Î ¦¢ $echo ${f}m ¦¢ »ç¿ëÀÚÀÇ Àǵµ´ë·Î ÀÛ¾÷ÀÌ ¦¢ abcdefghijklm ¦¢ ¼öÇàµÇ´Â °ÍÀ» È®ÀÎÇÒ ¼ö ÀÖ´Ù. ¦¢ $new_dir=/USAGE2/NEWDIR/ ¦¢ ¦¢ $echo "${new_dir}sub1/sub2/" ¦¢ ¦¢ /USAGE2/NEWDIR/sub1/sub2/ ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ -------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­´Â ½© ÇÁ·Î±×·¥À» ½ÇÇàÇÒ¶§ ÇÔ²² Á¦°øÇÑ ÀÎÀÚµéÀ» ÇÁ·Î±×·¥³»¿¡¼­ ÂüÁ¶ÇÏ´Â ¹æ¹ý¿¡ ´ëÇؼ­ ¼³¸íÇÕ´Ï´Ù. -------------------------------------------------------------------------- #90 À¯´Ï½Ã½º (adunis2 ) Shell Program³»·Î ÀÎÀÚ ¹Þ¾ÆµéÀ̱â 03/31 10:05 171 line ¸í·É¾î ¶óÀÎ»ó¿¡ ÁöÁ¤µÈ ÀÎÀÚ Ã³¸® ------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. ------------------------------------------------------------------- ½© ÇÁ·Î±×·¥³»¿¡¼­ ÇÁ·Î±×·¥À» È£ÃâÇÒ¶§ ¸í·É¾î¿Í ÇÔ²² ÁöÁ¤ÇÑ ÀÎÀÚ(Arguments)µéÀ» ÂüÁ¶ÇÏ¿© ÀÛ¾÷À» ¼öÇàÇÒ ¼ö ÀÖ´Ù. ÀÌ·¯ÇÑ ÀÎÀÚµéÀ» ÂüÁ¶ÇϱâÀ§Çؼ­´Â ÀÌ¹Ì ÀÀ¿ë°úÁ¤¿¡¼­ ¼³¸íÇß´ø Æ÷Áö¼Å³Î ÆĶó¸ÞÅ͸¦ ÀÌ¿ëÇÑ´Ù. 1. Æ÷Áö¼Å³Î ÆĶó¸ÞÅÍ(Positional Parameter) Æ÷Áö¼Å³Î ÆĶó¸ÞÅʹ ó¸®¸¦ À§Çؼ­ ¸í·É¾î ¶óÀλóÀÇ ÀÎÀÚ¸¦ ½© ÇÁ·Î±×·¥³»·Î Àü´ÞÇϱâ À§Çؼ­ »ç¿ëÇÑ´Ù. º¯¼ö¿Í ¸¶Âù°¡Áö·Î, Æ÷Áö¼Å³Î ÆĶó¸ÞÅ͵éÀº ¸í·É¾î ¶óÀλóÀÇ ±â¼ú¼ø¼­¸¦ ³ªÅ¸³»´Â ¼ýÀÚ¿¡ $ ½Éº¼À» ºÙ¿© Á¤ÀǵȴÙ. ±× Çü½ÄÀº ´ÙÀ½°ú °°´Ù. Bourne Shell°ú Korn ShellÀÇ °øÅë»çÇ× $cmd arg1 arg2 arg3 arg4 arg5 arg6 arg7 arg8 arg9 ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ $0 $1 $2 $3 $4 $5 $6 $7 $8 $9 ÀÌ Çü½Ä¿¡¼­ $0´Â Ç×»ó(?) ¸í·É¾î¸¦ ÂüÁ¶ÇÏ´Â Æ÷Áö¼Å³Î ÆĶó¸ÞÅÍÀÌ´Ù. Korn Shell¿¡¼­´Â 9°³ÀÇ ÀÌ»óÀÇ Æ÷Áö¼Å³Î ÆĶó¸ÞÅ͸¦ »ç¿ëÇÒ ¼ö ÀÖ´Ù. Bourne Shell°ú ¸¶Âù°¡Áö·Î, Korn ShellÀº Æ÷Áö¼Å³Î ÆĶó¸ÞÅÍ ÁöÁ¤½Ã¿¡ $½Éº¼°ú ÇÔ²² ¿ÀÁ÷ ÇÑÀÚÀÇ ¼ýÀÚ¸¸À» Çã¿ëÇÑ´Ù. µû¶ó¼­ 10¹ø° ÀÌ»óÀÇ ÀÎÀÚ¸¦ ÂüÁ¶Çϱâ À§Çؼ­´Â {}½Éº¼À» »ç¿ëÇÏ¿© µÎÀÚ¸® ÀÌ»óÀÇ ¼ýÀÚ¸¦ ¹­¾î ÁÖ¾î¾ß ÇÑ´Ù. ´ÙÀ½Àº Korn Shell¿¡¼­ ÀÎÀÚ¸¦ ÂüÁ¶Çϱâ À§ÇØ Æ÷Áö¼Å³Î ÆĶó¸ÞÅ͸¦ ÁöÁ¤ÇÏ´Â ¹æ½ÄÀ» º¸¿©ÁØ´Ù. Korn ShellÀÇ Æ¯À¯ ÁöÁ¤Çü½Ä $cmd arg1 arg2 arg3 arg4 arg5 arg6 arg7 arg8 arg9 arg10 arg11 .. ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ $0 $1 $2 $3 $4 $5 $6 $7 $8 $9 ${10} ${11} ´ÙÀ½Àº Æ÷Áö¼Å³Î ÆĶó¸ÞÅ͸¦ »ç¿ëÇÏ´Â ¿¹Á¦ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $cat frmat ¦¢ ¦¢ pr -d -o5 $1 | lp ¦¢ ¦¢ $frmat newfile ¦¢ ¦¢ request id is lpt-101 (standard input) ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÀÌ ¿¹Á¦¿¡¼­ frmat¶ó´Â ½© ÇÁ·Î±×·¥Àº ÇÁ·Î±×·¥À» ±âµ¿ÇÒ¶§ »ç¿ëÀÚ°¡ ÀÎÀڷμ­ Á¦°øÇÏ´Â È­ÀÏÀ» ÇÁ¸°Æ® Çü½ÄÀ¸·Î º¯È¯ÇÏ¿©, ÇÁ¸°Æ®¸¦ ¼öÇàÇϵµ·Ï ÇÏ´Â °£´ÜÇÑ ½© ÇÁ·Î±×·¥ÀÌ´Ù. À̶§ ½© ÇÁ·Î±×·¥¿¡¼­ º¸¸é, »ç¿ëÀÚ°¡ ÇÁ·Î±×·¥ È£Ãâ½Ã ÇÔ²² Á¦°øÇÏ´Â ÀÎÀÚ¸¦ ÂüÁ¶Çϱâ À§Çؼ­ $1 À̶ó´Â Æ÷Áö¼Å³Î ÆĶó¸ÞÅÍ°¡ ÁöÁ¤µÈ °ÍÀ» º¼¼öÀÖ´Ù. ±×¸®°í ½© ÇÁ·Î±×·¥ ½ÇÇà½Ã ÀÎÀÚ¸¦ ÁöÁ¤ÇÏ´Â ¹æ½ÄÀ» º¸¿©ÁÖ¸ç, ½© ÇÁ·Î±×·¥À» ½ÇÇàÇÏ°í ÀÖ´Ù. Áï; À§ ¿¹Á¦¿¡¼­ ½© ÇÁ·Î±×·¥³»ÀÇ Æ÷Áö¼Å³Î ÆĶó¸ÞÅÍÀÎ $1Àº »ç¿ëÀÚ°¡ ÀÔ·ÂÇÑ ÀÎÀÚÀÎ newfile·Î ´ëÄ¡µÇ¾î ½ÇÇàµÇ°Ô µÈ´Ù. ºñ·Ï Bourne Shell¿¡¼­ 9°³ÀÇ Æ÷Áö¼Å³Î ÆĶó¸ÞÅÍ ¹Û¿¡ Á¦°øÇÏÁö ¾Ê´Â´Ù°í Çؼ­, ¿ÀÁ÷ 9°³ÀÇ ÀÎÀÚ¸¸À» ÇÁ·Î±×·¥¿¡¼­ ó¸®ÇÒ ¼ö ÀÖ´Ù´Â °ÍÀº ¾Æ´Ï´Ù. ´ÙÀ½¿¡ ¼³¸íµÇ´Â shift ¸í·É¾î¸¦ ÅëÇØ Bourne Shell¿¡¼­µµ 9°³ ÀÌ»óÀÇ ÀÎÀÚµéÀ» ÇÁ·Î±×·¥¿¡¼­ ÂüÁ¶ÇÒ ¼ö ÀÖ´Ù. 2. shift ¸í·É¾î shift ¸í·É¾î´Â Bourne Shell°ú Korn Shell¿¡¼­ Æ÷Áö¼Å³Î ÆĶó¸ÞÅ͸¦ ¿ÞÂÊÀ¸·Î À̵¿Çϱâ À§ÇØ »ç¿ëÇÏ´Â ¸í·ÉÀÌ´Ù. ÀÌ´Â shift ¸í·ÉÀ» ¼öÇàÇϸé, ±âÁ¸¿¡ Æ÷Áö¼Å³Î ÆĶó¸ÞÅÍ $2¿¡ ÀúÀåµÇ¾î ÀÖ´Â ÀÎÀÚ°¡ Æ÷Áö¼Å³Î ÆĶó¸ÞÅÍ $1¿¡ ÀúÀåµÇ¾îÁö°í, $2¿¡´Â $3¿¡ ÀúÀåµÇ¾î ÀÖ´ø ³»¿ëÀÌ ÀúÀåµÇ¾îÁüÀ» ÀǹÌÇÑ´Ù. ÀÌ·¸°Ô µÇ¸é ¸í·É¾î ½ÇÇà½Ã 10¹ø° ÁöÁ¤µÇ¾î ÀÖ´ø ÀÎÀÚ°¡ $9¿¡ ÀúÀåµÇ¾îÁö±â ¶§¹®¿¡, »ç¿ëÀÚ´Â 9°³ ÀÌ»óÀÇ ÀÎÀÚ¸¦ ÇÁ·Î±×·¥¿¡¼­ ÂüÁ¶ÇÒ ¼ö ÀÖ°Ô µÈ´Ù. ÁÖÀÇ) shift ¸í·É¾î°¡ ½ÇÇàµÇ¸é, Æ÷Áö¼Å³Î ÆĶó¸ÞÅÍ¿¡ ÀÌÀü¿¡ ¼³Á¤µÇ¾ú´ø °ªÀº ´Ù½Ã ÂüÁ¶°¡ ºÒ°¡´ÉÇÏ°Ô µÈ´Ù. À§ÀÇ ¼³¸í¿¡¼­ $1¿¡ óÀ½ ¼³Á¤µÇ¾î ÀÖ´ø °ªÀÌ ÀÌ¿¡ ÇØ´çÇÑ´Ù. ¸¸¾à ÇÁ·Î±×·¥¿¡¼­ ÀÌ °ªÀ» shift ¸í·É ÀÌÈÄ¿¡ ÂüÁ¶°¡ ÇÊ¿äÇÒ °æ¿ì¿¡´Â shift ¸í·ÉÀ» ½ÇÇàÇϱâ Àü¿¡ º¯¼ö¿¡ °ªÀ» ÀúÀåÇصξî¾ß¸¸ ÇÑ´Ù. ¹°·Ð shift ¸í·É¿¡¼­´Â Çѹø¿¡ ¿©·¯°³ÀÇ Æ÷Áö¼Å³Î ÆĶó¸ÞÅ͸¦ shiftÇÒ ¼ö ÀÖ´Ù. À̸¦ À§Çؼ­´Â shift ¸í·É¾îÀÇ ÀÎÀڷνá À̵¿ Ƚ¼ö¸¦ ÁöÁ¤ÇÑ´Ù. ±× Çü½ÄÀº ´ÙÀ½°ú °°´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ shift À̵¿È½¼ö ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ´ÙÀ½Àº shiftÀÇ »ç¿ë Çü½ÄÀ» º¸¿©ÁÖ´Â ¿¹Á¦ ½© ÇÁ·Î±×·¥ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ( ½ÇÇà ¿¹ ) ¦¢ prog ¦¢ $prog a b c d e f g h i ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© a b cd ¦¢ echo $1 $2 $3 $4 ¦¢ b c d e ¦¢ shift ¦¢ f g h i ¦¢ echo $1 $2 $3 $4 ¦¢ ¦¢ shift 4 ¦¢ ¦¢ echo $1 $2 $3 $4 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ À§ÀÇ ½ÇÇ࿹°¡ ³ª¿À°Ô µÇ´Â °úÁ¤À» ÀÚ¼¼È÷ ºÐ¼®Çغ¸¸é ´ÙÀ½°ú °°´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦½¦¡¦¨¦¡¦¨¦¡¦¨¦¡¦¨¦¡¦¨¦¡¦¨¦¡¦¨¦¡¦¨¦¡¦¤ ¦¢ ¦­$1¦¢$2¦¢$3¦¢$4¦¢$5¦¢$6¦¢$7¦¢$8¦¢$9¦¢ ¦¼¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦ã¦¡¦«¦¡¦«¦¡¦«¦¡¦«¦¡¦«¦¡¦«¦¡¦«¦¡¦«¦¡¦© ¦¢»ç¿ëÀÚ°¡ ÀÔ·ÂÇÑ »óÅ ¦­a ¦¢b ¦¢c ¦¢d ¦¢e ¦¢f ¦¢g ¦¢h ¦¢i ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦«¦¡¦«¦¡¦«¦¡¦«¦¡¦«¦¡¦«¦¡¦«¦¡¦«¦¡¦© ¦¢shift ¸í·É ½ÇÇàÈÄÀÇ »óÅ ¦­b ¦¢c ¦¢d ¦¢e ¦¢f ¦¢g ¦¢h ¦¢i ¦¢ ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦«¦¡¦«¦¡¦«¦¡¦«¦¡¦«¦¡¦«¦¡¦«¦¡¦«¦¡¦© ¦¢shift 4 ¸í·É ½ÇÇàÈÄÀÇ »óÅ ¦­f ¦¢g ¦¢h ¦¢i ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¿¦¡¦ª¦¡¦ª¦¡¦ª¦¡¦ª¦¡¦ª¦¡¦ª¦¡¦ª¦¡¦ª¦¡¦¥ À̶§ ÁÖ¸ñÇÒ °ÍÀº shiftµÇ¾î Æ÷Áö¼Å³Î ÆĶó¸ÞÅÍ¿¡ ¾ø¾îÁø °ªµéÀº À§ÀÇ ÁÖÀÇ »çÇ׿¡¼­ ¼³¸í ÇßµíÀÌ ´Ù½Ã ÂüÁ¶°¡ ºÒ°¡´ÉÇÏ´Ù´Â °ÍÀÌ´Ù. À§ÀÇ ¿¹¿¡¼­´Â ±× °ªµéÀ» »çÀü¿¡ º¯¼ö¿¡ ÀúÀåÇÏÁö ¾Ê¾Ò±â ¶§¹®. ÇÁ·Î±×·¥¿¡¼­ set ¸í·ÉÀ» ÅëÇØ Æ÷Áö¼Å³Î ÆĶó¸ÞÅÍ¿¡ ÀÓÀÇ °ªÀ» Àç¼³Á¤ÇÒ¼öµµ ÀÖ´Ù. ´ÙÀ½Àº set ¸í·É¾î¿¡ ´ëÇÑ ¼³¸íÀÌ´Ù. 3. set ¸í·É¾î set ¸í·É¾î´Â ½©·Î Àü´ÞµÈ ÀÎÀÚµéÀ» ¼³Á¤¹× Àç¼³Á¤Çϱâ À§ÇØ »ç¿ëµÈ´Ù. Åë»óÀº set ¸í·É¾î´Â shift ½ÇÇàÈÄ ÂüÁ¶°¡ ºÒ°¡´ÉÇÏ°Ô µÈ ÀÎÀÚ¸¦ ´Ù½Ã ÂüÁ¶Çϱâ À§ÇØ, Æ÷Áö¼Å³Î ÆĶó¸ÞÅ͸¦ À籸ÃàÇϱâ À§Çؼ­ »ç¿ëÇÑ´Ù. set ¸í·É¾î¿¡¼­ --¶ó´Â ¿É¼ÇÀ» »ç¿ëÇÒ ¼ö Àִµ¥, ÀÌ ¿É¼ÇÀº ÀÎÀÚµé·ÎºÎÅÍ ¿É¼ÇÀ» ±¸º°Çϱâ À§Çؼ­ »ç¿ëÇÑ´Ù. ´ÙÀ½Àº set ¸í·É¾î¸¦ »ç¿ëÇÏ´Â ¿¹ ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ proga ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ echo $1 $2 $3 $4 ¦¢ ¦¢ set -- the new arguments ¦¢ ¦¢ echo $1 $2 ¦¢ ¦¢ shift 2 ¦¢ ¦¢ echo $1 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ $proga a b c d ÀÌ ¿¹¿¡¼­´Â ¸í·É¾î ±âµ¿½Ã »ç¿ëÀÚ°¡ a b c d ÁöÁ¤ÇÑ ÀÎÀÚµéÀ» Æ÷Áö¼Å³Î ÆĶó¸ÞÅ͸¦ the new »ç¿ëÇÏ¿© ÂüÁ¶ÇÑÈÄ, ÇÁ·Î±×·¥³»¿¡¼­ arguments set ¸í·ÉÀ» ÀÌ¿ëÇÏ¿© Æ÷Áö¼Å³Î ÆĶó¸ÞÅÍ¿¡ »õ·Î¿î °ªÀ» ¼³Á¤ÇÏ´Â °ÍÀ» º¸¿©ÁÖ°í ÀÖ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ progb ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ echo $1; p1=s1 ¦¢ ¦¢ shift ¦¢ ¦¢ echo $1; p2=$1 ¦¢ ¦¢ set -- $p1 $p2 ¦¢ ¦¢ echo $1 $2 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ $progb a b ÀÌ ¿¹¿¡¼­´Â shift ¸í·ÉÀÇ ½ÇÇà °á°ú a ÂüÁ¶°¡ ºÒ°¡´ÉÇÏ°Ô µÇ´Â ÀÎÀÚ¸¦ b shift ¸í·É ½ÇÇàÈÄ¿¡µµ ÂüÁ¶ÇÒ ¼ö ÀÖµµ·Ï a b ÇϱâÀ§ÇØ ±× °ªÀ» º¯¼ö¿¡ ÀúÀåÇصÐÈÄ, ÇÊ¿ä½Ã set ¸í·ÉÀ» ÅëÇØ Æ÷Áö¼Å³Î ÆĶó¸ÞÅÍ¿¡ Àç¼³Á¤ ¿î¿µÇÏ´Â ¹æ½ÄÀ» º¸¿©ÁÖ´Â ¿¹ÀÌ´Ù. -------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­´Â ½© ÇÁ·Î±×·¥¿¡¼­ ½© Ư¼öº¯¼ö¸¦ ÂüÁ¶ÇÏ´Â ¹æ½Ä¿¡ ´ëÇؼ­ ¼³¸íÇÕ´Ï´Ù. -------------------------------------------------------------------------- #91 À¯´Ï½Ã½º (adunis2 ) Shell Program¿¡¼­ ÂüÁ¶Çϴ Ư¼öº¯¼ö 04/01 09:13 194 line Shell Program¿¡¼­ ½© Ư¼ö º¯¼öÀÇ ÀÌ¿ë ------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. ------------------------------------------------------------------- 1. Shell Special Variables(Parameters)ÀÇ ÂüÁ¶ ÀÌÀü °­ÀÇ¿¡¼­ ½© Ư¼öº¯¼ö¿¡ °üÇؼ­´Â ÀÌ¹Ì ¼³¸íµÆ´Ù. ½© Ư¼öº¯¼öµéÀº ½© ÇÁ·Î±×·¥¿¡¼­ ¿ä±äÇÏ°Ô »ç¿ëÇÒ¼ö ÀÖ´Ù. ÀÌ·¯ÇÑ ½© Ư¼öº¯¼öµéÀº »ç¿ëÀÚ¿¡°Ô ƯÁ¤ Á¤º¸¸¦ ¾Ë·ÁÁÖ±â À§Çؼ­, ½©¿¡ ÀÇÇØ ¼³Á¤µÈ´Ù. ±×·¯³ª ÀÌµé º¯¼ö´Â ½©¿¡ÀÇÇØ ¿î¿µµÇ¾îÁö´Â º¯¼öÀ̱⠶§¹®¿¡, »ç¿ëÀÚ¿¡ ÀÇÇؼ­ ÀçÁ¤ÀÇ ¶Ç´Â ¼³Á¤ÇÒ ¼ö ¾ø´Ù. ´ÙÀ½Àº ½© Ư¼ö º¯¼öµéÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦½¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ º¯¼ö ¦­ ¸ñÀû ¦¢ ¦§¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ $0 ¦­¸í·É¾î ¶óÀλóÀÇ ¸í·É¾î À̸§ÀÌ ¼³Á¤ ¦¢ ¦§¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ $# ¦­¸í·É¾î ¶óÀÎ»ó¿¡ ±â¼úµÇ¾î ÀÖ´Â ÀÎÀÚÀÇ °¹¼ö°¡ ¼³Á¤ ¦¢ ¦§¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ $* ¦­¸í·É¾î ¶óÀγ»ÀÇ Àüü ÀÎÀÚ°¡ ¼³Á¤ ¦¢ ¦§¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ "$@" ¦­$*¿Í °°´Ù. ±×·¯³ªµû¿ÈÇ¥·Î µÑ·¯½×ÀÎ ÀÎÀÚ¸¦ ÇϳªÀÇ ÀÎÀÚ·Î ¦¢ ¦¢ ¦­Ã³¸®ÇÏ´Â °ÍÀÌ $*¿Í Ʋ¸° Á¡ÀÌ´Ù. ¦¢ ¦§¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ $$ ¦­ÇöÀçÀÇ ÇÁ·Î¼¼½º ½Äº°ÀÚ(PID)°¡ ¼³Á¤ ¦¢ ¦§¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ $! ¦­Background¿¡¼­ Á÷Àü¿¡ ½ÇÇàµÆ´ø ÇÁ·Î¼¼½ºÀÇ ½Äº°ÀÚ°¡ ¼³Á¤ ¦¢ ¦§¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ $? ¦­Á÷Àü¿¡ Foreground¿¡¼­ ½ÇÇàµÆ´ø ¸í·É¾îÀÇ Á¾·á»óÅ°¡ ¼³Á¤ ¦¢ ¦§¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ $- ¦­ÇöÀç ¼³Á¤µÈ ½© ¿É¼ÇÀÌ ¼³Á¤ ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¿¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ . $* º¯¼ö¿¡´Â Æ÷Áö¼Å³Î ÆĶó¸ÞÅÍó·³ ÂüÁ¶ÇÏ´Â ÀÎÀÚÀÇ °¹¼ö¿¡ ´ëÇÑ Á¦ÇÑÀÌ ¾ø´Ù. . $@ º¯¼ö¿¡ ½Öµû¿ÈÇ¥¸¦ ÁöÁ¤ÇÏÁö ¾ÊÀ» °æ¿ì¿¡´Â $*¿Í ¿ÏÀüÈ÷ µ¿ÀÏÇÏ°Ô ¼öÇàµÈ´Ù. . $-¿¡ ÂüÁ¶µÇ´Â ½© ¿É¼ÇµéÀº set ¸í·É¾î·Î ¼³Á¤µÈ ½© ¿É¼ÇµéÀÌ´Ù. . shift ¸í·É¾î°¡ ½ÇÇàµÇ¸é $# º¯¼öÀÇ °ªÀº ÀÚµ¿ÀûÀ¸·Î ÁÙ¾îµç´Ù. ´ÙÀ½Àº ÀÌµé º¯¼öÀÇ ÂüÁ¶ °á°ú¸¦ º¸¿©ÁÖ´Â ¿¹Á¦ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ( ½ÇÇ࿹ ) ¦¢ Special ¦¢ $special a b c ¦¼¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¾¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡ a b c ¦¢ pos=$*; echo $pos ¦¡¦¡¦«¦¥¦£¦¡¦¡¦¡¦¡¦¡¦¡ 3 ¦¢ num=$#; echo $num ¦¡¦¡¦«¦¡¦¥¦£¦¡¦¡¦¡¦¡¦¡ a ¦¢ echo $1; shift ¦¡¦¡¦«¦¡¦¡¦¥¦£¦¡¦¡¦¡¦¡ 2 ¦¢ echo $# ¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¥¦£¦¡¦¡¦¡ special ¦¢ echo $0 ¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¥¦£¦¡¦¡ b ¦¢ echo $1 ¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¥¦£¦¡ 3 ¦¢ set -- $pos ¦¢ ¦¢ a b c ¦¢ echo $# ¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¦¢ ¦¢ echo $1 $2 $3 ¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÀÌ ¿¹Á¦´Â µ¶ÀÚ ½º½º·ÎÇѹø ºÐ¼®ÇØ º¸±â¸¦ ºÎŹÇÑ´Ù. 2. ¼­ºê ½©·ÎÀÇ º¯¼ö Àü´Þ ¼­ºê ½©·ÎÀÇ º¯¼ö Àü´ÞÀº ºÎ¸ð ½©·ÎºÎÅÍ º¯¼ö¸¦ exportÇÔ¿¡ ÀÇÇØ ÇàÇÒ ¼ö ÀÖ´Ù. exportµÈ º¯¼öµéÀº ±×µéÀÌ unset ¶Ç´Â resetµÉ¶§±îÁö ½©¿¡¼­ À¯ÁöµÈ´Ù. ¸í·É¾î ¶óÀλ󿡼­ ¼­ºê ½©·Î º¯¼ö¸¦ exportÇÑ´Ù°í Çؼ­, ÇÁ·Î¼¼½º°¡ Á¾·áµÇ¾îµµ º¯¼ö°¡ Á¸ÀçÇÑ´Ù´Â °ÍÀº ¾Æ´Ï´Ù. º¯¼ö´Â º¯¼ö¸¦ ¼±¾ðÇÑ ÇÁ·Î¼¼½º °¡ Á¸ÀçÇÏ´Â µ¿¾È¿¡¸¸ Á¸ÀçÇÏ°í, ÇØ´ç ÇÁ·Î¼¼½º°¡ Á¾·áÇÏ¸é º¯¼öµµ »èÁ¦µÇ°Ô µÈ´Ù. ´ÙÀ½Àº ÀÌ¿¡ °ü·ÃµÈ ¿¹Á¦ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $cat cmd1 ¦¢ ¦¢ user3=C ¦¢ ¦¢ echo x=$x ¦¢ ¦¢ echo user1=$user1" "user2=$user2" "user3=$user3 ¦¢ ¦¢ $x=local ¦¢ ¦¢ $user1=A user2=B cmd1 ¦¢<-- (1) ¦¢ x= ¦¢ ¦¢ user1=A user2=B user3=C ¦¢ ¦¢ $echo user1=$user1 user2=$user2 ¦¢<-- (2) ¦¢ user1= user2= ¦¢ ¦¢ $val=value echo $val ¦¢<-- (3) ¦¢ ¦¢ ¦¢ $ ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ (1)ÀÇ ¸í·É¾î ¶óÀÎ ½ÇÇà °á°ú¸¦ ÁÖÀDZí°Ô »ìÆìºÁ¾ß ÇÑ´Ù. ¿ì¼± cmd1À̶ó´Â ½© ÇÁ·Î±×·¥À» »ìÆ캸ÀÚ. ÀÌ ÇÁ·Î±×·¥¿¡¼­´Â user3¶ó´Â º¯¼ö¿¡ C¶ó´Â °ªÀ» ´ëÀÔÇÏ¿© ¼³Á¤ÇÑÈÄ, x¶ó´Â º¯¼öÀÇ ³»¿ëÀ» echo ¸í·É¾î¸¦ ÅëÇØ Ç¥½ÃÇÏ°í, ¶ÇÇѹøÀÇ echo ¸í·ÉÀ» ÅëÇØ user1, user2, user3 º¯¼öÀÇ ³»¿ëÀ» Ç¥½ÃÇÏ°í ÀÖ´Ù. ±×·±µ¥ ÇÁ·Î±×·¥¿¡¼­´Â ¿ÀÁ÷ user3¶ó´Â º¯¼ö¿¡ ´ëÇÑ ¼±¾ð¸¸À» ÇàÇÏ°í ÀÖ´Ù. ±×·¡¼­ ÇÁ·Î±×·¥À» ½ÇÇàÇϱâ Àü¿¡ ³ª¸ÓÁö º¯¼öµéÀ» ¼±¾ðÇß´Ù. ÀÌ ¿¹¿¡¼­´Â º¯¼öÀÇ ¼±¾ðÀ» µÎ°¡Áö ¹æ½ÄÀ¸·Î ÇàÇÏ°í ÀÖ´Ù. x¶ó´Â º¯¼ö´Â ÇÁ·Î±×·¥ ½ÇÇàÀ» ¿ä±¸ÇÑ ¸í·É¾î ¶óÀΰú º°µµÀÇ ¶óÀο¡ ¼±¾ðÇÏ¿´°í, user1°ú user2 º¯¼ö´Â µ¿À϶óÀο¡¼­ ¼±¾ðÇß´Ù. ±×·±µ¥ ÇÁ·Î±×·¥À» ½ÇÇàÇÑÈÄ, °á°ú¿¡¼­ º¸¸éÀº x º¯¼öÀÇ °ªÀÌ Ç¥½ÃµÇÁö ¾Ê´Â °ÍÀ» º¼¼ö ÀÖ´Ù. ¿ÖÀϱî? ±×°ÍÀº x¶ó´Â º¯¼ö´Â ´Ù¸¥ ¸í·É¾î ¶óÀο¡ ±â¼úµÇ¾ú±â ¶§¹®¿¡ ÇÏÀ§ ½©¿¡¼­ ¼öÇàµÇ´Â ½© ÇÁ·Î±×·¥¿¡¼­´Â x º¯¼ö¸¦ ÂüÁ¶ÇÒ ¼ö ¾ø¾ú±â ¶§¹®ÀÌ´Ù. Áï; exportµÇÁö ¾Ê¾Ò±â ¶§¹®ÀÌ´Ù. ±×·±µ¥ user1°ú user2´Â ÂüÁ¶µÇ°í ÀÖ´Ù. ±×°ÍÀº µÎ º¯¼ö ¼±¾ð ÀÚüµµ ¼­ºê ½©¿¡¼­ ¼öÇàµÇ¾ú±â ¶§¹®ÀÌ´Ù. ¼­ºê½©¿¡¼­ ¼±¾ðµÇ¾ú´Ù´Â °ÍÀº, (2)¿¡ ÁöÁ¤µÇ¾î ÀÖ´Â ¸í·É¾îÀÇ ½ÇÇà °á°ú¿¡¼­ È®ÀÎÇÒ ¼ö ÀÖ´Ù. echo ¸í·É¾î¸¦ ÅëÇØ µÎ º¯¼öÀÇ ³»¿ëÀ» È®ÀÎÇغ¸´Ï ¹ÌÁ¤ÀÇµÈ °ÍÀ¸·Î 󸮵Ǵ °ÍÀ» º¼¼ö ÀÖ´Ù. º¯¼ö´Â ÇÁ·Î¼¼½º°¡ Á¸ÀçÇÏ´Â µ¿¾È¿¡¸¸ Á¸ÀçÇϱ⠶§¹®¿¡, ÇÁ·Î±×·¥ ½ÇÇàÀÌ ³¡³ª°í ÇÁ·Î¼¼½º°¡ Á¾·áµÇÀÚ, ÀÚµ¿ÀûÀ¸·Î º¯¼öµµ »èÁ¦µÇ¾ú±â ¶§¹®ÀÌ´Ù. ±×·±µ¥ (3)¿¡¼­ ÁöÁ¤µÈ ¸í·É¾î ¶óÀο¡¼­´Â ¾Õ°ú ´Ù¸£°Ô 󸮵ǰí ÀÖ´Ù. (1)¿¡¼­¿Í µ¿ÀÏÇÑ ¹æ½ÄÀ¸·Î º¯¼ö¸¦ ¼±¾ðÇÏ°í echo ¸í·É¾î¸¦ ½ÇÇàÇߴµ¥, echo ¸í·É¾î¿¡¼­val º¯¼ö¸¦ ÂüÁ¶ÇÏÁö ¸øÇÏ°í ÀÖ´Ù. ÀÌ°ÍÀº UNIXÀÇ Built-in ¸í·É¾î´Â ÇöÀçÀÇ ½©¿¡¼­ ½ÇÇàµÇ´Âµ¥, À̶§ µ¿ÀÏ ¸í·É¾î ¶óÀÎ»ó¿¡ ¼±¾ðµÇ¾î ÀÖ´Â º¯¼ö´Â ÂüÁ¶°¡ ºÒ°¡´ÉÇϱ⠶§¹®ÀÌ´Ù. À̸¦ÅëÇØ º¯¼öÀÇ Á¸Àç±â°£¹× ¼­ºê½©·ÎÀÇ export Çʿ伺À» ¾Ë¼ö ÀÖ´Ù. 3. º¸È£¹®ÀÚÀÇ »ç¿ë(Quoting) Ư¼ö¹®ÀÚ¿¡ ´ëÇÑ ½©ÀÇ Ã³¸®¸¦ ±ÝÁöÇϱâ À§ÇØ »ç¿ëÇÏ´Â º¸È£¹®ÀÚ¿¡´Â ±âº»ÀûÀ¸·Î ´ÙÀ½°ú °°Àº 4°¡Áö°¡ ÀÖ´Ù. ÀÌ º¸È£¹®ÀÚ¿¡ ´ëÇÑ ¼³¸íÀº ÀÌ¹Ì ÀÀ¿ë°úÁ¤¹× ½© ÇÁ·Î±×·¡¹Ö°úÁ¤ÀÇ Ã³À½¿¡ ¼³¸íÇß´Ù. µû¶ó¼­ À̹ø °úÁ¤¿¡¼­´Â ´ë·«ÀûÀ¸·Î ¼³¸íÇÑ´Ù. 1) µû¿ÈÇ¥ (') µû¿ÈÇ¥·Î µÑ·¯ ½×¿© ±â¼úµÈ ¸ðµç Ư¼ö¹®ÀÚµéÀº ½©·ÎºÎÅÍÀÇ ¹ø¿ªÀÌ ¸ðµÎ ±ÝÁöµÈ´Ù. µû¿ÈÇ¥´Â Ư¼ö¹®ÀÚÀÇ ±â´ÉÀ» ÇÊ¿ä¿¡ ÀÇÇØ Á¦ÇÑÇϱâ À§Çؼ­ »ç¿ëÇÑ´Ù. 2) ½Öµû¿ÈÇ¥ (") ½Öµû¿ÈÇ¥´Â µû¿ÈÇ¥¿Í µ¿ÀÏÇÑ ±â´ÉÀ» ¼öÇàÇÑ´Ù. ´Ü, $, `, \ÀÇ 3°¡Áö Ư¼ö¹®ÀÚ´Â ¿µÇâÀ» ¹ÞÁö¾Ê°í Á¤»ó´ë·Î ½©¿¡ÀÇÇØ ¹ø¿ªµÈ´Ù. 3) ¿ªµû¿ÈÇ¥ (`) ¿ªµû¿ÈÇ¥¿¡ ±â¼úµÇ¾î ÀÖ´Â ¹®ÀÚ¿­À» ½©¿¡°Ô ½ÇÇà ¸í·É¾î¶ó´Â °ÍÀ» ¾Ë·ÁÁÖ±â À§ÇØ »ç¿ëÇÑ´Ù. ½©Àº ÀÌ ¸í·É¾î¸¦ ½ÇÇàÇÑÈÄ »ý¼ºµÈ Ãâ·ÂÀ» ¸í·É¾î°¡ ÁöÁ¤µÈ À§Ä¡¿¡ À§Ä¡½ÃŲ´Ù. ( ÁÖÀÇ ) ÀÌ»ó 3°¡ÁöÀÇ º¸È£¹®ÀÚ´Â ¹Ýµå½Ã ½ÖÀ¸·Î ÀÌ·ç¾î Áø´Ù. ¸¸ÀÏ ½ÖÀ¸·Î ÁöÁ¤µÇÁö ¾ÊÀº °æ¿ì¿¡´Â ¹®¹ý ¿¡·¯¸¦ ¹ß»ýÇÑ´Ù. 4) ¿ª½½·¹½¬ (\) ¿ª½½·¹½¬´Â ¿¬ÀÌ¾î ±â¼úµÈ ´ÙÀ½ ÇÑÀÚ°¡ °®°í Àִ Ư¼ö¹®ÀÚÀÇ Ã³¸®¸¦ ½©ÀÌ ¼öÇàÇÏÁö ¸øÇϵµ·Ï ó¸®ÇÑ´Ù. ´ÙÀ½Àº º¸È£¹®ÀÚ¸¦ 󸮽ÃÀÇ Æ¯ÀÌ»çÇ×µéÀ» ³ª¿­ÇÑ °ÍÀÌ´Ù. º¸È£¹®ÀÚ »çÀÌ¿¡ ÁöÁ¤µÇ¾î ÀÖ´Â ÇÊµå ±¸º°ÀÚµéÀº(IFS¿¡ ÁöÁ¤µÇ¾î ÀÖ´Â) ½©¿¡ ÀÇÇØ °ø¹éÀ¸·Î ´ëÄ¡µÇÁö ¾Ê°í ±×´ë·Î À¯ÁöµÈ´Ù. Korn Shell¿¡¼­ Alias¿Í ±âÁ¸ÀÇ ¸í·É¾î°¡ À̸§ÀÌ µ¿ÀÏÇÒ °æ¿ì, À̸¦ ÁöÁ¤ÇÒ °æ¿ì¿¡ Alias°¡ ¿ì¼± ½ÇÇàµÈ´Ù. À̶§ µ¿ÀÏ À̸§ÀÇ ¸í·É¾î¸¦ ½ÇÇàÇϱâ À§Çؼ­´Â, ¸í·É¾î À̸§¿¡ º¸È£¹®ÀÚ¸¦ ÁöÁ¤ÇÔÀ¸·Î½á ½ÇÇà °¡´ÉÇÏ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦½¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ Bourne/Korn ¦­ Korn ¦¢ ¦¼¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¶¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¾ ¦¢ $echo '* $PATH' ¦­ KORN>alias ls=`ls -CF` ¦¢ ¦¢ * $PATH ¦­ KORN>ls ¦¢ ¦¢ $echo "* $PATH" ¦­ bin/ f1 f2 f3 f4 m1* m2* m3* m4* ¦¢ ¦¢ * :/etc:/usr/local/bin:/usr/bin ¦­ KORN>\ls ¦¢ ¦¢ $echo \* \$PATH ¦­ bin f1 f2 f3 f4 m1 m2 m3 m4 ¦¢ ¦¢ * $PATH ¦­ KORN>"ls" ¦¢ ¦¢ $current=`pwd` ¦­ bin f1 f2 f3 f4 m1 m2 m3 m4 ¦¢ ¦¢ $cd /etc ¦­ ¦¢ ¦¢ $echo "$LOGNAME is in" `pwd` ¦­ ¦¢ ¦¢ mjr is in /etc ¦­ ¦¢ ¦¢ $cd $current ¦­ ¦¢ ¦¢ $pwd ¦­ ¦¢ ¦¢ /home/mjr ¦­ ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¿¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÀÌ ¿¹Á¦´Â µ¶ÀÚ ½º½º·Î ºÐ¼®ÇØ º¸±â¸¦ ºÎŹÇÑ´Ù. -------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­´Â ½© ÇÁ·Î±×·¥ÀÇ Á¾·á»óÅ Á¦¾î¹æ½Ä¿¡ ´ëÇؼ­ ¼³¸íÇÕ´Ï´Ù. -------------------------------------------------------------------------- #92 À¯´Ï½Ã½º (adunis2 ) Shell ProgramÀÇ ¸í·É¾î ½ÇÇà»óÅ °ËÁõ 04/02 09:01 111 line Shell ProgramÀÇ Á¾·á»óÅ °ËÁõ ------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. ------------------------------------------------------------------- 1. ½© ÇÁ·Î±×·¥ÀÇ Á¾·á »óÅ ÇÁ·Î±×·¥ÀÌ ½ÇÇà ¿Ï·áµÇ¾úÀ»¶§´Â ¾ðÁ¦³ª, ½Ã½ºÅÛ¿¡ Á¾·á»óÅ¿¡ ´ëÇÑ Á¤º¸¸¦ µÇµ¹·ÁÁØ´Ù. À̶§ÀÇ Á¾·á»óÅ Á¤º¸´Â Åë»ó ÇÁ·Î±×·¥ÀÌ ¼º°øÀûÀ¸·Î ½ÇÇàµÇ¾ú´ÂÁö ¾Æ´Ï¸é ±×·¸Áö ¾ÊÀºÁö¸¦ ³ªÅ¸³»´Â ¼ýÀڷΠǥ½ÃµÈ´Ù. °ü·Ê»ó Á¾·á»óÅ 0Àº ¼º°øÀûÀÎ ½ÇÇàÀ» ÀǹÌÇϸç, 0ÀÌ ¾Æ´Ñ ´Ù¸¥ °ªÀº ½ÇÇàÀÌ ½ÇÆÐÇßÀ½À» ÀǹÌÇÑ´Ù. ( ÁÖÀÇ ) À¯´Ð½º¿¡¼­ÀÇ Á¾·á»óŸ¦ ³ªÅ¸³»´Â 0°ú 0ÀÌ ¾Æ´Ñ´Ù¸¥ °ªÀÇ Àǹ̴ C ¾ð¾î¿¡¼­ÀÇ Á¾·á»óÅ ǥ½Ã¿Í ¹Ý´ëÀÌ´Ù. C ¾ð¾î¿¡¼­´Â 0Àº ÂüÀ» 0ÀÌ ¾Æ´Ñ°ªÀº °ÅÁþÀ» ÀǹÌÇÑ´Ù. ½© ÇÁ·Î±×·¥À» ÀÛ¼ºÇÒ¶§ ÁÖÀÇÇϱ⠹ٶõ´Ù. ÇÁ·Î±×·¥¿¡¼­ Á¾·á»óŸ¦ ÀÌ¿ëÇÏ´Â °ÍÀº ¸í·É¾î°¡ ¼º°øÀûÀ¸·Î ½ÇÇàµÇ¾ú´ÂÁö È®ÀÎÇϱâ À§ÇØ, ¶ÇÇÑ ¿¡·¯ ó¸®¿Í ÇÁ·Î±×·¥ ÁøÇà¿¡ À־ ÇÁ·Î±×·¥ Á¦¾î¸¦ À§ÇØ ¸Å¿ì À¯¿ëÇÏ°Ô ÀÌ¿ëÇÒ ¼ö ÀÖ´Ù. ÀÌ¹Ì ¼³¸íÇß´ø ½© Ư¼ö º¯¼öÁß¿¡¼­ $?¸¦ »ç¿ëÇÏ¿© »ç¿ëÀÚ´Â Á÷Àü¿¡ Foreground¿¡¼­ ½ÇÇàµÈ ÇÁ·Î±×·¥ÀÇ Á¾·á »óŸ¦ È®ÀÎÇÒ ¼ö ÀÖ´Ù. ( ¿¹Á¦ ) ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $ls -CF ¦¢ ¦¢ bin/ f1 f2 f3 f4 m1* m2* m3* m4* ¦¢ ¦¢ $echo $? < ¦¡¦¡¦¡¦¡¦«¦¡¦¡ Á÷ÀüÀÇ ls ¦¢ 0 ¦¢ ¸í·ÉÀÌ ¼º°øÀû ¦¢ $ls -z ¦¢ À¸·Î ½ÇÇàµÆ´Ù. ¦¢ ls: illegal option -- z ¦¢ ¦¢ usage:ls -1RadcmnlogrtucpFbqisfl [files] ¦¢ ¦¢ $echo $? < ¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡ Á÷ÀüÀÇ ls ¦¢ 2 ¦¢ ¸í·ÉÀÌ ½ÇÆÐÇß´Ù. ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ 2. exit ¸í·É¾î »ç¿ëÀÚ´Â exit ¸í·É¾î¸¦ »ç¿ëÇÏ¿© ÇÁ·Î±×·¥À» Á¾·áÇÒ ¼ö Àִµ¥, À̶§ »ç¿ëÀÚ ÀÓÀÇÀÇ Á¾·á»óÅ Á¤º¸¸¦ ¼³Á¤ÇÒ ¼ö ÀÖ´Ù. exit ¸í·É¾îÀÇ Çü½ÄÀº ´ÙÀ½°ú °°´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ exit n ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ »ç¿ëÀÚ´Â exit ¸í·É¾î¸¦ »ç¿ëÇÏ¿© ÇÁ·Î±×·¥À» Á¾·áÇÒ ¼ö ÀÖ´Ù. exit ¸í·É¾î¿¡ ÀÇÇØ Á¾·áµÇ¾îÁø ÇÁ·Î±×·¥À¸·Î ºÎÅÍÀÇ Á¾·á»óÅ´Â, exit ¸í·É¿¡ ÁöÁ¤µÈ ¼ýÀÚ·Î µ¹·ÁÁְųª, ¸¸ÀÏ exit ¸í·É¾î¿¡ nÀ» ÁöÁ¤ÇÏÁö ¾Ê¾ÒÀ» °æ¿ì¿¡´Â ¸¶Áö¸· ¸í·ÉÀÇ Á¾·á»óÅ°¡ µ¹·ÁÁø´Ù. exit ¸í·É¾î´Â ÇÁ·Î±×·¥À» ºÐ±âÇßÀ»¶§ À¯¿ëÇÏ°Ô »ç¿ëÇÒ ¼ö ÀÖ´Ù. ( ¿¹Á¦ 1 ) ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ myprog ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ echo "Please enter the input filename ¦¢ ¦¢ followed by the output filename \c" ¦¢ ¦¢ read file1 file2 ¦¢ ¦¢ echoInput: $file1 ¦¢ ¦¢ echo Output: $file2 ¦¢ ¦¢ exit 5 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ $myprog Please enter the input filename followed by the output filename data1 report1 Input: data1 Output: report1 $echo $? 5 <--------------- ÇÁ·Î±×·¥¿¡¼­ ÇÁ·Î±×·¥À» Á¾·áÇϸç, 5¶ó´Â Á¾·á»óÅ Á¤º¸¸¦ ³²±ä °á°úÀÌ´Ù. ÀÌ ¿¹¿¡¼­ 0ÀÌ ¾Æ´Ñ ´Ù¸¥ °ªÀÇ Á¾·á»óÅ Á¤º¸°¡ Ç¥½Ã µÇ¾ú´Ù°í Çؼ­, ½ÇÇà ½ÇÆжó´Â Àǹ̷ΠÇؼ® ÇÏ¸é ¾ÊµÈ´Ù. ÀÌ ¿¹¿¡¼­´Â ´ÜÁö »ç¿ëÀÚ°¡ ÇÁ·Î±×·¥ ½ÇÇàÁ¾·á½Ã ÀÓÀÇÀÇ Á¾·á»óŸ¦ ³²±æ¼ö ÀÖ´Ù´Â °ÍÀ» º¸¿©ÁÖ±â À§ÇÑ °ÍÀÌ´Ù. ( ¿¹Á¦ 2 ) ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ myprog ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ echo "Please enter the input filename ¦¢ ¦¢ followed by the output filename \c" ¦¢ ¦¢ read file1 file2 ¦¢ ¦¢ echo Input: $file1 ¦¢ ¦¢ echo Output: $file2 ¦¢ ¦¢ exit ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ $myprog Please enter the input filename followed by the output filename data1 report1 Input: data1 Output: report1 $echo $? 0 <------------------ À§ÀÇ ÇÁ·Î±×·¥¿¡¼­ exit ¸í·ÉÀ» ¼±¾ð½Ã ¼ýÀÚ¸¦ ÁöÁ¤ÇÏÁö ¾Ê¾Ò´Ù. ÀÌ °æ¿ì ¾Õ¼­ ¼³¸íÇÑ °Íó·³ ¸¶Áö¸· À¸·Î ½ÇÇàÇÑ ¸í·ÉÀÇ ½ÇÇà °á°ú°¡ µ¹·ÁÁø´Ù. -------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­´Â ½© ÇÁ·Î±×·¥³»¿¡¼­ ƯÁ¤ Á¶°ÇÀÇ Âü/°ÅÁþ¿¡ ´ëÇÑ °Ë»ç¸¦ ¼öÇàÇÏ´Â test ¸í·É¹®¿¡ ´ëÇØ ¼³¸íÇÕ´Ï´Ù. -------------------------------------------------------------------------- #93 À¯´Ï½Ã½º (adunis2 ) Shell ProgramÀÇ Á¶°Ç °Ë»ç ±â´É I 04/03 12:47 175 line Shell Program¿¡¼­ÀÇ Á¶°Ç °Ë»ç I ------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. ------------------------------------------------------------------- 1. test ¸í·É¾î »ç¿ëÀÚ´Â ½© ÇÁ·Î±×·¥³»¿¡¼­ test ¸í·É¹®À» »ç¿ëÇÏ¿© ¼ýÀÚ°ª, È­ÀÏÁ¾·ù ±×¸®°í ¹®ÀÚ¿­À» °Ë»çÇÒ ¼ö ÀÖ´Ù. test ¸í·É¹®Àº °Ë»çµÇ¾î¾ßÇÒ Ç׸ñÀÇ ¿¬»ê½Ä(Expression)À» ±¸¼ºÇϱâ À§Çؼ­ ¿©·¯°¡Áö ¿¬»êÀÚµîÀ» »ç¿ëÇÑ´Ù. test ¸í·É¹®ÀÇ ½ÇÇà °á°ú´Â ÂüÀÏ °æ¿ì 0 ¶Ç´Â °ÅÁþÀÏ °æ¿ì¿¡´Â 0ÀÌ ¾Æ´Ñ ´Ù¸¥°ªÀ¸·Î µ¹·ÁÁø´Ù. Bourne Shell°ú Korn Shell¿¡¼­ "test expression" ¶Ç´Â "[ expression ]" Çü½ÄÀ¸·Î °Ë»ç±¸¹®À» ÁöÁ¤ÇÏ´Â °ÍÀ» Çã¿ëÇÑ´Ù. À̶§ expressionÀº °Ë»çÇؾßÇÒ ´ë»óÀÌ ¹«¾ùÀΰ¡¿¡ µû¶ó¼­ ´Ù¾çÇÑ ¿¬»êÀÚµéÀ» »ç¿ëÇÏ¿© ±â¼úÇÒ ¼ö ÀÖ´Ù. expressionÀ» ±â¼úÇ϶§ ¹Ýµå½Ã ÀüÈÄ¿¡ °ø¹éÀ» ÁöÁ¤Çؾ߸¸ ÇÑ´Ù. ¿¹¸¦µé¾î [expression ]°ú °°ÀÌ expression ÀüÈÄ¿¡ °ø¹éÀ» ÁöÁ¤ÇØ¾ß ÇÑ´Ù. ¶ÇÇÑ expressionÀ» ±â¼úÇÔ¿¡ ÀÖ¾î °ø¹éÀÌ °Ë»ç ´ë»óÀ¸·Î ÁöÁ¤µÇ¾î ÀÖÀ» °æ¿ì¿¡´Â ¹Ýµå½Ã º¸È£¹®ÀÚ·Î µÑ·¯ ½×¾Æ¾ß¸¸ ÇÑ´Ù. ¿¹¸¦µé¾î [ cat = " cat" ]ÀÇ Çü½ÄÀÌ´Ù. ÀÌ °á°ú´Â °ÅÁþÀÌ´Ù. ÀÌÀ¯´Â " cat" ÁöÁ¤¿¡´Â °ø¹éÀÌ µé¾îÀֱ⠶§¹®ÀÌ´Ù. ¶ÇÇÑ º¹¼ö°³ÀÇ ¸í·É¾î ±×·ìÈ­´Â º¸È£µÈ µÕ±Ù°ýÈ£¸¦ »ç¿ëÇÏ¿© test ¸í·É¹®³» ¿¡¼­ ÇàÇÒ ¼ö ÀÖ´Ù. ¿¹¸¦µé¸é [ ! \( -w f1 -a -x f1 \) ]¿Í °°´Ù. Korn ShellÀº [[ expression ]] Çü½ÄÀÇ ¶Ç´Ù¸¥ °Ë»ç±¸¹®À» Áö¿øÇÑ´Ù. ÀÌ Çü½Ä¿¡¼­´Â { }³»¿¡¼­ ´Ü¾î ºÐÇÒ ¶Ç´Â °æ·Î¸í È®Àå ÁöÁ¤À» Çã¿ëÇÏÁö ¾Ê´Â´Ù. expression¿¡¼­ ³í¸®°ö(&&)°ú ³í¸®ÇÕ(||)µîÀÇ ¿¬»êÀÚµéÀÇ »ç¿ë¹× ¸í·É¾î ±×·ìÈ­¸¦ À§ÇØ º¸È£µÇÁö ¾ÊÀº µÕ±Ù°ýÈ£ÀÇ »ç¿ëÀ» Çã¿ëÇÑ´Ù. ¿¹¸¦µé¸é [[ ! ( -w f1 && -x f1 ) ]]¿Í °°´Ù. 2. test ¸í·É¹®ÀÇ ³í¸® ¿¬»êÀÚ test ¸í·É¾î¿¡´Â »ç¿ëÀÚ°¡ º¹¼ö°³ÀÇ Á¶°ÇµéÀ» Á¶ÇÕÇÏ¿© »ç¿ëÇÒ ¼ö ÀÖµµ·Ï ´ÙÀ½°ú °°Àº ³í¸® ¿¬»êÀÚµéÀ» Á¦°øÇÑ´Ù. Bourne Shell°ú Korn ShellÀÇ °øÅë ¿¬»êÀÚ ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦½¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ ¿¬»êÀÚ ¦­ ÀÇ¹Ì ¦¢ ¦¼¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¶¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¾ ¦¢ ! ¦­ ºÎÁ¤ ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ -a ¦­ AND ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ -o ¦­ OR ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¿¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ KORN Shell Àü¿ë ¿¬»êÀÚ ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦½¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ ¿¬»êÀÚ ¦­ ÀÇ¹Ì ¦¢ ¦¼¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¶¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¾ ¦¢ ! ¦­ ºÎÁ¤ ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ && ¦­ AND ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ || ¦­ OR ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¿¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ 3. È­ÀÏÁ¾·ù °Ë»ç ¿¬»êÀÚ »ç¿ëÀÚ°¡ ½© ÇÁ·Î±×·¥³»¿¡¼­ È­ÀÏ¿¡ ´ëÇÑ ´Ù¾çÇÑ Çü½ÄÀÇ °Ë»ç¸¦ ¼öÇàÇÒ ¼ö ÀÖµµ·Ï, ´Ù¾çÇÑ È­ÀÏÁ¾·ù °Ë»ç¸¦ ½ÇÇàÇÏ´Â ¿¬»ê½Ä(Expression)À» Á¦°øÇÑ´Ù. ( ÁÖÀÇ ) ´ë°³ µð·ºÅ丮¸¦ È­ÀÏ°ú ´Ù¸¥ ¿ä¼Ò·Î »ý°¢ÇÏ´Â »ç¿ëÀÚ°¡ ¸¹Àºµ¥, µð·ºÅ丮µµ Á¤È®ÇÏ°Ô È­ÀÏÀÇ ÇÑ Á¾·ùÀÓÀ» È¥µ·ÇÏÁö ¸»±â ¹Ù¶õ´Ù. È­ÀÏ °Ë»ç°¡ ¼öÇàµÉ¶§, È­ÀÏ °Ë»ç¸¦ ½ÇÇàÇÏ°í ÀÖ´Â »ç¿ëÀÚ¸¦ ±âÁØÀ¸·ÎÇÑ È­ÀÏ¿¡´ëÇÑ Á¢±Ù±ÇÇÑ °Ë»ç°¡ ¼öÇàµÈ´Ù. ¿¹¸¦µé¸é, ¸¸ÀÏ °Ë»ç¸¦ ¼öÇàÇÏ°í ÀÖ´Â »ç¿ëÀÚ°¡ È­ÀÏÀÇ ¼ÒÀ¯ÀÚÀ̸é, ¾²±â±ÇÇÑ¿¡ ´ëÇÑ °Ë»ç¸¦ ½ÇÇàÇÒ °æ¿ì ¿ÀÁ÷ ¼ÒÀ¯ÀÚ¿¡ ºÎ¿©µÇ¾î ÀÖ´Â ¾²±â±ÇÇÑ¿¡ ´ëÇؼ­¸¸ °Ë»çµÇ°í, ´Ù¸¥ »ç¿ëÀÚ¿¡ ´ëÇÑ ¾²±â±ÇÇÑÀº °Ë»çµÇÁö ¾Ê´Â´Ù. È­ÀÏ °Ë»ç¸¦ ½ÇÇàÇÒ ¼ö ÀÖ´Â ¿¬»ê½Ä¿¡´Â ´ÙÀ½°ú °°Àº °ÍµéÀÌ ÀÖ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦½¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ ¿¬»ê½Ä ¦­ °Ë»ç ³»¿ë ¦¢ ¦¼¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¶¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¾ ¦¢-s file ¦­È­ÀÏÀÌ Á¸ÀçÇÏ°í, ±æÀÌ°¡ 0 º¸´Ù Å©¸é ÂüÀÌ´Ù. ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢-f file ¦­È­ÀÏÀÌ Á¸ÀçÇÏ°í, ÀÏ¹Ý È­ÀÏÀ̸é ÂüÀÌ´Ù. ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢-d file ¦­È­ÀÏÀÌ Á¸ÀçÇÏ°í, µð·ºÅ丮À̸é ÂüÀÌ´Ù. ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢-r file ¦­È­ÀÏÀÌ Á¸ÀçÇÏ°í, ÇÁ·Î¼¼½º¿¡ÀÇÇØ Àб⠰¡´ÉÇϸé Âü. ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢-w file ¦­È­ÀÏÀÌ Á¸ÀçÇÏ°í, ÇÁ·Î¼¼½º¿¡ÀÇÇØ ¾²±â °¡´ÉÇϸé Âü. ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢-x file ¦­È­ÀÏÀÌ Á¸ÀçÇÏ°í, ÇÁ·Î¼¼½º¿¡ÀÇÇØ ½ÇÇà °¡´ÉÇϸé Âü. ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢-c file ¦­È­ÀÏÀÌ Á¸ÀçÇÏ°í, ¹®ÀÚ ÀåÄ¡ È­ÀÏÀ̸é ÂüÀÌ´Ù. ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢-b file ¦­È­ÀÏÀÌ Á¸ÀçÇÏ°í, ºí·° ÀåÄ¡ È­ÀÏÀ̸é ÂüÀÌ´Ù. ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢-p file ¦­È­ÀÏÀÌ Á¸ÀçÇÏ°í, ÆÄÀÌÇÁ(Named Pipe)À̸é ÂüÀÌ´Ù. ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢-u file ¦­È­ÀÏÀÌ Á¸ÀçÇÏ°í, set-user-id bit°¡ ¼³Á¤µÇ¾î ÀÖÀ¸¸é¦¢ ¦¢ ¦­ÂüÀÌ´Ù. ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢-g file ¦­È­ÀÏÀÌ Á¸ÀçÇÏ°í, set-group-id bit°¡ ¼³Á¤µÇ¾î ¦¢ ¦¢ ¦­ÀÖÀ¸¸é ÂüÀÌ´Ù. ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢-k file ¦­È­ÀÏÀÌ Á¸ÀçÇÏ°í, sticky bit°¡ ¼³Á¤µÇ¾î ÀÖÀ¸¸é ¦¢ ¦¢ ¦­ÂüÀÌ´Ù. ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢-L file ¦­È­ÀÏÀÌ Á¸ÀçÇÏ°í, ½Éº¼¸¯ ¸µÅ©µÈ È­ÀÏÀ̸é ÂüÀÌ´Ù. ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢file1 -nt file2 ¦­file1ÀÌ file2º¸´Ù ÃֽŠȭÀÏÀ̸é ÂüÀÌ´Ù. ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢file1 -ot file2 ¦­file1ÀÌ file2º¸´Ù ¿À·¡µÈ È­ÀÏÀ̸é ÂüÀÌ´Ù. ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢file1 -ef file2 ¦­file1ÀÌ file2¿¡ ´ëÇÑ ´Ù¸¥ À̸§À̸é ÂüÀÌ´Ù. ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¿¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÀÌ»óÀÇ ¿¬»ê½ÄÀ» »ç¿ëÇÏ¿© È­ÀÏ °Ë»ç¸¦ ¼öÇàÇϸé, Á¶°ÇÀÌ ÂüÀÏ °æ¿ì¿¡´Â 0 ÀÇ °ªÀ», °ÅÁþÀÏ °æ¿ì¿¡´Â 0 ÀÌ ¾Æ´Ñ ´Ù¸¥ °ªÀ» µ¹·ÁÁØ´Ù. ´ÙÀ½Àº È­Àϰ˻縦 ½ÇÇàÇÏ´Â ¿¹Á¦¸¦ µé±âÀ§ÇÑ ÀüÁ¦»çÇ×ÀÌ´Ù. $who am i; id mjr term/11 Oct 20 14:09 uid=300(mjr) gid=1 (other) $ls -ld /home/mjr drwxr-xr-x 7 mjr other 512 Aug 20 14:38 /home/mjr $ls -lLd /etc/passwd /bin f1 m1 drwxrwxrwx 1 bin bin 8 Oct 11 15:54 /bin -r--r--r-- 1 root sys 1472 Oct 19 08:10 /etc/passwd -r--r--r-- 1 mjr other 14 Sep 16 10:58 f1 -r-xr-xr-x 1 mjr other 14 Oct 19 13:18 m1 ( ¿¹Á¦ ) ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦½¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ Bourne/Korn ¦­ Korn ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢$test -d /home/mjr ¦­KORN> [[ -d /home/mjr ]] ¦¢ ¦¢$echo $? ¦­KORN> print $? ¦¢ ¦¢0 ¦­0 ¦¢ ¦¢$[ -d /home/mjr/f1 ] ¦­KORN> [[ -d /home/mjr/f1 ]] ¦¢ ¦¢$echo $? ¦­KORN> echo $? ¦¢ ¦¢1 ¦­1 ¦¢ ¦¢$[ -w /etc/passwd ] ¦­KORN> [ -w /etc/passwd ] ¦¢ ¦¢$echo $? ¦­KORN> echo $? ¦¢ ¦¢1 ¦­1 ¦¢ ¦¢$test -w /home/mjr -a -d /bin ¦­KORN> test -w /home/mjr -a -d /bin¦¢ ¦¢$echo $? ¦­KORN> echo $? ¦¢ ¦¢0 ¦­0 ¦¢ ¦¢$[ -w f1 -o ! -x m1 ] ¦­KORN> [[ -w f1 || ! -x m1 ]] ¦¢ ¦¢$echo $? ¦­KORN> echo $? ¦¢ ¦¢1 ¦­1 ¦¢ ¦¢$[ !\( -w f1 -a -x f1 \) ] ¦­KORN> [[ !( -w f1 && -x f1) ]] ¦¢ ¦¢$echo $? ¦­KORN> echo $? ¦­ ¦¢ ¦¢0 ¦­0 ¦­ ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¿¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡ ¦­ ¦¡¦¡¦¡¦¡¦¡¦¥ ¦­ À§ÀÇ ¿¹´Â µ¶ÀÚ ½º½º·Î Çѹø ºÐ¼®Çغ¸±â¸¦ ¹Ù¶õ´Ù. ¦­ ¦­ µÕ±Ù°ýÈ£¸¦ º¸È£¹®ÀÚ¸¦ »ç¿ëÇÏ¿© º¸È£ÇÏÁö ¾Ê°í ÀÖ´Ù. Korn Shell¿¡¼­´Â ÁöÁ¤ÇÒ ÇÊ¿ä°¡ ¾ø´Ù. -------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­µµ ½© ÇÁ·Î±×·¥³»¿¡¼­ ƯÁ¤ Á¶°ÇÀÇ Âü/°ÅÁþ¿¡ ´ëÇÑ °Ë»ç¸¦ ¼öÇàÇÏ´Â test ¸í·É¹®¿¡ ´ëÇØ °è¼ÓÇؼ­ ¼³¸íÇÕ´Ï´Ù. -------------------------------------------------------------------------- #94 À¯´Ï½Ã½º (adunis2 ) Shell ProgramÀÇ Á¶°Ç °Ë»ç ±â´É II 04/03 12:49 122 line Shell Program¿¡¼­ÀÇ Á¶°Ç °Ë»ç II ------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. ------------------------------------------------------------------- 4. ¼ýÀÚ°ª °Ë»ç(value testing) ÁöÁ¤ÇÑ µÎ°³ÀÇ ¼ýÀÚ¿¡ ´ëÇØ ¼öÇÐÀûÀÎ Á¶°Ç °Ë»ç¸¦ ¼öÇàÇÏ´Â ¿¬»ê½ÄÀÇ Çü½ÄÀº ´ÙÀ½°ú °°´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦½¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ ¿¬»ê½Ä ¦­ °Ë»ç³»¿ë ¦¢ ¦¼¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¶¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¾ ¦¢ integer1 -eq integer2 ¦­µÎ Á¤¼ö°¡ °°À¸¸é Âü ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ integer1 -ge integer2 ¦­integer1ÀÌ integer2º¸´Ù Å©°Å³ª °°À¸¸é Âü¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ integer1 -gt integer2 ¦­integer1ÀÌ integer2º¸´Ù Å©¸é Âü ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ integer1 -le integer2 ¦­integer1ÀÌ integer2º¸´Ù Àû°Å³ª °°À¸¸é Âü¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ integer1 -lt integer2 ¦­integer1ÀÌ integer2º¸´Ù ÀûÀ¸¸é Âü ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ integer1 -ne integer2 ¦­µÎ Á¤¼ö°¡ ´Ù¸£¸é Âü ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¿¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ´ÙÀ½Àº ¼ýÀÚ°ª °Ë»ç¸¦ ¼öÇàÇÏ´Â ¿¹ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦½¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ Bourne/Korn ¦­ Korn ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢$test 5 -eq 5 ¦­ KORN> [[ 5 -eq 5 ]] ¦¢ ¦¢$echo $? ¦­ KORN> echo $? ¦¢ ¦¢0 ¦­ 0 ¦¢ ¦¢$[ 5 -ge 5 ] ¦­ KORN> [ 5 -ge 5 ] ¦¢ ¦¢$echo $? ¦­ KORN> echo $? ¦¢ ¦¢0 ¦­ 0 ¦¢ ¦¢$[ 5 -ge 6 -o 6 -lt 3 ] ¦­ KORN> [[ 5 -ge 6 || 6 -lt 3 ]] ¦¢ ¦¢$echo $? ¦­ KORN> echo $? ¦¢ ¦¢1 ¦­ 1 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¿¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ À§ÀÇ °á°ú¿¡¼­ $?ÀÇ °á°ú°¡ 0ÀÎ °ÍÀº Á¶°ÇÀÌ ÂüÀÓÀ» ÀǹÌÇϸç, 0ÀÌ ¾Æ´Ñ °ªÀº Á¶°ÇÀÌ °ÅÁþÀÓÀ» ÀǹÌÇÑ´Ù. 5. ¹®ÀÚ¿­ °Ë»ç(String testing) µÎ°³ÀÇ ¹®ÀÚ¿­ÀÇ ³»¿ëÀ» ºñ±³Çϱâ À§ÇÑ ¿¬»ê½Ä¿¡´Â µÎ°¡Áö Á¾·ù°¡ ÀÖ´Ù. Áï = °ú != µÎ°³°¡ ÀÖ´Ù. ¶ÇÇÑ ¹®ÀÚ¿­³»ÀÇ ¹®ÀÚÀÇ Á¸Àç ¿©ºÎ¸¦ °Ë»çÇÒ ¼öµµÀÖ´Ù. º¯¼öÀÇ ³»¿ëÀ¸·Î null°ªÀÌ µé¾î ÀÖÀ»¼ö Àִµ¥, À̶§ ÀÌ null°ªÀ» °Ë»çÇÒ¶§ ¿¡·¯°¡ ¹ß»ýÇÏÁö ¾Êµµ·Ï º¯¼ö¸¦ ½Öµû¿ÈÇ¥(")·Î ¹­¾îÁÖ´Â °ÍÀÌ ÃÖ¼±ÀÌ´Ù. ±×¸®°í °ø¹éÀÌ µé¾îÀÖ´Â º¯¼öÀÇ ³»¿ë ¶Ç´Â °ø¹éÀ» °Ë»ç ´ë»óÀ¸·Î ÇÒ °æ¿ì¿¡´Â ¹Ýµå½Ã ½Öµû¿ÈÇ¥(")·Î ¹­¾îÁØ´Ù. ¹®ÀÚ¿­ °Ë»ç¸¦ ¼öÇàÇÏ´Â ¿¬»ê½Ä¿¡´Â ´ÙÀ½°ú °°Àº °ÍÀÌ ÀÖ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦½¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ ¿¬»ê½Ä ¦­ °Ë»ç³»¿ë ¦¢ ¦¼¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¶¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¾ ¦¢string1 = string2 ¦­µÎ ¹®ÀÚ¿­ÀÌ µ¿ÀÏÇÑ °æ¿ì¿¡ Âü ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢string1 != string2¦­µÎ ¹®ÀÚ¿­ÀÌ Æ²¸° °æ¿ì¿¡ Âü ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢string ¦­ÁöÁ¤ÇÑ ¹®ÀÚ¿­ÀÌ nullÀÌ ¾Æ´Ï¸é Âü ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢-z string ¦­ÁöÁ¤ÇÑ ¹®ÀÚ¿­ÀÌ 0ÀÇ ±æÀ̸¦ °®À¸¸é Âü ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢-n string ¦­ÁöÁ¤ÇÑ ¹®ÀÚ¿­ÀÌ 0ÀÌ ¾Æ´Ñ ±æÀ̸¦ °®À¸¸é Âü ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¿¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ 2. Korn Shell¿¡¼­ Á¦°øÇÏ´Â Ãß°¡ÀÇ ¹®ÀÚ¿­ °Ë»ç ¿¬»ê½Ä Korn Shell¿¡¼­ÀÇ [[ , ]] ÀÇ ¿¬»êÀÚ¿Í ÇÔ²², >(Å©´Ù), <(Àû´Ù)µîÀÇ ¿¬»êÀÚ¸¦ »ç¿ëÇÏ¿© Ascii ÄÚµå °ªÀ» ±âÁØÀ¸·ÎÇÑ ¹®ÀÚ¿­ÀÇ °Ë»ç¸¦ ¼öÇàÇÒ ¼ö ÀÖ´Ù. ´ÙÀ½Àº ÀÌ µÎ ¿¬»ê½Ä¿¡ ´ëÇÑ ¼³¸í°ú ±×¿¡ ´ëÇÑ ¿¹Á¦ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦½¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ ¿¬»ê½Ä ¦­ °Ë»ç³»¿ë ¦¢ ¦¼¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¶¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¾ ¦¢string1 > string2 ¦­ASCII Äڵ带 ±âÁØÀ¸·Î string1ÀÌ string2º¸´Ù ¦¢ ¦¢ ¦­ºü¸£¸é ÂüÀÌ´Ù. ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢string1 < string2 ¦­ASCII Äڵ带 ±âÁØÀ¸·Î string1ÀÌ string2º¸´Ù ¦¢ ¦¢ ¦­´À¸®¸é ÂüÀÌ´Ù. ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¿¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦½¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ Bourne/Korn ¦­ Korn ¦¢ ¦¼¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¶¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¾ ¦¢$c="cat " ¦­KORN>c=" cat " ¦¢ ¦¢$test $c = cat <---(1) ¦­KORN>[[ cat > $c ]] ¦¢ ¦¢$echo $? ¦­KORN>echo $? ¦¢ ¦¢0 ¦­1 ¦¢ ¦¢$test "cat" ¦­KORN>test $c = "$c" <---(2) ¦¢ ¦¢$echo $? ¦­KORN>echo $? ¦¢ ¦¢0 ¦­1 ¦¢ ¦¢$[""] ¦­KORN>test $c = "cat" ¦¢ ¦¢$echo $? ¦­KORN>echo $? ¦¢ ¦¢1 ¦­0 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¿¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ À§ÀÇ ¿¹´Â ¹®ÀÚ¿­ °Ë»öÀ» ÇÏ´Â ¹æ½ÄÀ» º¸¿©ÁÖ°í ÀÖ´Ù. ÀÌ ¿¹¿¡¼­´Â ÀÌ¹Ì ¼³¸íµÈ ºÎºÐÀÌÁö¸¸ Çѹø´õ ÁÖ¸ñÇØ¾ß ÇÒ ºÎºÐÀÌ ÀÖ´Ù. (1)¿¡¼­ º¸¸éÀº º¯¼ö¿¡ ÀúÀåµÇ¾î ÀÖ´Â ¹®ÀÚ¿­°ú catÀ̶ó´Â ¹®ÀÚ¿­À» ºñ±³ÇÏ°í ÀÖ´Ù. º¯¼ö¿¡ ¼³Á¤µÇ¾î ÀÖ´Â °ªÀº catÀ̶ó´Â ¹®ÀÚ¿Í ÇÔ²² °ø¹éÀÌ ÁöÁ¤µÇ¾î ÀÖ´Ù. °ø¹éµµ ºÐ¸íÇÑ ÇϳªÀÇ ¹®ÀÚÀÌ´Ù. ±×·±µ¥ ºñ±³ °á°ú¸¦ È®ÀÎÇغ¸´Ï ÂüÀÎ °ªÀÌ Ç¥½ÃµÈ´Ù. °ÅÁþÀÌ µÇ¾î¾ßÇÏ´Â µ¥ ¿Ö ÂüÀϱî? ±×°ÍÀº ÀÌ¹Ì °­ÀÇÇß´ø ½©ÀÇ Ã³¸®°úÁ¤ÀÌ ¼öÇàµÇ¸ç, °ø¹éÀÌ »èÁ¦µÇ¾ú±â ¶§¹®ÀÌ´Ù. (2)¿¡¼­´Â ½Öµû¿ÈÇ¥¸¦ »ç¿ëÇÏ¿© ½©ÀÌ °ø¹éÀ» Á¦°ÅÇÏÁö ¸øÇϵµ·Ï ÇÑÈÄ ºñ±³¸¦ ½ÇÇàÇÑ ¿¹ÀÌ´Ù. °á°ú°¡ °ÅÁþÀ¸·Î Ç¥½ÃµÇ°í ÀÖ´Ù. -------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­´Â ½© ÇÁ·Î±×·¥³»¿¡¼­ Á¶°Ç ºÐ±â ¹æ½Ä¿¡ ´ëÇØ ¼³¸íÇÕ´Ï´Ù. -------------------------------------------------------------------------- #95 À¯´Ï½Ã½º (adunis2 ) Shell ProgramÀÇ Á¶°Ç ºÐ±â ¹æ½Ä I 04/03 12:51 140 line Shell ProgramÀÇ Á¶°Ç ºÐ±â ¹æ½Ä I ------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. ------------------------------------------------------------------- 1. Á¶°Ç ºÐ±â Á¦¾î¹®ÀÇ Çü½Ä ´ëºÎºÐÀÇ ÇÁ·Î±×·¡¹Ö ¾ð¾î¿Í ¸¶Âù°¡Áö·Î Bourne°ú Korn Shell ÇÁ·Î±×·¥¿¡¼­µµ if Á¦¾î¹®°ú else Á¦¾î¹®À» »ç¿ëÇÏ¿© Á¶°Ç ºÐ±â¸¦ ¼öÇàÇÒ ¼ö ÀÖ´Ù. ¶ÇÇÑ else ¿Í if Á¦¾î¹®À» °áÇÕÇÑ elif Á¦¾î¹®µµ ÇÔ²² »ç¿ëÇÒ ¼ö ÀÖ´Ù. if Á¦¾î¹® if Á¦¾î¹®Àº ÇÁ·Î±×·¥³»¿¡¼­ ƯÁ¤ÀÇ(ÁöÁ¤ÇÑ) Á¶°ÇÀ» °Ë»çÇÏ¿©, °Ë»ç °á°ú¿¡ µû¶ó¼­ ÇÁ·Î±×·¥ÀÇ È帧À» ´Þ¸® ó¸®ÇÒ ¼ö ÀÖµµ·Ï ÇØÁØ´Ù. ( ÁÖÀÇ ) if Á¦¾î¹®À» »ç¿ëÇÒ °æ¿ì¿¡, ¹Ýµå½Ã if Á¦¾î¹®À» ¸¶°¨ÇÏ´Â fi Á¦¾î¹®À» ÁöÁ¤ÇØ¾ß ÇÑ´Ù. if Á¦¾î¹®ÀÇ Çü½ÄÀº ´ÙÀ½°ú °°´Ù. if command_list then command command ... fi À§ÀÇ Çü½Ä¿¡¼­ command_list ºÎºÐ¿¡´Â º¸Åë test ¸í·É¹®ÀÌ ÁöÁ¤ÇÏ¿© °Ë»ç °á°ú°¡ ÂüÀ̸é commandµéÀ» ½ÇÇàÇÏ°í, °ÅÁþÀ̸é if Á¦¾î¹®À» Á¾·áÇÑ´Ù. ¶ÇÇÑ command_list ºÎºÐ¿¡ Çϳª ¶Ç´Â º¹¼ö°³ÀÇ ¸í·É¾îµµ ÁöÁ¤ÇÒ ¼öµµ ÀÖ´Ù. ¸¸ÀÏ º¹¼ö°³ÀÇ ¸í·ÉÀ» ÁöÁ¤ÇßÀ» °æ¿ì¿¡´Â ¸¶Áö¸· ¸í·É¾îÀÇ Á¾·á»óÅ¿¡ µû¶ó¼­ then°ú fi »çÀÌ¿¡ ÁöÁ¤µÇ¾î ÀÖ´Â commandµéÀ» ½ÇÇàÇÑ´Ù. Áï, command_list »óÀÇ ¸¶Áö¸· ¸í·É¾îÀÇ Á¾·á»óÅ°¡ 0 À̸é commandµéÀ» ½ÇÇàÇÏ°í, Á¾·á»óÅ°¡ 0 ÀÌ ¾Æ´Ï¸é commandµéÀ» ½ÇÇàÇÏÁö ¾Ê°í if Á¦¾î¹®À» Á¾·áÇÏ°Ô µÈ´Ù. ´ÙÀ½Àº if Á¦¾î¹®ÀÇ ±âº»Çü½ÄÀ» º¸¿©ÁÖ´Â ¿¹Á¦ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ prog ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ # ÀÌ ÇÁ·Î±×·¥Àº ¦¢ ¦¢ # È­ÀÏÀÌ Á¸ÀçÇÏ°í È­ÀÏÀÌ ³»¿ëÀ» °®°í ÀÖ´ÂÁö¸¦ ¦¢ ¦¢ # °Ë»çÇÏ¿©, ±×°á°ú¿¡ µû¶ó ºÐ±â¸¦ ¼öÇàÇÑ´Ù. ¦¢ ¦¢ if test -s "$1" ¦¢ ¦¢ then ¦¢ ¦¢ echo $1 is an existing file ¦¢ ¦¢ fi ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÀÌ ÇÁ·Î±×·¥À» ½ÇÇàÇϸ鼭 »ç¿ëÀÚ°¡ ¸í·É¾îÀÇ ÀÎÀڷμ­ Á¦°øÇÑ È­ÀÏ¿¡ ´ëÇÑ °Ë»ç¸¦ ¼öÇàÇÏ¿©, ÂüÀÏ °æ¿ì¿¡ echo ¸í·ÉÀ» ½ÇÇàÇÏ°í, °ÅÁþÀÏ °æ¿ì¿¡ ÇÁ·Î±×·¥À» Á¾·áÇÑ´Ù. 2. if Á¦¾î¹®ÀÇ command_list»ó¿¡ º¹¼ö°³ÀÇ ¸í·É¾î ÁöÁ¤ ¾Õ¿¡¼­ ¼³¸íÇÑ°Í Ã³·³ if ¿¡¼­ then ¹®Àå»çÀÌ¿¡ Çϳª ¶Ç´Â ±×ÀÌ»óÀÇ ¸í·É¾îµéÀ» ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù. if Á¦¾î¹®ÀÌ ½ÇÇàµÉ¶§ ÀÌ ¸í·É¾îµéÀº ¸ðµÎ ½ÇÇàµÈ´Ù. À̶§ ÁöÁ¤µÈ ¸í·É¾îÁß °¡Àå ¸¶Áö¸· ¸í·É¾îÀÇ Á¾·á»óÅ¿¡ µû¶ó then °ú fi »çÀÌ¿¡ ÁöÁ¤µÈ ¸í·É¾îµéÀÇ ½ÇÇà ¿©ºÎ°¡ °áÁ¤µÈ´Ù. ´ÙÀ½Àº ÀÌ¿¡ ´ëÇÑ ¿¹Á¦ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ proga ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ # ÀÌ ¿¹Á¦´Â if Á¦¾î¹®¿¡ ¿©·¯°³ÀÇ ¸í·É¾îµéÀ» ¦¢ ¦¢ # command_list ºÎºÐ¿¡ ÁöÁ¤ÇÏ´Â °ÍÀ» º¸¿©ÁÖ´Â ÇÁ·Î±×·¥ ¦¢ ¦¢ # ÀÔ´Ï´Ù. ¦¢ ¦¢ if ls f1 ¦¢ ¦¢ who | grep user1 ¦¢ ¦¢ [ -f f1a ] ¦¢ ¦¢ then ¦¢ ¦¢ echo "The last command exited successful" ¦¢ ¦¢ echo "All other commands in command list\ ¦¢ ¦¢ may have failed" ¦¢ ¦¢ fi ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ $ls f1 $proga <-------------- À§ÀÇ ls ¸í·É¿¡¼­ È®ÀÎÇßµíÀÌ, ÇöÀçÀÇ f1 µð·ºÅ丮¿¡´Â f1a È­ÀÏÀÌ ¾ø±â¶§¹®¿¡ user1 term/03 Aug 23 8:03 echo ¸í·ÉÀÌ ½ÇÇàµÇÁö ¾Ê¾Ò´Ù. Áö±ÝÀÇ $mv f1 f1a Ãâ·ÂÀº command_list»ó¿¡ ÁöÁ¤µÈ ¸í·ÉÀÇ $ls ½ÇÇà °á°úÀÌ´Ù. f1a $proga <-------------- mv ¸í·ÉÀ» ÅëÇØ È­ÀϸíÀ» f1a·Î º¯°æÇÑÈÄ user1 term/03 Aug 23 8:03 ÇÁ·Î±×·¥À» ½ÇÇàÇß´Ù. ÀÌ °æ¿ì Á¶°ÇÀÌ The last command exited successful ÂüÀ̵Ǿî echo ¸í·ÉÀÌ ½ÇÇàµÈ´Ù. All other commands in command list may have failed 3. else Á¦¾î¹® if ¸í·É¹®»ó¿¡ ÁöÁ¤µÈ °Ë»ç°á°ú°¡ 0 ÀÌ ¾Æ´Ñ °æ¿ì¿¡ Áï °ÅÁþÀÏ °æ¿ì¿¡ ½ÇÇàÇÒ ¸í·É¾îµéÀ» µû·Î else Á¦¾î¹®À» ÀÌ¿ëÇÏ¿© ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù. else Á¦¾î¹®À» »ç¿ëÇÒ °æ¿ìÀÇ if Á¦¾î¹®ÀÇ Çü½ÄÀº ´ÙÀ½°ú °°´Ù. if command_list then command command .... else command command .... fi ÀÌÀüÀÇ Çü½Ä°ú ¸¶Âù°¡Áö·Î command_list°¡ ½ÇÇàµÇ°í, ¸¶Áö¸· ¸í·ÉÀÇ ½ÇÇà°á°ú¸¦ if Á¦¾î¹®ÀÌ °Ë»çÇÏ¿©, °á°ú°¡ ÂüÀ̸é then°ú else »çÀÌÀÇ ¸í·É¾îµéÀ» ½ÇÇàÇÏ°í, °á°ú°¡ °ÅÁþÀ̸é else ¿Í fi »çÀÌÀÇ ¸í·É¾îµéÀ» ½ÇÇàÇÑ´Ù. ´ÙÀ½Àº else Á¦¾î¹®À» ÀÌ¿ëÇÑ ÇÁ·Î±×·¥ ¿¹Á¦ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ prog ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ # ÀÌ ÇÁ·Î±×·¥Àº ¦¢ ¦¢ # È­ÀÏÀÇ Á¸ÀçÇÏ°í, ³»¿ëÀ» °®°í Àִ°¡¸¦ °Ë»çÇÏ´Â ¦¢ ¦¢ # ÇÁ·Î±×·¥ÀÔ´Ï´Ù. ¦¢ ¦¢ ¦¢ ¦¢ if [ -s "$1" ] ¦¢ ¦¢ then ¦¢ ¦¢ echo $1 has contents # Á¾·á»óÅ°¡ ÂüÀÎ °æ¿ì ¦¢ ¦¢ else ¦¢ ¦¢ echo $1 file error # Á¾·á»óÅ°¡ °ÅÁþÀÎ °æ¿ì ¦¢ ¦¢ fi ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ -------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­´Â ½© ÇÁ·Î±×·¥³»¿¡¼­ Á¶°Ç ºÐ±â ¹æ½Ä¿¡ ´ëÇØ ¼³¸íÇÕ´Ï´Ù. -------------------------------------------------------------------------- #96 À¯´Ï½Ã½º (adunis2 ) Shell ProgramÀÇ Á¶°Ç ºÐ±â ¹æ½Ä II 04/03 12:52 209 line Shell ProgramÀÇ Á¶°Ç ºÐ±â ¹æ½Ä II ------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. ------------------------------------------------------------------- 4. ÁßøµÈ if Á¦¾î¹® ( Nested if statements ) ¿ì¸®´Â ÇÁ·Î±×·¥À» ÀÛ¼ºÇÒ¶§ if Á¦¾î¹®¾È¿¡¼­ ¶Ç´Ù¸¥ Á¶°ÇºÐ±â¸¦ ÇÊ¿ä·Î ÇÏ´Â °æ¿ì¸¦ ÀÚÁÖ °æÇèÇÑ´Ù. ½©¿¡¼­µµ if Á¦¾î¹®À» ÀÌ¿ëÇÑ ÀÌ·¯ÇÑ ÇÁ·Î±×·¥ ÀÛ¼ºÀ» Çã¿ëÇϴµ¥, ÀÌ·± °æ¿ìÀÇ if Á¦¾î¹®À» ÁßøµÈ if Á¦¾î¹®À̶ó ÇÑ´Ù. ÁßøµÈ if Á¦¾î¹®ÀÇ Çü½ÄÀº ´ÙÀ½°ú °°´Ù. ¦£¦¡¦¡¦¡¦¡¦¡ if command_list_A ¦¢ then <------- command_list_A°¡ ÂüÀÎ °æ¿ì¿¡ ¦¢ command1 ½ÇÇàµÈ´Ù. ¦¢ command2 ¦¢ ... ¦¢ else <------- command_list_A°¡ °ÅÁþÀÎ ¦¢ ¦£¦¡¦¡¦¡ if command_list_B °æ¿ì¿¡ ½ÇÇàµÈ´Ù. ¦¢ ¦¢ then <------- command_list_A°¡ °ÅÁþ, ¦¢ ¦¢ command3 command_list_B°¡ ÂüÀÎ °æ¿ì ¦¢ ¦¢ command4 ½ÇÇàµÈ´Ù. ¦¢ ¦¢ ... ¦¢ ¦¢ else <------------ command_list_A°¡ °ÅÁþ, ¦¢ ¦¢ ¦£¦¡¦¡¦¡ if command_list_C command_list_B°¡ °ÅÁþÀÎ ¦¢ ¦¢ ¦¢ then <¦¡¦¡¦¡¦¡¦¤ °æ¿ì¿¡ ½ÇÇàµÈ´Ù. ¦¢ ¦¢ ¦¢ command5 ¦¦¦¡ command_list_A°¡ °ÅÁþ, ¦¢ ¦¢ ¦¢ command6 command_list_B°¡ °ÅÁþ, ¦¢ ¦¢ ¦¢ ... command_list_C°¡ ÂüÀÎ ¦¢ ¦¢ ¦¢ else <¦¡¦¡¦¡¦¡¦¤ °æ¿ì¿¡ ½ÇÇàµÈ´Ù. ¦¢ ¦¢ ¦¢ command7 ¦¦¦¡ Command_list_A,B,C ¦¢ ¦¢ ¦¢ command8 ¸ðµÎ°¡ °ÅÁþÀÎ °æ¿ì¿¡ ¦¢ ¦¢ ¦¢ ... ½ÇÇàµÈ´Ù. ¦¢ ¦¢ ¦¦¦¡¦¡¦¡ fi ¦¢ ¦¦¦¡¦¡¦¡¦¡ fi ¦¦¦¡¦¡¦¡¦¡¦¡¦¡ fi ÀÌ¿Í°°Àº ÁßøµÈ if Á¦¾î¹®¿¡¼­ ÁÖÀÇÇÒ °ÍÀº if Á¦¾î¹®ÀÇ °¹¼ö¸¸Å­ fi ¹®ÀåÀÌ ±â¼úµÇ¾î¾ß ÇÑ´Ù´Â °ÍÀÌ´Ù. ( ÁÖÀÇ ) if Á¦¾î¹®¿¡ º¹¼ö°³ÀÇ command_list¸¦ ÁöÁ¤ÇÒ¼ö Àִµ¥, ÀÌ °æ¿ì¿¡µµ ¸¶Áö¸· ¸í·ÉÀÇ Á¾·á»óÅ¿¡ µû¶ó ½ÇÇà È帧ÀÌ ºÐ±âµÈ´Ù. ´ÙÀ½Àº ÁßøµÈ if Á¦¾î¹®À» »ç¿ëÇÏ°í ÀÖ´Â ¿¹Á¦ ÇÁ·Î±×·¥µéÀÌ´Ù. (¿¹Á¦ 1 ) ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ Prog ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ # ÀÌ ÇÁ·Î±×·¥Àº ÀÎÀڷμ­ È­ÀϸíÀ» ÀԷ¹޾Æ, È­ÀÏÀÌ Á¸ÀçÇÏ´ÂÁö¸¦¦¢ ¦¢ # °Ë»çÇÏ°í, Á¸ÀçÇÒ °æ¿ì È­ÀÏ¿¡´ëÇÑ Àбâ, ¾²±â, ½ÇÇà ±ÇÇÑÀ» ¦¢ ¦¢ # °Ë»çÇÏ¿© ÀÌ¿¡ »óÀÀÇÏ´Â ¸Þ¼¼Áö¸¦ Ç¥½ÃÇÏ´Â ÇÁ·Î±×·¥ÀÌ´Ù. ¦¢ ¦¢ ¦¢ ¦¢ file="$1" ¦¢ ¦¢ ¦¢ ¦¢ echo "Testing for file $file\n" ¦¢ ¦¢ ¦¢ ¦¢ if [ -f "$file" -o -d "$file" ] ¦¢ ¦¢ then ¦¢ ¦¢ echo "$file is a \c" ¦¢ ¦¢ if [ -r "$file" ] <----- ÇöÀçÀÇ ÇÁ·Î¼¼½º¿¡°Ô ¦¢ ¦¢ then Àбâ±ÇÇÑÀÌ ÀÖ´ÂÁö¸¦ °Ë»ç ¦¢ ¦¢ echo "readable \c" ¦¢ ¦¢ fi ¦¢ ¦¢ if [ -w "$file" ] <----- ÇöÀçÀÇ ÇÁ·Î¼¼½º¿¡°Ô ¦¢ ¦¢ then ¾²±â±ÇÇÑÀÌ ÀÖ´ÂÁö¸¦ °Ë»ç ¦¢ ¦¢ echo "writable \c" ¦¢ ¦¢ fi ¦¢ ¦¢ if [ -x "$file" ] <----- ÇöÀçÀÇ ÇÁ·Î¼¼½º¿¡°Ô ¦¢ ¦¢ then ½ÇÇà±ÇÇÑÀÌ ÀÖ´ÂÁö¸¦ °Ë»ç ¦¢ ¦¢ echo "executable \c" ¦¢ ¦¢ fi ¦¢ ¦¢ if [ -f "$file" ] <----- È­ÀÏÀÌ ÀϹÝÈ­ÀÏÀÎÁö¸¦ °Ë»ç ¦¢ ¦¢ then ¦¢ ¦¢ echo "ordinary file.\n" ¦¢ ¦¢ else ¦¢ ¦¢ if [ -d "$file" ] <----- È­ÀÏÀÌ µð·ºÅ丮ÀÎÁö¸¦ °Ë»ç ¦¢ ¦¢ then ¦¢ ¦¢ echo "directory.\n" ¦¢ ¦¢ fi ¦¢ ¦¢ fi ¦¢ ¦¢ else ¦¢ ¦¢ echo "$file is nonexistent.\n" <--- È­ÀÏÀÌ Á¸ÀçÇÏÁö ¾ÊÀ»¶§ ¦¢ ¦¢ fi Ç¥½ÃµÇ´Â ¸Þ¼¼Áö ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÀÌ ¿¹¿¡¼­ µÎ°¡Áö¸¦ ÁÖ¸ñÇØ¾ß ÇÑ´Ù. Çϳª´Â echo ¸í·É¿¡ ÁöÁ¤µÈ \c¿Í \n¹®ÀÚÀÇ ÀǹÌÀÌ´Ù. \c´Â ´ÙÀ½ ¸Þ¼¼Áö¸¦ ¿¬ÀÌ¾î ±â¼úÇÒ °ÍÀÓÀ» ¶æÇϸç, \nÀº ´ÙÀ½ ¶óÀο¡ ´ÙÀ½ ¸Þ¼¼Áö¸¦ ±â¼úÇÒ °ÍÀÓÀ» ÀǹÌÇÑ´Ù. ¶ÇÇϳª´Â test ¹®¿¡ »ç¿ëµÈ º¯¼öµéÀ» ½Öµû¿ÈÇ¥·Î µÑ·¯½×¾Ò´Ù´Â °ÍÀÌ´Ù. ÀÌÀ¯´Â º¯¼ö¼Ó¿¡ ÀÖÀ»Áö ¸ð¸¦ ÇÊµå ±¸º°ÀÚ ¶Ç´Â °ø¹éÀ» ½©·ÎºÎÅÍ Á¦°ÅµÇ´Â »óȲÀ» ¹æÁöÇϱâ À§Çؼ­ÀÌ´Ù. ( ¿¹Á¦ 2 ) ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢prog ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢if [ $1 -gt 100 ] ¦¢ ¦¢then ¦¢ ¦¢ echo Number should be less than or equal to 100 ¦¢ ¦¢else ¦¢ ¦¢ if [ $1 -lt 0 ] ¦¢ ¦¢ then ¦¢ ¦¢ echo Number should be greater than or equal to 0 ¦¢ ¦¢ else ¦¢ ¦¢ if [ $1 -ge 90 ] ¦¢ ¦¢ then ¦¢ ¦¢ echo It is an A ¦¢ ¦¢ else ¦¢ ¦¢ if [ $1 -ge 80 ] ¦¢ ¦¢ then ¦¢ ¦¢ echo It is a B ¦¢ ¦¢ else ¦¢ ¦¢ if [ $1 -ge 70 ] ¦¢ ¦¢ then ¦¢ ¦¢ echo It is a C ¦¢ ¦¢ else ¦¢ ¦¢ if [ $1 -ge 60 ] ¦¢ ¦¢ then ¦¢ ¦¢ echo It is a D ¦¢ ¦¢ else ¦¢ ¦¢ echo It is an F ¦¢ ¦¢ fi ¦¢ ¦¢ fi ¦¢ ¦¢ fi ¦¢ ¦¢ fi ¦¢ ¦¢ fi ¦¢ ¦¢fi ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÀÌ ÇÁ·Î±×·¥Àº »ç¿ëÀÚ°¡ ÀÎÀڷμ­ Á¦°øÇÑ1¿¡¼­ 100±îÁöÀÇ ¼ýÀÚ¸¦ ±¸ºÐÇÏ¿© °¢°¢ »óÀÀÇÏ´Â ¹®ÀÚ·Î º¯È¯ÇÏ´Â ÇÁ·Î±×·¥ÀÌ´Ù. ( ¼ºÀû󸮸¦ ¿¬»óÇÏ¸é ½±°Ô ÀÌÇØ°¡ °¥ °ÍÀÌ´Ù. ÀÌ ÇÁ·Î±×·¥¿¡¼­´Â Á÷ÀüÀÇ ¿¹¿Í ´Ù¸£°Ô ÁßøµÈ if¹®À» ÁöÁ¤ÇÏ°í ÀÖ´Ù. Çѹø ºñ±³ÇØ º¸±â ¹Ù¶õ´Ù. 5. elif Á¦¾î¹® Á÷ÀüÀÇ ¿¹¸¦º¸¸é ÁßøµÈ if Á¦¾î¹®À» »ç¿ëÇÏ¿© ÇÁ·Î±×·¥À» ÀÛ¼ºÇßÀ» °æ¿ì ÇÁ·Î±×·¥ÀÌ º¹ÀâÇØÁö´Â °ÍÀ» º¼¼ö ÀÖ´Ù. ÀÌ·² °æ¿ì¿¡ ¿ä±äÇÏ°Ô ¾µ¼ö ÀÖ´Â Á¦¾î¹®À¸·Î, Áï; else¿Í if¸¦ ÇÕÇÑ ÇüÅÂÀÇ elif Á¦¾î¹®À» ÀÌ¿ëÇÏ¿© ÇÁ·Î±×·¥À» ÀÛ¼ºÇÒ ¼ö ÀÖ´Ù. elif Á¦¾î¹®À» »ç¿ëÇÏ´Â if Á¦¾î¹®ÀÇ Çü½ÄÀº ´ÙÀ½°ú °°´Ù. if commandA then <--- commandA°¡ ÂüÀÏ°æ¿ì ¼öÇà command1 command2 ... elif commandB <--- commandA°¡ °ÅÁþÀÏ °æ¿ì¿¡ ¼öÇà then <--- commandA°¡ °ÅÁþÀÌ°í, command3 commandB°¡ ÂüÀÏ °æ¿ì¿¡¼öÇà command4 ... else <--- commandA¿Í commandB°¡ ¸ðµÎ °ÅÁþ command5 ÀÏ °æ¿ì¿¡ ¼öÇà command6 ... fi À§ÀÇ Çü½Ä¿¡¼­ º¼¼ö ÀÖµíÀÌ elif Á¦¾î¹®À» »ç¿ëÇÏ¸é º¸´Ù ¿ëÀÌÇÏ°Ô ÁßøµÈ if Á¦¾î¹®À» ÀÛ¼ºÇÒ¼ö ÀÖ´Ù. ´ÙÀ½Àº elif Á¦¾î¹®ÀÇ ¿¹Á¦ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢prog ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢if [ $1 -gt 100 ] ¦¢ ¦¢then ¦¢ ¦¢ echo Number should be less than or equal to 100 ¦¢ ¦¢elif [ $1 -lt 0 ] ¦¢ ¦¢then ¦¢ ¦¢ echo Number should be greater than or equal to 0 ¦¢ ¦¢elif [ $1 -ge 90 ] ¦¢ ¦¢then ¦¢ ¦¢ echo It is an A ¦¢ ¦¢elif [ $1 -ge 80 ] ¦¢ ¦¢then ¦¢ ¦¢ echo It is a B ¦¢ ¦¢elif [ $1 -ge 70 ] ¦¢ ¦¢then ¦¢ ¦¢ echo It is a C ¦¢ ¦¢elif [ $1 -ge 60 ] ¦¢ ¦¢then ¦¢ ¦¢ echo It is a D ¦¢ ¦¢else ¦¢ ¦¢ echo It is an F ¦¢ ¦¢fi ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÀÌ ¿¹´Â ÀÌ¹Ì ¼Ò°³Çß´ø ÇÁ·Î±×·¥ÀÌ´Ù. ±×·±µ¥ À̹ø¿¡´Â elif Á¦¾î¹®À» »ç¿ëÇÏ¿© ÇÁ·Î±×·¥À» º¸´Ù °£°áÇÏ°Ô ÀÛ¼ºÇÑ °á°ú¸¦ º¸¿©ÁØ´Ù. -------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­´Â Áö±Ý±îÁöÀÇ ½© ÇÁ·Î±×·¥ °úÁ¤À» Á¤¸®ÇÒ ¼ö ÀÖ´Â ¿¬½À¹®Á¦¸¦ µå¸®°Ú½À´Ï´Ù. -------------------------------------------------------------------------- #97 À¯´Ï½Ã½º (adunis2 ) Shell Program: ½ÇÀü ¿¬½À ¹®Á¦ 04/04 07:18 82 line Shell Program ½ÇÀü ¿¬½À¹®Á¦ ------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. ------------------------------------------------------------------- 1) ÀÎÀÚ(Arguments)·Î½á ÇϳªÀÇ È­ÀϸíÀ» ÀÔ·Â ¹Þ¾Æ¼­, ÇØ´ç È­ÀÏÀÌ ½ÇÇà °¡´ÉÇÑÁö¸¦ °Ë»çÇÏ´Â ½© ÇÁ·Î±×·¥À» ÀÛ¼ºÇϽÿÀ. À̶§ °Ë»ç °á°ú°¡ ÂüÀÏ °æ¿ì¿¡´Â "È­Àϸí is already executable"À̶ó´Â ¸Þ¼¼Áö¸¦ Ç¥½ÃÇÑ´Ù. (À̶§ 'È­Àϸí'Àº »ç¿ëÀÚ°¡ ÀÔ·ÂÇÑ ÀÎÀÚ·Î ´ëÄ¡ÇÏ¿© Ãâ·ÂÇÑ´Ù. ) ¸¸ÀÏ °Ë»ç °á°ú°¡ °ÅÁþÀÏ °æ¿ì¿¡´Â ÇØ´ç È­ÀÏÀÇ Á¢±Ù±ÇÇÑÀ» 'rwxr-xr-x'·Î º¯°æÀ»ÇÏ°í, "È­Àϸí has been made executable"À̶ó´Â ¸Þ¼¼Áö¸¦ Ç¥½ÃÇϵµ·Ï ÇÑ´Ù. (À̶§ÀÇ 'È­Àϸí'µµ À§¿Í µ¿ÀÏÇÏ°Ô ÀÔ·ÂÇÑ ÀÎÀÚ·Î ´ëÄ¡ÇÑ´Ù.) 2) ÀÎÀÚ(Arguments)·Î½á È­ÀϸíÀ» ÀÔ·Â ¹Þ¾Æ¼­, ÇØ´ç È­ÀÏÀÇ È­ÀÏ Á¾·ù(file type)¸¦ È®ÀÎÇÏ´Â ½© ÇÁ·Î±×·¥À» ÀÛ¼ºÇϽÿÀ. À̶§ È­ÀÏ Á¾·ù°¡ "command text file", "Ascii text file" ¶Ç´Â "English text file"ÀÏ °æ¿ì¿¡´Â pg ¸í·É¾î¸¦ »ç¿ëÇÏ¿© È­ÀÏÀÇ ³»¿ëÀ» Ãâ·ÂÇÏ°Ô ÇÏ°í, ¸¸¾à È­ÀÏÀÌ ´Ù¸¥ È­ÀÏ Á¾·ùÀÏ °æ¿ì¿¡´Â "È­Àϸí is not displayable."À̶ó´Â ¸Þ¼¼Áö¸¦ Ç¥½ÃÇÑ´Ù. ±×·±µ¥ È­ÀÏÀÌ ±âÁ¸¿¡ Á¸ÀçÇÏÁö ¾Ê´Â È­ÀÏÀÏ °æ¿ì¿¡´Â " File È­Àϸí does not exist"¶ó´Â ¸Þ¼¼Áö¸¦ Ç¥½ÃÇϵµ·Ï ÇÑ´Ù. 3) ´ÙÀ½°ú °°Àº ¿ä±¸»çÇ׿¡ ¸Âµµ·Ï ÇØ´ç È­ÀÏÀ» ÇÁ¸°Æ® Çü½ÄÀ¸·Î º¯È¯ÇÑ ÈÄ, ÇÁ¸°ÅÍ·Î Ãâ·ÂÇÏ´Â ½© ÇÁ·Î±×·¥À» pr°ú lp ¸í·É¾î¸¦ »ç¿ëÇÏ¿© ÀÛ¼ºÇϽÿä. 1. ÇÁ¸°Æ®ÇÒ È­ÀÏÀº »ç¿ëÀÚ¿¡°Ô ¹°¾î¼­ ó¸®Çϵµ·Ï ÇÑ´Ù. 2. ÇÁ¸°Æ®ÇÒ Ç¥Á¦(Header)´Â »ç¿ëÀÚ¿¡°Ô ¹°¾î¼­ ó¸®Çϵµ·Ï ÇÑ´Ù. 3. ÇÁ¸°Æ®ÇÒ È½¼ö¸¦ »ç¿ëÀÚ¿¡°Ô ¹°¾î¼­ ó¸®Çϵµ·Ï ÇÑ´Ù. 4) »ç¿ëÀÚ¿¡°Ô È­Àϸí°ú µð·ºÅ丮¸¦ ÀԷ¹ÞÀºÈÄ, »ç¿ëÀÚ°¡ ÀÔ·ÂÇÑ µð·ºÅ丮ºÎÅÍ ½ÃÀÛÇÏ¿© ÇÏÀ§ µð·ºÅ丮µé³»¿¡¼­ ÀÔ·ÂÇÑ È­ÀÏÀ» °Ë»öÇÏ¿©, ÇØ´ç È­ÀÏÀ» ¹ß°ßÇÒ °æ¿ì ÇØ´çÈ­ÀÏÀÇ Àý´ë °æ·Î¸íÀ» Ç¥½ÃÇØ ÁÖ´Â ½© ÇÁ·Î±×·¥À» ÀÛ¼ºÇϽÿä. ¸¸ÀÏ ÇØ´ç È­ÀÏÀÌ Á¸ÀçÇÏÁö ¾ÊÀ» °æ¿ì¿¡´Â ´ÙÀ½°ú °°Àº ¸Þ¼¼Áö¸¦ Ç¥½ÃÇÑ´Ù. "File È­Àϸí is not under directory" ´ÙÀ½Àº ÀÌ·± ½© ÇÁ·Î±×·¥À» ½ÇÇàÇÑ ¿¹ÀÌ´Ù. ÇÁ·Î±×·¥ ÀÛ¼º½Ã ÂüÁ¶Çϱ⠹ٶõ´Ù. $prog ecter file name: f1 enter directory to search under /mjr file f1 can be found as /mjr/f1 /mjr/dir/f1 5) È­ÀÏ º¹»ç¸¦ À§ÇÑ È­Àϸí°ú µð·ºÅ丮 ¸íÀ» ¹Þ¾ÆµéÀÌ´Â ½© ÇÁ·Î±×·¥À» ÀÛ¼ºÇϽÿÀ. È­ÀÏÀÇ º¹»ç´Â ÀԷ¹ÞÀº È­ÀÏÀ» ÀԷ¹ÞÀº µð·ºÅ丮¿¡ º¹»çÇÏ´Â Çü½ÄÀ¸·Î ¼öÇàÇÑ´Ù. º¹»ç¸¦ ¼öÇàÇϱâ Àü¿¡ µð·ºÅ丮¿¡µ¿ÀÏÇÑ È­ÀϸíÀÌ Á¸ÀçÇÏ°í Àִ°¡¸¦ È®ÀÎÇÏ¿©, ÀÖÀ» °æ¿ì¿¡´Â »ç¿ëÀÚ¿¡°Ô overwrite, rename ¶Ç´Â exit ¸¦ ¹¯´Â ¸Þ¼¼Áö¸¦ Ãâ·ÂÇÑÈÄ, »ç¿ëÀÚÀÇ ¼±Åÿ¡ µû¶ó¼­ ÀÛ¾÷ÀÌ ½ÇÇàµÇµµ·Ï ó¸®ÇÑ´Ù. Áï; overwrite ¼±Åýÿ¡´Â ±×³É º¹»ç¸¦ ¼öÇàÇϸç, renameÀ» ¼±ÅÃÇÒ °æ¿ì¿¡´Â º¹»çµÇ´Â È­ÀϸíÀÇ ³¡¿¡ 1À» ºÙ¿© º¹»çµÇµµ·Ï ó¸®ÇÏ°í, exit¸¦ ¼±ÅÃÇÒ °æ¿ì¿¡´Â ÇÁ·Î±×·¥ ½ÇÇàÀ» Á¾·áÇÑ´Ù. -------------------------------------------------------------------------- ¼ö°­ÀÚ ¿©·¯ºÐ²² µå¸®´Â ±Û.. À̹ø ½Ç½À¹®Á¦¸¦ ¿©·¯ºÐÀÌ ¸ðµÎ Ç®¼ö ÀÖ´Â ½Ã°£Àû ¿©À¯¸¦ µå¸®±â À§ÇØ Åë½Å°­ÀÇ ÁøÇàÀ» ¸çÄ¥°£ ÁßÁöÇϵµ·Ï ÇÏ°Ú½À´Ï´Ù. Åë½Å°­ÀÇ ÁøÇàÀº ´ÙÀ½ÁÖ È­¿äÀϺÎÅÍ Àç°³Çϵµ·Ï ÇÏ°Ú½À´Ï´Ù. ±×¶§ À̹ø ½Ç½À¹®Á¦¿¡ ´ëÇÑ ÇØ´äÀ» ÇÔ²² Á¦°øÇϵµ·Ï ÇÏ°Ú½À´Ï´Ù. ¸¸¾à ¿©·¯ºÐÀÌ ÀÛ¼ºÇϽŠ½Ç½À ¹®Á¦¿¡ ´ëÇÑ ÀÚ¹®ÀÌ ÇÊ¿äÇϽôٸé, ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. ------- °¨»çÇÕ´Ï´Ù. Åë½Å°­ÀÇ ´ã´çÀÚ µå¸² ------ -------------------------------------------------------------------------- #98 À¯´Ï½Ã½º (adunis2 ) Shell Program: ½ÇÀü ¹®Á¦ ´ä¾È 04/09 21:48 127 line Shell Program: ½ÇÀü ¹®Á¦ ÇØ´ä ------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. ------------------------------------------------------------------- 1. # ÀÌ ÇÁ·Î±×·¥Àº »ç¿ëÀÚ°¡ ÇÁ·Î±×·¥ ½ÇÇà½Ã ÁöÁ¤ÇÑ È­ÀÏÀÌ »ç¿ëÀÚ°¡ # ½ÇÇà °¡´ÉÇÑÁö ¾Æ´ÑÁö¸¦ È®ÀÎÇÑ ÈÄ, ½ÇÇà ±ÇÇÑÀÌ ¾øÀ» °æ¿ì, # ½ÇÇà ±ÇÇÑÀ» ºÎ¿©ÇÏ´Â ÇÁ·Î±×·¥ÀÌ´Ù. if [ -x "$1" ] then echo "$1 is already executable" else chmod 755 $1 echo "$1 has been made executable" fi # ÀÌ ÇÁ·Î±×·¥Àº ¿¡·¯°¡ ¹ß»ýÇÒ ¼ÒÁö°¡ ÀÖ´Ù. ±×°ÍÀº È­ÀÏÀÌ Á¸ÀçÇÏÁö # ¾ÊÀ» °æ¿ì¿¡ ¹ß»ýÇÑ´Ù. µ¶ÀÚ ¿©·¯ºÐÀÌ ±× »óȲÀ» ¿¹¹æÇØ º¸±â¸¦ # ºÎŹÇÑ´Ù. 2. # ÀÌ ÇÁ·Î±×·¥Àº »ç¿ëÀÚ°¡ ÀÔ·ÂÇÑ È­ÀÏÀÌ È­¸é¿¡ Ç¥½Ã °¡´ÉÇÑÁö ¶Ç´Â # ºÎ°¡´ÉÇÑÁö¸¦ È®ÀÎÇÑÈÄ, Ç¥½Ã °¡´ÉÇÑ ÅؽºÆ® È­ÀÏÀÎ °æ¿ì ´Ü¸»¿¡ # È­ÀÏÀÇ ³»¿ëÀ» Ãâ·ÂÇÏ´Â ÇÁ·Î±×·¥ÀÌ´Ù. ÀÌ ÇÁ·Î±×·¥Àº ½Ã½ºÅÛ HangÀ» # ¹æÁöÇϱâ À§ÇØ ¿ä±äÇÏ°Ô »ç¿ëÇÒ ¼ö ÀÖ´Â ÇÁ·Î±×·¥ÀÌ´Ù. if [ -x "$1" ] then file "$1" | grep 'text' if [ $? = 0 ] then pg $1 else echo "$1" is not displayable fi else echo File $1 does not exist fi 3. # ÀÌ ÇÁ·Î±×·¥Àº »ç¿ëÀÚ°¡ ÁöÁ¤ÇÑ È­ÀÏÀ» ÇÁ¸°Æ®ÇÏ´Â ÇÁ·Î±×·¥À¸·Î¼­ # ÇÁ¸°Æ®Çϱâ À§ÇØ »ç¿ëÀÚ¿¡°Ô ¸î°¡Áö Á¤º¸¸¦ ¹¯°í ÀÖ´Ù. echo "Pls enter filename to print ?" read printfile echo "Pls enter page header to print ?" read header echo "Pls enter the number of copies to print ?" read copies pr -h "$header" "$printfile" | lp -n$copies 4. # ÀÌ ÇÁ·Î±×·¥Àº ƯÁ¤ µð·ºÅ丮³»¿¡¼­ ÁöÁ¤ÇÑ È­ÀÏÀÇ Á¸Àç¿©ºÎ¸¦ È®ÀÎÇÏ´Â # ÇÁ·Î±×·¥ÀÌ´Ù. echo "Pls enter filename ?" read sfile echo "Pls enter directory to search under \c" read sdirectory vresults=`find $sdirectory -name $sfile -print` if [ "$vresults" = "" ] then echo "File $sfile is not under $sdirectory" else echo "File $sfile can be found as $vresults" fi 5. # ÀÌ ÇÁ·Î±×·¥Àº »ç¿ëÀÚ°¡ ÁöÁ¤ÇÑ È­ÀÏÀ» ƯÁ¤ÀÇ µð·ºÅ丮¿¡ º¹»çÇϴµ¥ # À־, ±× µð·ºÅ丮³»¿¡ µ¿ÀÏÇÑ À̸§ÀÎ ±âÁ¸ÀÇ È­ÀÏÀÌ ÀÖÀ» °æ¿ì¿¡ # ó¸® ÇüŸ¦ »ç¿ëÀÚ¿¡°Ô ¹°¾î ó¸®Çϵµ·Ï ÇÏ´Â ÇÁ·Î±×·¥ÀÌ´Ù. echo "Enter filename to copy: \c" ; read fname echo "Enter destination directory name: \c" ; read dname if [ ! ( -f $fname ) ] then echo "File $fname not found" exit 1 fi if [ ! ( -d $dname ) ] then echo "Directory $dname not found" exit 1 fi if [ -s ${dname}/${fname} ] then echo "File ${dname}/${fname} exists" echo "Replace it (0=yes,other=no): \c" ; read choice if [ choice -eq 0 ] then cp $fname ${dname}/${fname} else mv ${dname}/${fname} ${dname}/${fname}1 echo "move ${dname}/${fname} to ${dname}/${fname}1" cp $fname ${dname}/${fname} echo "File ${dname}/${fname} copied" exit 0 fi else cp $fname ${dname}/${fname} echo "File $fname copy to ${dname}/${fname}" exit 0 fi À̵é ÇÁ·Î±×·¥µé¿¡¼­´Â ¿¡·¯ ¹ß»ý½Ã ó¸® ³»¿ë¿¡ ´ëÇÑ Á¦¾î¸¦ Á¤ÀÇÇÏÁö ¾Ê°í ÀÖ´Ù. ¼ö°­ÀÚ ¿©·¯ºÐµé²²¼­ ÀÌ ÇÁ·Î±×·¥¿¡ ¿¡·¯ ó¸® ±¸¹®µéÀ» Ãß°¡ÇÏ±æ ºÎŹÇÑ´Ù. -------------------------------------------------------------------------- <<<< ¼ö°­ÀÚ ¿©·¯ºÐ! >>>> À§ÀÇ ÇÁ·Î±×·¥Àº Bourne/Korn Shell ¸ðµÎ¿¡¼­ ½ÇÇàµÇµµ·Ï ÀÛ¼ºÇÑ ÇÁ·Î±×·¥ÀÔ´Ï´Ù. À§ÀÇ ÇÁ·Î±×·¥ÀÌ ¸ð¹ü ´ä¾ÈÀ̶ó°í ÇÒ¼ö´Â ¾øÀ¸³ª, ¿©·¯ºÐ²²¼­ ½© ÇÁ·Î±×·¥À» ÀÌÇØÇϽôµ¥ ¸¹Àº µµ¿òÀ» ¾òÀ¸½Ç °ÍÀ̶ó°í ¹Ï½À´Ï´Ù. ½Ã°£Àû ¿©À¯°¡ µÇ½Å´Ù¸é º¸´Ù È¿À²ÀûÀÎ ÇÁ·Î±×·¥ÀÌ µÇµµ·Ï ¼öÁ¤ÇϽñ⠹ٶø´Ï´Ù. ±×¸®°í ½© ÇÁ·Î±×·¡¹Ö °úÁ¤¿¡¼­´Â °¢ ÁÖÁ¦Á¦º° °­ÀÇ°¡ ³¡³¯¶§¸¶´Ù °è¼ÓÀûÀ¸·Î ½ÇÀü¹®Á¦¸¦ µå¸± ¿¹Á¤ÀÌ¿À´Ï ¸¹Àº Âü°í ¹Ù¶ø´Ï´Ù. -------------------------------------------------------------------------- #99 À¯´Ï½Ã½º (adunis2 ) Filter¿Í Regular Expressions °³¿ä 04/11 08:19 101 line Filter¿Í Regular Expressions ------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. ------------------------------------------------------------------- À̹ø °­ÀǺÎÅÍ´Â ¸í·É¾î ¶óÀΰú ½© ÇÁ·Î±×·¥³»¿¡¼­ »ç¿ëµÉ¼ö ÀÖ´Â À¯´Ð½º ÇÊÅÍ(Filters)ÀÇ °³¿ä¿Í ÀÌ¿ë ¹æ½ÄÀ» ¼Ò°³ÇÑ´Ù. ±×¸®°í ÇÊÅͳ»¿¡¼­ÀÇ Á¤±Ô Ç¥Çö½Ä (Regular expressions)ÀÇ ÁöÁ¤ ¹æ½Ä¿¡ ´ëÇÑ ±âº»ÀûÀÎ ¼Ò°³°¡ ÇàÇØÁø´Ù. 1. ÇÊÅÍ(Filter) ÇÊÅʹ ǥÁØÀÔ·Â(Standard Input)À» ÃëÇؼ­, ÀԷ¿¡ ´ëÇØ Á¦¾î¸¦ ¼öÇàÇÏ°í, ±× °á°ú¸¦ Ç¥ÁØÃâ·Â(Standard Output)¿¡ °á°ú¸¦ º¸³»´Â/ÀúÀåÇÏ´Â ÇÁ·Î±×·¥ÀÌ´Ù. À̸¦ ±×¸²À¸·Î ¼³¸íÇÏ¸é ´ÙÀ½°ú °°´Ù. ¦®¦¬¦¬¦¬¦¬¦¯ ¦­ ¦·¦¡> Ç¥ÁØ¿¡·¯(Standard Error) Ç¥ÁØÀÔ·Â ¦¡¦¡> ¦­ Filter ¦­ (Standard Input) ¦­ ¦·¦¡> Ç¥ÁØÃâ·Â(Standard Output) ¦±¦¬¦¬¦¬¦¬¦° ÇÊÅÍ´Â µÎ°³ÀÇ ÇÁ·Î±×·¥»çÀÌÀÇ ÆÄÀÌÇÁ¿¡¼­ »ç¿ëµÇ¾îÁú¼ö ÀÖ´Â ÇÁ·Î±×·¥À¸·Î¼­, È­Àϳ»ÀÇ Á¤º¸¸¦ Á¶ÀÛÇϴµ¥ À¯¿ëÇÏ°Ô »ç¿ëÇÒ ¼ö ÀÖ´Ù. È­ÀÏ¿¡¼­ÀÇ Á¤º¸ÀÇ ¼±ÅÃ, È­Àϵ鰣ÀÇ Á¤º¸ÀÇ ºñ±³, È­Àϵ鰣ÀÇ Á¤º¸ÀÇ º´ÇÕ ¶Ç´Â »èÁ¦¿Í °°Àº ÀÛ¾÷µéÀ» ÇÊÅ͸¦ »ç¿ëÇÏ¿© ¼öÇàÇÒ ¼ö ÀÖ´Ù. ´ÙÀ½°ú °°Àº ¸î°¡Áö À¯´Ð½º ½© ¸í·É¾î´Â ÇÊÅ͸¦ »ç¿ëÇÏ¿© ÀÛ¾÷À» ¼öÇàÇÑ´Ù. - grep - sort - tr - cut - paste - sed - awk 2. Á¤±Ô Ç¥Çö½Ä(Regular Expressions) À¯´Ð½º ÇÊÅͳ»¿¡¼­´Â Á¤±Ô Ç¥Çö½ÄÀ» ÀÌ¿ëÇÏ¿© ÀÔ·Â Á¤º¸¸¦ Á¤¸®ÇÏ¿© ó¸®ÇÒ ¼ö ÀÖ´Ù. Á¤±Ô Ç¥Çö½ÄÀº ÀÛ¾÷½Ã ÀÏÄ¡(match)½Ãų ÆÐÅÏ(Pattern)À» ³ªÅ¸³»´Â ¹®ÀÚµéÀÇ ±×·ìÀÌ´Ù. Á¤±Ô Ç¥Çö½Ä¿¡´Â ÀÏ¹Ý ¹®ÀÚµé ¶Ç´Â Æ¯º°ÇÑ ´ëÄ¡°¡ ¼öÇàµÇ´Â ´ëÄ¡¹®ÀÚµéÀ» »ç¿ëÇÏ¿© ÆÐÅÏÀ» ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù. À̸¦ Á¤¸®ÇÏ¸é ´ÙÀ½°ú °°´Ù. 1) ´Ü¼øÇÏ°Ô ÆÐÅϸ¸À» ÁöÁ¤ÇÏ´Â °æ¿ì - abc 2) ´Ü¼øÇÑ ÇüÅ·ΰáÇÕÇÏ¿© ÁöÁ¤ÇÏ´Â °æ¿ì - ^a[0-9] 3) º¹ÇÕ ±¸Á¶·Î °áÇÕÇÑ °æ¿ì - [aA][bB]c$ - ^\$50*\..* - \.* ´ÙÀ½Àº Á¤±Ô Ç¥Çö½Ä¿¡¼­ »ç¿ëµÇ´Â Ư¼ö¹®ÀÚµéÀ» ³ª¿­ÇÑ °ÍÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ Symbol ¦¢ ÀÇ ¹Ì ¦¢ ¿¹Á¦ ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦© ¦¢[set] ¦¢ÁöÁ¤µÈ set³»ÀÇ ¹®ÀÚÁß ÇÑÀÚ¿Í ´ëÄ¡µÈ´Ù. ¦¢[Aa][Bb] ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦© ¦¢[beg-end] ¦¢ASCII Äڵ带 ±âÁØÀ¸·Î beg¿Í end »çÀÌÀÇ ¦¢[2-7] ¦¢ ¦¢ ¦¢ÇÑ ¹®ÀÚ¿Í ´ëÄ¡µÈ´Ù. ¦¢ ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦© ¦¢. ¦¢ÀÓÀÇÀÇ ÇÑ ¹®ÀÚ¿Í ´ëÄ¡µÈ´Ù. ¦¢b.t ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦© ¦¢* ¦¢¼±ÇàÇÏ´Â ÇÑ ¹®ÀÚÀÇ 0 ¹ø ¶Ç´Â ±× ÀÌ»óÀÇ ¦¢b.*t ¦¢ ¦¢ ¦¢occurrence¿Í ´ëÄ¡µÈ´Ù. ¦¢b[A-z]*t ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦© ¦¢^ ¦¢¶óÀÎÀÇ Ã³À½¿¡ ÁöÁ¤µÇ¾î ÀÖ´Â ¹®ÀÚ ¶Ç´Â ¦¢^root ¦¢ ¦¢ ¦¢¹®ÀÚ¿­µé¸¸À¸·Î Á¦ÇÑ. ¦¢ ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦© ¦¢[^set] ¦¢ÁöÁ¤ÇÑ set¿¡ ¼ÓÇÏÁö ¾Ê´Â ¹®ÀÚ¿Í ´ëÄ¡µÈ´Ù. ¦¢[^2-7] ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦© ¦¢$ ¦¢¶óÀÎÀÇ ³¡¿¡ ÁöÁ¤µÇ¾î ÀÖ´Â ¹®ÀÚ ¶Ç´Â ¦¢/bin/ksh$ ¦¢ ¦¢ ¦¢¹®ÀÚ¿­µé¸¸À¸·Î Á¦ÇÑ. ¦¢ ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦© ¦¢\ ¦¢ÈļӵǴ ÇÑÀÚÀÇ Æ¯¼ö¹®ÀÚ¿¡ ´ëÇÑ ½©ÀÇ Ã³¸®¸¦ ¦¢\$5\.00 ¦¢ ¦¢ ¦¢±ÝÁöÇÑ´Ù. ¦¢ ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¥ ( À̵鿡 ´ëÇÑ ÀÚ¼¼ÇÑ »ç¿ë¿¹¹× ¼³¸íÀº ÈļӵǴ °­ÀÇ¿¡¼­ ÇϳªÇϳª¾¿ ÀÚ¼¼È÷ ¼³¸íÇÑ´Ù. ) Á¤±Ô Ç¥Çö½Ä¿¡¼­ À§¿Í°°Àº Ư¼ö¹®ÀÚµéÀ» ÀÏ¹Ý ¹®ÀÚ·Î »ç¿ëÇϱâ À§ÇØ ½©ÀÇ ¹ø¿ªÀ» ±ÝÁö½ÃÅ°±â À§Çؼ­´Â ÀÌ¹Ì ¼³¸íÇß´øµ¥·Î º¸È£¹®ÀÚµéÀ» »ç¿ëÇÑ´Ù. ¶ÇÇÑ Á¤±Ô Ç¥Çö½Ä¿¡ °ø¹é ¶Ç´Â ÅÇ ¹®ÀÚ°¡ µé¾îÀÖÀ» °æ¿ì¿¡´Â ÀÌµé ¹®ÀÚ´Â ÇÊµå ±¸º°ÀÚ·Î ½©ÀÌ ÀνÄÇÏ¿© ó¸®Çϱ⠶§¹®¿¡, »ç¿ë½Ã¿¡ ÁÖÀÇÇØ¾ß ÇÑ´Ù. Á¤±Ô Ç¥Çö½Ä(Regular Expression)Àº »ç¿ëÀÚÀÇ ÇÊ¿ä¿¡ µû¶ó Çϳª ¶Ç´Â ±× ÀÌ»óÀÇ Æ¯¼ö¹®ÀÚµéÀ» »ç¿ëÇÏ¿© ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù. ±×·¯³ª Áö³ªÄ¡°Ô ¸¹Àº Ư¼ö¹®ÀÚ¸¦ »ç¿ëÇÏ¿© Á¤±Ô Ç¥Çö½ÄÀ» ÁöÁ¤ÇÒ °æ¿ì¿¡´Â ÁÖÀÇÇØ¾ß ÇÑ´Ù. ¿¹¸¦µéÀÚ¸é biginning^end¿Í °°Àº Çü½ÄÀ¸·Î »ç¿ëµÈ ^¹®ÀÚ´Â ½©¿¡ ¾Æ¹«·± ¿µÇâÀ» ÁÖÁö¾Ê°í, ´Ü¼øÇÏ°Ô ^ ¹®ÀڷΠ󸮵ȴÙ. ¾ÕÀý¿¡¼­ ¼³¸íÇß´ø ÇÊÅ͸¦ »ç¿ëÇÏ´Â À¯´Ð½º ½© ¸í·É¾îµéÀº, ÀÌ¿Í°°Àº Á¤±Ô Ç¥Çö½ÄÀ» »ç¿ëÇÏ¿© º¸´Ù ¼¼ºÎÀûÀÎ ÀÛ¾÷ Á¦¾î¸¦ ¼öÇàÇÒ ¼öÀÖ´Ù. ´ÙÀ½ °­ÀǺÎÅÍ ¸îȸ¿¡ °ÉÃÄ ÇÊÅ͸¦ »ç¿ëÇÏ´Â ½© ¸í·É¾îµéÀÇ ÀÀ¿ë ¹æ½ÄÀ» ¼³¸íÇÑ´Ù. -------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­´Â ÇÊÅ͸¦ »ç¿ëÇÏ´Â grep ¸í·É¾îÀÇ ÀÀ¿ë¿¡ ´ëÇØ ¼³¸íÇÕ´Ï´Ù. -------------------------------------------------------------------------- #100 À¯´Ï½Ã½º (adunis2 ) Filter,Regular Ex[ressions: grep 04/12 08:41 194 line Regular Expression°ú Filters: grepÀÇ ÀÀ¿ë ------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. ------------------------------------------------------------------- grep ¸í·É¾îµµ ³»ºÎÀûÀ¸·Î filter¸¦ »ç¿ëÇϱ⠶§¹®¿¡ »ç¿ëÀÚ´Â Á¤±Ô Ç¥Çö½ÄÀ» »ç¿ëÇÏ¿© º¸´Ù ´Ù¾çÇÑ Çü½ÄÀ¸·Î grep ¸í·É¾î¸¦ »ç¿ëÇÒ ¼öÀÖ°Ô µÈ´Ù. 1. grep ¸í·É¾î grep(Global Regular Expression Printer) ¸í·É¾î´Â »ç¿ëÀÚ°¡ ÁöÁ¤ÇÑ Á¤±Ô Ç¥Çö½Ä(Regular Expression)À¸·Î ÁöÁ¤µÈ ¹®ÀÚ¿­¿¡ ´ëÇؼ­ ¸í·É¾î ¶óÀÎ»ó¿¡ ÁöÁ¤µÈ È­ÀÏ/È­ÀϵéÀÇ ³»¿ëÀ» °Ë»öÇÏ°í, ÁöÁ¤ÇÑ ¹®ÀÚ¿­ÀÌ µé¾îÀÖ´Â È­ÀÏ»óÀÇ ¶óÀÎÀ» Ç¥½ÃÇÑ´Ù. grep ¸í·É¾îÀÇ »ç¿ë Çü½ÄÀº ´ÙÀ½°ú °°´Ù. grep [option] re [files] ¿©±â¿¡¼­ re´Â Á¤±Ô Ç¥Çö½ÄÀ» ³ªÅ¸³½´Ù. À̶§ Á¤±Ô Ç¥Çö½ÄÀ» ¸í·É¾î ¶óÀÎ»ó¿¡ ÁöÁ¤ÇÒ °æ¿ì¿¡´Â Á¤±Ô Ç¥Çö½Ä³»¿¡ ÁöÁ¤µÇ¾î Àִ Ư¼ö¹®Àڵ鿡 ´ëÇÑ ½©ÀÇ À߸øµÈ ¹ø¿ªÀ» ¹æÁöÇϱâ À§Çؼ­´Â ¹Ýµå½Ã º¸È£¹®ÀÚ¸¦ »ç¿ëÇÏ¿© ¹­¾î ÁÖ¾î¾ß ÇÑ´Ù. ±×¸®°í ¸¸ÀÏ ¸í·É¾î ¶óÀÎ»ó¿¡ Çϳª ÀÌ»óÀÇ È­ÀÏÀÌ ÁöÁ¤µÇ¸é, grep ¸í·É¾î´Â °Ë»ö °á°ú·Î Ç¥½ÃµÇ´Â °¢ ¶óÀÎÀÇ Ã³À½¿¡, °¢ ¶óÀÎÀÌ ¼ÓÇÑ È­ÀϸíÀ» Ç¥½ÃÇÑ´Ù. ´ÙÀ½Àº grep ¸í·É¾î¿¡ Á¤±Ô Ç¥Çö½ÄÀ» ÁöÁ¤ÇÑ ¿¹¸¦µé±â À§ÇØ ´ÙÀ½°ú °°Àº È­ÀÏÀÌ ÀÖ´Ù°í °¡Á¤ÇÑ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢/etc/passwd ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢root:x:0:1:root admin:/: ¦¢ ¦¢sa:x:0:0:sa menus login:/sa:/sa/sa.exec ¦¢ ¦¢user1:x:200:200:UNIX user:/usr/user1:/bin/rsh ¦¢ ¦¢user2:x:201:200:UNIX user:/usr/user1:/bin/rsh ¦¢ ¦¢user3:x:202:210:UNIX user:/usr/user3:/bin/rsh ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ # È­ÀÏ¿¡¼­ user1À̶ó´Â ¹®ÀÚ¿­ÀÌ µé¾îÀÖ´Â ¶óÀÎÀ» °Ë»öÇÑ´Ù. $grep 'user1' /etc/passwd user1:x:200:200:UNIX user:/usr/user1:/bin/rsh user2:x:201:200:UNIX user:/usr/user1:/bin/rsh # È­ÀÏ¿¡¼­ user1À̶ó´Â ¹®ÀÚ¿­ÀÌ Ã³À½¿¡ ÁöÁ¤µÇ¾î ÀÖ´Â ¶óÀÎÀ» °Ë»öÇÑ´Ù. $grep '^user1' /etc/passwd user1:x:200:200:UNIX user:/usr/user1:/bin/rsh # È­Àϳ»ÀÇ °¢ ¶óÀÎÁß Ã¹¹®ÀÚ°¡ 1-9±îÁöÀÇ ¼ýÀÚ°¡ ¾Æ´Ñ ¶óÀÎÀ» °Ë»öÇÑ´Ù. $grep '[^1-9]' /etc/passwd root:x:0:1:root admin:/: sa:x:0:0:sa menus login:/sa:/sa/sa.exec user1:x:200:200:UNIX user:/usr/user1:/bin/rsh user2:x:201:200:UNIX user:/usr/user1:/bin/rsh user3:x:202:210:UNIX user:/usr/user3:/bin/rsh # È­Àϳ»ÀÇ ³»¿ë¿¡¼­ 13¹ø° ¹®ÀÚºÎÅÍ 200À̶ó´Â ¹®ÀÚ¿­ÀÌ ÀÖ´Â ¶óÀÎÀ» # ã¾Æ Ç¥½ÃÇÑ´Ù. $grep '^............200' /etc/passwd user1:x:200:200:UNIX user:/usr/user1:/bin/rsh user2:x:201:200:UNIX user:/usr/user1:/bin/rsh # user3¶ó´Â ¹®ÀÚ¿­ÀÌ µé¾î ÀÖ´Â ¶óÀεéÀ» °Ë»öÇÑ´Ù. $user=user3 $grep "$user" /etc/passwd user3:x:202:210:UNIX user:/usr/user3:/bin/rsh # ¶óÀÎÀÇ ¸¶Áö¸· ¹®ÀÚ°¡ :ÀÎ ¶óÀεéÀ» °Ë»öÇÑ´Ù. $grep ':$' /etc/passwd root:x:0:1:root admin:/: # ÀÌ ¿¹ÀÇ Á¤±Ô Ç¥Çö½ÄÀº ½ÉµµÀÖ°Ô ºÐ¼®ÇØ¾ß ÇÑ´Ù. # ++*¶ó´Â Çü½ÄÀ¸·Î ÁöÁ¤µÇ°í Àִµ¥ ù¹ø° + ÁöÁ¤Àº ¹®ÀÚ ÀÚü¸¦ ÀǹÌÇϳª, # µÎ¹ø° +´Â ÈļӵǴ *¶ó´Â Ư¼ö¹®ÀÚÀÇ ¿µÇâÀ» ¹Þ±â ¶§¹®¿¡ +°¡ 0¹ø ¶Ç´Â # ±× ÀÌ»ó ¹Ýº¹µÇ¾î ÁöÁ¤µÈ ¹®ÀÚ¿­À» ÀǹÌÇÑ´Ù. µû¶ó¼­ ÀÌ ¿¹ÀÇ ++* ÁöÁ¤Àº # +, ++, +++, ++++, +++++µîÀÌ °Ë»öµÈ´Ù. $grep '++*' /etc/passwd $ # À§ÀÇ ¿¹¿Í ¿¬°üµÇ´Â ¿¹ÀÌ´Ù. # À̹ø¿¡ ÁöÁ¤µÈ +* Á¤±Ô Ç¥Çö½ÄÀº + ¹®ÀÚ°¡ ¾ø°Å³ª ÀÖ´Â, Áï ¸ðµç ¶óÀÎÀ» # °Ë»öÇÏ°Ô µÈ´Ù. $grep '+*' /etc/passwd root:x:0:1:root admin:/: sa:x:0:0:sa menus login:/sa:/sa/sa.exec user1:x:200:200:UNIX user:/usr/user1:/bin/rsh user2:x:201:200:UNIX user:/usr/user1:/bin/rsh user3:x:202:210:UNIX user:/usr/user3:/bin/rsh 2. grep ¸í·É¾îÀÇ ¿É¼Ç grep ¸í·É¾î´Â ¸í·É¾î ½ÇÇàÈÄ Ç¥½ÃµÇ´Â Ãâ·ÂÀ» º¯ÇüÇÒ¼ö ÀÖ´Â ¸î°¡Áö Ãâ·ÂÀ» Á¦°øÇÑ´Ù. ´ÙÀ½Àº grep ¸í·É¾î°¡ Á¦°øÇÏ´Â ¿É¼ÇµéÀ» º¸¿©ÁØ´Ù. ¦£¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ ¿É¼Ç ¦¢ ÀÇ ¹Ì ¦¢ ¦§¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ -b ¦¢È­Àϳ» ºí·°¹øÈ£¸¦ ÇÔ²² °¢°¢ÀÇ Ãâ·Â ¶óÀÎÀÇ ¾Õ¿¡ Ç¥½ÃÇÑ´Ù. ¦¢ ¦§¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ -c ¦¢°Ë»öÇÏ¿© ¹ß°ßÇÑ ¶óÀμö¸¦ Ç¥½ÃÇÑ´Ù. ¦¢ ¦§¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ -i ¦¢°Ë»ö½Ã ´ë¼Ò¹®ÀÚ¸¦ ±¸º°ÇÏÁö ¾Ê´Â´Ù. ¦¢ ¦§¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ -l ¦¢ÇØ´ç ¹®ÀÚ¿­À» ¹ß°ßÇÑ ¶óÀθ¸À» Ç¥½ÃÇÑ´Ù. ¦¢ ¦§¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ -n ¦¢¹ß°ßÇÑ ¶óÀÎÀÇ È­ÀϼÓÀÇ ¶óÀÎ ¹øÈ£¸¦ Ç¥½ÃÇÑ´Ù. ¦¢ ¦§¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ -s ¦¢¿¡·¯ ¸Þ¼¼Áö¸¦ Ç¥½ÃÇÏÁö ¾Ê´Â´Ù. ¦¢ ¦§¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ -v ¦¢È­Àϳ»ÀÇ ¶óÀÎÁß ÁöÁ¤ÇÑ ¹®ÀÚ¿­ÀÌ µé¾îÀÖÁö ¾ÊÀº ¶óÀθ¸À» ¦¢ ¦¢ ¦¢Ç¥½ÃÇÑ´Ù. ¦¢ ¦¦¦¡¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ grep ¸í·É¾îÀÇ ¿É¼ÇÀ» ¼³¸íÇϱâ À§Çؼ­ ´ÙÀ½°ú °°Àº È­ÀÏÀÌ ÀÖ´Ù°í °¡Á¤ÇÑ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢/etc/passwd ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢root:x:0:1:root admin:/: ¦¢ ¦¢sa:x:0:0:sa menus login:/sa:/sa/sa.exec ¦¢ ¦¢user1:x:200:200:UNIX user:/usr/user1:/bin/rsh ¦¢ ¦¢user2:x:201:200:UNIX user:/usr/user2:/bin/rsh ¦¢ ¦¢user3:x:202:210:UNIX user:/usr/user3:/bin/rsh ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ # -c ¿É¼ÇÀ» »ç¿ëÇÏ´Â ¿¹ $grep -c 'user' /etc/passwd 3 # -i ¿É¼ÇÀ» »ç¿ëÇÏ´Â ¿¹ $grep -i 'USER' /etc/passwd user1:x:200:200:UNIX user:/usr/user1:/bin/rsh user2:x:201:200:UNIX user:/usr/user2:/bin/rsh user3:x:202:210:UNIX user:/usr/user3:/bin/rsh # -v ¿É¼ÇÀ» ÀÌ¿ëÇÑ ¿¹ $grep -v 'user' /usr/passwd root:x:0:1:root admin:/: sa:x:0:0:sa menus login:/sa:/sa/sa.exec # -l ¿É¼ÇÀ» ÀÌ¿ëÇÑ ¿¹ $grep -l '2[0-9][0-9]*' /etc/passwd /etc/passwd # -n ¿É¼ÇÀ» ÀÌ¿ëÇÑ ¿¹ $grep -n '[A-Z]' /etc/passwd 3:user1:x:200:200:UNIX user:/usr/user1:/bin/rsh 4:user2:x:201:200:UNIX user:/usr/user2:/bin/rsh 5:user3:x:202:210:UNIX user:/usr/user3:/bin/rsh # ÀÌ ¿¹¿¡¼­ passwd¶ó´Â È­ÀÏÀÇ À̸§À» ¿¡·¯ ó¸® Çü½ÄÀ» º¸¿©ÁÖ±â À§ÇØ # ÀϺη¯ passswd¶ó°í ÁöÁ¤ÇÑ °ÍÀ» ÁÖ¸ñÇϱ⠹ٶõ´Ù. $grep '.' /etc/passswd grep:cannot open /etc/passswd # ÀÌ ¿¹¿¡¼­´Â -s ¿É¼ÇÀ» »ç¿ëÇÏ¿© À§ÀÇ ¿¹¿¡¼­ÀÇ ¿¡·¯ ó¸®Çü½ÄÀ» # Á¦¾îÇÏ°í ÀÖ´Ù. $grep -s '.' /etc/passswd /etc/passwd root:x:0:1:root admin:/: sa:x:0:0:sa menus login:/sa:/sa/sa.exec user1:x:200:200:UNIX user:/usr/user1:/bin/rsh user2:x:201:200:UNIX user:/usr/user2:/bin/rsh user3:x:202:210:UNIX user:/usr/user3:/bin/rsh # ÀÌ ¿¹¿¡¼­´Â º¹¼ö°³ÀÇ ¿É¼ÇÀ» »ç¿ëÇÏ´Â ¿¹¸¦ º¸¿©ÁØ´Ù. $grep -n -s '\.' /etc/passswd /etc/passwd /etc/passwd:1:sa:x:0:0:sa menus login:/sa:/sa/sa.exec ------------------------------------------------------------------------ ´ÙÀ½ °­ÀÇ¿¡¼­´Â Filter¸¦ ÀÌ¿ëÇÑ sort¿Í tr ¸í·É¾î¿¡ ´ëÇؼ­ ¼³¸íÇÕ´Ï´Ù. ------------------------------------------------------------------------ #101 À¯´Ï½Ã½º (adunis2 ) Filter,Regular Expressions: sort, tr 04/13 08:27 201 line Regular Expression°ú Filters: sort, tr ------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. ------------------------------------------------------------------- 1. sort ¸í·É¾î sort ¸í·É¾î´Â ÁöÁ¤µÈ È­Àϳ»ÀÇ °¢ ¶óÀÎÀ» Á¤·ÄÇÏ°í, ±× °á°ú¸¦ Ç¥ÁØÃâ·ÂÀ¸·Î(Áï; ½ºÅ©¸°»óÀ¸·Î) Ãâ·ÂÇÑ´Ù. sort ¸í·É¾î´Â Ãâ·ÂÀ» ÇàÇÔ¿¡ À־ °¢°¢ÀÇ ¶óÀÎ ´ÜÀ§·Î ÁöÁ¤¿¡ µû¶ó¼­ Ascii ¹®ÀÚ°ª¼øÀ¸·Î ¶Ç´Â ¼ýÀÚ°ª¼øÀ¸·Î Á¤·ÄÇÑ´Ù. ¸¸¾à sort ¸í·É¾î ÁöÁ¤½Ã Çϳª ÀÌ»óÀÇ È­ÀÏÀ» ÁöÁ¤ÇßÀ» °æ¿ì¿¡´Â sort ¸í·É¾î´Â ±× È­ÀϵéÀ» ÇÔ²² º´ÇÕÇÏ¿© ÇϳªÀÇ È­ÀÏ·Î ¸¸µé¾î Á¤·ÄÇÏ°Ô µÈ´Ù. sort ¸í·É¾î »ç¿ë½Ã °¢ ¶óÀÎ»ó¿¡ Á¸ÀçÇÏ°í ÀÖ´Â ÇʵåµéÀ» ±âÁØÀ¸·Î Çؼ­µµ Á¤·ÄÀ» ÇÒ ¼ö ÀÖ´Ù. ÀÌ¿Í °°ÀÌ ¶óÀÎ ´ÜÀ§ÀÇ Á¤·ÄÀÌ ¾Æ´Ñ ¶óÀγ»ÀÇ ÇÊµå ´ÜÀ§ÀÇ Á¤·ÄÀ» ¼öÇàÇϱâ À§Çؼ­´Â ´ÙÀ½°ú °°Àº Çü½ÄÀ¸·Î sort ¸í·É¾î¸¦ »ç¿ëÇÑ´Ù. sort [+pos1] [-pos2] [files] À̶§ ¶óÀγ»ÀÇ °¢°¢ÀÇ ÇʵåµéÀ» ±¸º°Çϱâ À§ÇÑ ½Äº°Àڷδ µðÆúÆ®·Î °ø¹é°ú ÅÇÀÌ »ç¿ëµÈ´Ù. ¶óÀÎÀÇ Ã³À½ºÎÅÍ ½ÃÀÛÇÏ¿© ù¹ø° ÇÊµå ±¸º°ÀÚ¸¦ ¸¸³¯¶§±îÁö¸¦ ÇϳªÀÇ Çʵå·Î ÀνÄÇÏ°í, ±× ÀÌÈÄ¿¡ ±¸º°ÀÚ¸¦ ¸¸³¯¶§±îÁö¸¦ ¶ÇÇϳªÀÇ Çʵå·Î ÀνÄÇÏ¿© ó¸®ÇÑ´Ù. À̶§ »ç¿ëµÇ´Â ÇÊµå ±¸º°ÀÚ´Â »ç¿ëÀÚ°¡ sort ¸í·É¾îÀÇ -t ¿É¼ÇÀ» »ç¿ëÇÏ¿© º¯°æÇÒ ¼ö ÀÖ´Ù. sort ¸í·É¾î»ó¿¡ ÇÊµå ¶Ç´Â Ä®·³À» ÁöÁ¤ÇÒ °æ¿ì¿¡ ÁÖÀÇÇÒ °ÍÀÌ ÀÖ´Ù. Åë»ó ÇÊµå ¶Ç´Â Ä®·³¿¡ ´ëÇÑ ½Äº°½Ã¿¡ ù¹ø° °ÍÀ» 1¹ø Çʵå/Ä®·³À̶ó°í °è»êÇÏÁö¸¸, sort ¸í·É¾î¿¡¼­´Â ù¹ø° Çʵå¹× Ä®·³À» 0¹ø Çʵå/Ä®·³À̶ó°í °è»êÇÑ´Ù´Â °ÍÀÌ´Ù. ÀÌÈÄÀÇ Çʵå¹× Ä®·³µµ À̸¦ ±âÁØÀ¸·Î °è»êµÈ´Ù´Â °ÍÀ» ¸í½ÉÇϱ⠹ٶõ´Ù. À§ÀÇ ¸í·É¾î Çü½Ä¿¡¼­ +pos1Àº ¶óÀγ»ÀÇ ´ë»óÀ¸·ÎÇÏ´Â ½ÃÀÛ Çʵ带 ³ªÅ¸³»¸ç, -pos2´Â ´ë»ó ÇʵåÀÇ ³¡À» ³ªÅ¸³½´Ù. ¿¹¸¦µé¾î +1 -3À̶ó°í ÁöÁ¤ÇÏ°Ô µÇ¸é, +1 Áï µÎ¹ø° ÇʵåºÎÅÍ -3 Áï ³×¹ø° Çʵå Á÷Àü±îÁö¸¦ sortÀÇ ´ë»óÀ¸·Î ÇÑ´Ù. °ð µÎ¹ø° Çʵå¿Í ¼¼¹ø° Çʵå, µÎ°³ÀÇ Çʵ带 ´ë»óÀ¸·Î Á¤·ÄÇÑ´Ù. ´ÙÀ½Àº Çʵ带 ´ë»óÀ¸·Î ÀÛ¾÷ÇÏ´Â sort ¸í·É¾îÀÇ ¿¹Á¦µéÀÌ´Ù. ¿ì¼± ¿¹¸¦ µé±âÀ§ÇØ ´ÙÀ½°ú °°Àº È­ÀÏÀ» °¡Á¤ÇÑ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢file1 ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢-rwxrwx-wx 1 root roow 627 Jan 15 21:10 file4 ¦¢ ¦¢-rwxrw-r-x 1 wmot rodt 627 Jun 15 20:57 file7 ¦¢ ¦¢-rwxr-xrw- 1 mopt root 168 Jan 15 18:58 file8 ¦¢ ¦¢-rwxr---w- 1 root root 7 Jan 15 18:58 file6 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ # ÀÌ ¿¹´Â ÀϹÝÀûÀÎ sort ¸í·É¾îÀÇ ½ÇÇà °á°ú¸¦ º¸¿©ÁØ´Ù. # sort ¸í·É¾î¿¡ ƯÁ¤ Çʵ忡 ´ëÇÑ ÁöÁ¤ÀÌ ¾øÀ» °æ¿ì¿¡´Â °¢°¢ÀÇ ¶óÀγ»¿¡ # µé¾îÀÖ´Â ¸ðµç ¹®ÀÚµéÀ» ±âÁØÀ¸·Î Á¤·ÄÇÑ´Ù. $sort file1 > file2 ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢file2 ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢-rwxr---w- 1 root root 7 Jan 15 18:58 file6 ¦¢ ¦¢-rwxr-xrw- 1 mopt root 168 Jan 15 18:58 file8 ¦¢ ¦¢-rwxrw-r-x 1 wmot rodt 627 Jun 15 20:57 file7 ¦¢ ¦¢-rwxrwx-wx 1 root roow 627 Jan 15 21:10 file4 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ # ÀÌ ¿¹´Â +2¿¡¼­ -4 Çʵå ÁöÁ¤¿¡ ÀÇÇØ 3¹ø°¿Í 4¹ø° Çʵ带 ´ë»óÀ¸·Î # Á¤·ÄÀ» ¼öÇàÇÑ´Ù. $sort +2 -4 file1 -rwxr-xrw- 1 mopt root 168 Jan 15 18:58 file8 -rwxr---w- 1 root root 7 Jan 15 18:58 file6 -rwxrwx-wx 1 root roow 627 Jan 15 21:10 file4 -rwxrw-r-x 1 wmot rodt 627 Jun 15 20:57 file7 sort ¸í·É¾î »ç¿ë½Ã ÀÛ¾÷ÀÇ Á¦¾î¸¦ À§Çؼ­ ¿É¼ÇÀ» ÇÔ²² ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù. ¿É¼ÇÀº ´ÙÀ½°ú °°ÀÌ µÎ°¡Áö Çü½ÄÀ¸·Î ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù. 1) ¸í·É¾î ¶óÀÎ»ó¿¡ ÁöÁ¤µÈ Àüü ´ë»ó(¶óÀÎ ¶Ç´Â Çʵå·Î ÁöÁ¤µÈ)¿¡ ´ëÇØ ¿É¼ÇÀ» Àû¿ëÇÏ´Â °æ¿ì ( ¿¹ ) $sort -r file1 $sort -r +1 -2 +3 -4 file1 2) ¸í·É¾î ¶óÀÎ»ó¿¡ ÁöÁ¤µÈ ƯÁ¤ Çʵ常À» ´ë»óÀ¸·Î ¿É¼ÇÀ» ÁöÁ¤ÇÏ°íÀÚ ÇÏ´Â °æ¿ì(Çʵå ÁöÁ¤ÀÚ¿¡ ¿¬ÀÌ¾î ¿É¼ÇÀ» ±â¼úÇÑ´Ù.) ( ¿¹ ) $sort +1n -2 file1 $sort +1n -2 +3r -4 file1 ´ÙÀ½Àº sort ¸í·É¾î¿¡¼­ »ç¿ë °¡´ÉÇÑ ¿É¼ÇµéÀÌ´Ù. ¦£¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ ¿É¼Ç ¦¢ ÀÇ ¹Ì ¦¢ ¦§¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ -n ¦¢Ascii ÄÚµå¼øÀ¸·Î Á¤·ÄÇÏÁö ¾Ê°í, ¼ýÀÚ°ªÀ» ±âÁØÀ¸·Î Á¤·ÄÇÑ´Ù. ¦¢ ¦§¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ -f ¦¢´ë¹®ÀÚ¿Í ¼Ò¹®ÀÚ¸¦ ±¸º°ÇÏÁö ¾Ê´Â´Ù. ¦¢ ¦§¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ -b ¦¢Çʵåµé ¾Õ¿¡ ÀÖ´Â °ø¹éµéÀ» ¹«½ÃÇÑ´Ù. (¹Ýµå½Ã ´ë»óÇʵ带 ÁöÁ¤)¦¢ ¦§¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢+pos ¦¢Á¤·Ä ´ë»óÀ¸·Î ÇÒ ½ÃÀÛ Çʵ带 ÁöÁ¤ ¦¢ ¦§¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢-pos ¦¢Á¤·Ä ´ë»óÀ¸·Î ÇÒ ÇʵåÀÇ ³¡À» ÁöÁ¤ ¦¢ ¦§¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ -tc ¦¢ÇÊµå ±¸º°ÀÚ¸¦ c ·Î º¯°æÇÑ´Ù. ¦¢ ¦§¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ -r ¦¢³»¸²Â÷¼øÀ¸·Î Á¤·ÄÇÑ´Ù. ¦¢ ¦§¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ -d ¦¢sort½Ã¿¡ »çÀü(Dictionary)¼øÀ¸·Î Á¤·ÄÇÑ´Ù. ¦¢ ¦¦¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ # ´ÙÀ½ÀÇ ¿¹´Â n ¿É¼ÇÀ» »ç¿ëÇÏ¿© ¼ýÀÚ°ªÀ» ±âÁØÀ¸·Î Á¤·ÄµÇµµ·Ï ÁöÁ¤ÇÏ°í # ÀÖÀ¸¸ç, ¶ÇÇÑ r ¿É¼ÇÀ» »ç¿ëÇÏ¿© ³»¸²Â÷¼øÀ¸·Î Á¤·ÄÇϵµ·Ï ÁöÁ¤ÇÏ°í ÀÖ´Ù. # ÀÌ¿Í°°ÀÌ µÎ°³ÀÇ Çʵ带 ´ë»óÀ¸·Î Á¤·ÄÇÏ´Â °æ¿ì, ¿ì¼± ù¹ø° ÁöÁ¤µÈ # Çʵ带 ±âÁØÀ¸·Î Á¤·ÄÇÑÈÄ, µ¿ÀÏÇÑ °ªÀÌ ³ª¿Ã°æ¿ì µÎ¹ø° ÁöÁ¤µÈ Çʵ带 # ±âÁØÀ¸·Î Á¤·ÄÇÏ°Ô µÈ´Ù. $sort +4n -5 +5r -7 file1 -rwxr---w- 1 root root 7 Jan 15 18:58 file6 -rwxr-xrw- 1 mopt root 168 Jan 15 18:58 file8 -rwxrw-r-x 1 wmot rodt 627 Jun 15 20:57 file7 -rwxrwx-wx 1 root roow 627 Jan 15 21:10 file4 # À̹ø ¿¹´Â ÁÖ¸ñÇØ¾ß ÇÑ´Ù. # ÀÌ ¿¹´Â Çʵ峻ÀÇ ÀÓÀÇÀÇ Ä®·³µé¸¸À» ´ë»óÀ¸·Î Á¤·Ä ¹üÀ§¸¦ ÇÑÁ¤ÇÏ´Â # ¹æ¹ýÀ» º¸¿©ÁÖ°í ÀÖ´Ù. Çʵå ÁöÁ¤½Ã +0.7 -0.8À̶ó°í ÁöÁ¤Çϸé # ù¹ø° ÇʵåÀÇ 8 Ä®·³¸¸À» ´ë»óÀ¸·Î ÇÏ¿© Á¤·ÄÀ» ¼öÇàÇÑ´Ù. $sort +0.7 -0.8 file1 -o file1 $cat file1 -rwxrwx-wx 1 root roow 627 Jan 15 21:10file4 -rwxr---w- 1 root root 7 Jan 15 18:58 file6 -rwxrw-r-x 1 wmot rodt 627 Jun 15 20:57 file7 -rwxr-xrw- 1 mopt root 168 Jan 15 18:58 file8 ( ÁÖÀÇ ) ÆÄÀÌÇÁ ¶óÀÎ(Pipe Line)»ó¿¡ ÁöÁ¤ÇÏ´Â ÇÊÅ͸¦ ÀÌ¿ëÇÏ´Â ¸í·É¾îµéÀ» ³ª¿­ÇÒ °æ¿ì¿¡´Â ·¹Äڵ带 Á¦°ÅÇÏ´Â ¸í·É¾î´Â ´Ù¸¥ ¸í·É¾îÀÇ ¾Õ¿¡ ¹èÄ¡ÇÏ´Â °ÍÀÌ È¿À²ÀûÀÌ´Ù. ¿¹¸¦µé¸é who | sort | grep stu ÀÇ ÁöÁ¤ÇÏÁö ¾Ê°í, who | grep stu | sort Çü½ÄÀ¸·ÎÁöÁ¤ÇÑ´Ù. 2. tr ¸í·É¾î tr ¸í·É¾î´Â Ç¥ÁØÀÔ·ÂÀ¸·Î ¹Þ¾ÆµéÀÎ ¹®ÀÚµéÀ» ÁöÁ¤ÇÑ ¹®ÀÚµé·Î º¯ÇüÇÏ¿© Ç¥ÁØÃâ·ÂÀ¸·Î º¸³»±â À§ÇØ »ç¿ëµÇ´Â ÇÊÅ͸¦ ÀÌ¿ëÇÏ´Â ¸í·É¾îÀÌ´Ù. tr ¸í·É¾îÀÇ »ç¿ë Çü½ÄÀº ´ÙÀ½°ú °°´Ù. tr [charset1 [charset2]] tr ¸í·É¾îÀÇ Çü½Ä¿¡¼­ È­ÀÏÀ» ÁöÁ¤ÇÏ´Â ºÎºÐÀÌ ¾øÀ½À» ÁÖ¸ñÇØ¾ß ÇÑ´Ù. µû¶ó¼­ tr ¸í·É¾î¸¦ ¼öÇàÇÒ¶§ ƯÁ¤ È­ÀÏÀÇ ³»¿ëÀ» Àü´ÞÇϱâ À§Çؼ­´Â ¹Ýµå½Ã ÀÔ·Â ¹æÇâÀüȯ(<) ¹æ½ÄÀ» ÀÌ¿ëÇØ¾ß ÇÑ´Ù. Á¤±Ô Ç¥Çö½ÄÀ» ÀÌ¿ëÇØ Æ¯Á¤ ¹®ÀÚµéÀÇ ¹üÀ§³ª ÀÏ·ÃÀÇ ¹®ÀÚ¿­À» 1:1 ·Î¼­ ¹®ÀÚ ´ëĪÀ» ¼öÇàÇϵµ·Ï ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù. ±×¸®°í tr ¸í·É¾î¿¡ ÁöÁ¤ÇÑ charset2°¡ charset1 º¸´Ù ªÀº °æ¿ì¿¡´Â charset2 ³»ÀÇ ¸¶Áö¸· ¹®ÀÚ°¡ Â÷ÀÌ°¡ ³ª´Â ÀÚ¸´¼ö¸¸Å­ ¹Ýº¹µÇ¾î ä¿öÁø´Ù. ´ÙÀ½Àº tr ¸í·É¾îÀÇ »ç¿ë¿¹¸¦ º¸¿©ÁÖ´Â ¿¹ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢fileA ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢Jim A. Total hours 80 ¦¢ ¦¢Steve P. Total hours 78 ¦¢ ¦¢Andy A. Total hours 80 ¦¢ ¦¢Ralph C. Total hours 40 ¦¢ ¦¢Jim A. Total hours 80 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ # ÀÌ ¿¹´Â FileA¶ó´Â È­ÀÏÀÇ ³»¿ëÁß 8 À̶ó´Â ¹®ÀÚ¸¦ 2·Î º¯È¯Çϵµ·Ï # ÁöÁ¤ÇÑ ¿¹ÀÌ´Ù. $tr 8 2 < fileA Jim A. Total hours 20 Steve P. Total hours 72 Andy A. Total hours 20 Ralph C. Total hours 40 Jim A. Total hours 20 # ÀÌ ¿¹´Â Á¤±Ô Ç¥Çö½ÄÀ» ÀÌ¿ëÇØ ¼Ò¹®ÀÚ¸¦ ´ë¹®ÀÚ·Î º¯È¯Çϴ¿¹¸¦ # º¸¿©ÁÖ°í ÀÖ´Ù. $tr [a-z] [A-Z] < fileA JIM A. TOTAL HOURS 80 STEVE P. TOTAL HOURS 78 ANDY A. TOTAL HOURS 80 RALPH C. TOTAL HOURS 40 JIM A. TOTAL HOURS 80 ------------------------------------------------------------------------ ´ÙÀ½ °­ÀÇ¿¡¼­´Â Filter¸¦ ÀÌ¿ëÇÏ´Â cut°ú paste ¸í·É¾î¿¡ ´ëÇؼ­ ¼³¸íÇÕ´Ï´Ù. ------------------------------------------------------------------------ #102 À¯´Ï½Ã½º (adunis2 ) Filter,Regular Expressions: cut,paste 04/15 18:01 169 line Filter¿Í Regular Expression: cut, paste ------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. ------------------------------------------------------------------- 1. cut ¸í·É¾î : Ä®·³ ´ÜÀ§ÀÇ ÃßÃâÀ» ¼öÇàÇÏ´Â ÇÊÅÍ cut ¸í·É¾î´Â µ¥ÀÌŸ È­ÀÏ ¶Ç´Â ¸í·É¾îÀÇ Ãâ·ÂÀ¸·Î ºÎÅÍÀÇ ¸î°³ÀÇ Çʵ带 ÃßÃâÇÏ¿©, »õ·Î¿î Ãâ·ÂÀ» »ý¼ºÇÏ°íÀÚ ÇÒ¶§ À¯¿ëÇÏ°Ô ¾µ¼ö ÀÖ´Â ¸í·É¾îÀÌ´Ù. cut ¸í·É¾îÀÇ »ç¿ë Çü½ÄÀº ´ÙÀ½°ú °°´Ù. cut -clist [ file1 file2 ... ] ´ÙÀ½Àº cut ¸í·É¾îÀÇ ¿É¼ÇÀ» º¸¿©ÁØ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦½¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢-c ¿É¼Ç Çü½Ä ¦­cut ¸í·É¾î°¡ ÃßÃâÇÏ´Â ³»¿ë ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢-ci ¦­i ¹ø° ¹®ÀÚ¸¦ ÃßÃâ ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢-ci,j,k ¦­i, j, k ¹ø° ¹®ÀÚµéÀ» ÃßÃâ ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢-ci-j ¦­i ¹ø° ºÎÅÍ j ¹ø° ¹®ÀÚµéÀ» ÃßÃâ ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢-ci- ¦­i ¹ø° ¹®ÀÚºÎÅÍ ¶óÀÎÀÇ ³¡±îÁö¸¦ ÃßÃ⦢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¿¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ cut ¸í·É¾î¿¡¼­´Â À§¿Í°°Àº -c ¿É¼ÇÀ» ÅëÇØ È­Àϳ»ÀÇ °¢ ¶óÀο¡¼­ ÃßÃâÇÒ ¹®ÀÚµéÀÇ À§Ä¡¸¦ ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù. ¾Æ¿ï·¯ -c ¿É¼ÇÀÇ ÁöÁ¤ Çü½Ä ¸î°¡Áö¸¦ ÇÔ²² ÁöÁ¤ÇÔÀ¸·Î½á º¸´Ù ¸¹Àº ÃßÃâ ´ë»óÀ» ÁöÁ¤ÇÒ ¼öµµ ÀÖ´Ù. ¿¹¸¦µé¸é cut "-c1-5,19-"°ú °°ÀÌ ÁöÁ¤ÇÏ´Â °æ¿ìÀÌ´Ù. cut ¸í·É¾îÀÇ -c ¿É¼ÇÀº ÀÏÁ¤ÇÑ Çü½ÄÀ» °®°íÀÖ´Â È­ÀÏ¹× ¸í·É¾îÀÇ Ãâ·Â¿¡ ´ëÇØ È¿°úÀûÀ¸·Î »ç¿ëµÉ ¼ö ÀÖ´Ù. ¿©±â¼­ ÀÏÁ¤ÇÑ Çü½ÄÀ̶ó´Â °ÍÀº ¿¹¸¦µé¸éÀº who ¸í·É¾î´Â ¸í·É ½ÇÇàÈÄ Ç¥½ÃµÇ´Â Ãâ·ÂÀÌ 1-8 Ä®·³±îÁö´Â »ç¿ëÀÚ¸í, 10-16 Ä®·³Àº Å͹̳Î, 18-29 Ä®·³Àº ·Î±×ÀÎ ³¯Â¥¹× ½Ã°£À¸·Î °¢°¢ÀÇ ¶óÀÎÀÌ ±¸¼ºµÇ´Âµ¥, ÀÌ¿Í°°ÀÌ È­Àϳ»ÀÇ µ¥ÀÌŸ³ª ¸í·É¾îÀÇ Ãâ·Â»óÀÇ °¢¶óÀÎÀÌ ÀÏÁ¤ÇÑ Çü½ÄÀ» °®°í ÀÖ´Â °æ¿ì¸¦ ¸»ÇÑ´Ù. ¸¸ÀÏ °¢ ¶óÀγ»ÀÇ ±¸¼ºÀÌ ÀÏÁ¤ÇÏÁö ¾ÊÀº Çü½ÄÀ» °®°í ÀÖÀ» °æ¿ì¿¡´Â cut ¸í·É¾î¸¦ »ç¿ëÇÔ¿¡ ÀÖ¾î ÁÖÀÇÇØ¾ß ÇÑ´Ù. ( ÁÖÀÇ ) sort ¸í·É¾î¿¡¼­´Â Ä®·³À» °è»êÇÒ ¶§ ù¹ø° Ä®·³À» 0 Ä®·³À̶ó °è»êÇßÁö¸¸, cut ¸í·É¾î¿¡¼­´Â ù¹ø° Ä®·³À» 1 Ä®·³À¸·Î °è»êÇÔÀ» ÁÖÀÇÇÑ´Ù. ´ÙÀ½Àº cut ¸í·É¾îÀÇ »ç¿ëÇü½ÄÀ» º¸¿©ÁÖ°í ÀÖ´Ù. ¿ì¼± ¿¹¸¦µé±â À§ÇØ ÀϹÝÀûÀÎ who ¸í·É¾îÀÇ Ãâ·ÂÀ» º¸¿©ÁÖ°í ÀÖ´Ù. $who root term/01 Apr 12 08:00 user1 term/00 Apr 12 09:01 user2 term/02 Apr 12 09:13 user3 term/03 Apr 12 09:15 # who ¸í·É¾îÀÇ Ãâ·ÂÀ» cut ¸í·É¾îÀÇ ÀÔ·ÂÀ¸·Î ¹æÇâÀüȯÇÏ¿© Ãâ·ÂÁß # 1-5 Ä®·³±îÁö¸¸À» º°µµ·Î ÃßÃâÇÏ¿© Ãâ·ÂÇϵµ·Ï ÁöÁ¤ÇÑ ¿¹ÀÌ´Ù. $who | cut -c1-5 root user1 user2 user3 # ÀÌ ¿¹´Â ÃßÃâ ´ë»óÀ» Çϳª°¡ ¾Æ´Ñ µÎ ºÎºÐÀ» ÁöÁ¤ÇÑ ¿¹ÀÌ´Ù. $who | cut -c1-5,19- root Apr 12 08:00 user1 Apr 12 09:01 user2 Apr 12 09:13 user3 Apr 12 09:15 Áö±Ý±îÁö´Â cut ¸í·É¾î¸¦ »ç¿ëÇÏ¿© °¢ ¶óÀγ»ÀÇ Æ¯Á¤ÇÑ Ä®·³³»ÀÇ ¹®ÀÚµéÀ» ÃßÃâÇÏ´Â ¹æ¹ýÀ» ±âÁØÀ¸·Î ¼³¸íÇߴµ¥, cut ¸í·É¾î¿¡¼­´Â °¢ Å©±â°¡ ÀÏÁ¤ÇÏÁö ¾Ê´Â °æ¿ì »ç¿ëÇÒ ¼ö ÀÖ´Â Çʵ带 ±âÁØÀ¸·ÎÇÑ ÃßÃâ¹æ½Äµµ Á¦°øÇϴµ¥ ±×Çü½ÄÀ» °è¼ÓÇÏ¿© ¼³¸íÇÑ´Ù. 2. cut ¸í·É¾î : ÇÊµå ´ÜÀ§ÀÇ ÃßÃâ cut ¸í·É¾î´Â È­Àϳ»¿¡ÀúÀåµÇ¾î ÀÖ´Â ³»¿ëÁß Æ¯Á¤ Çʵ带 ´ë»óÀ¸·Î ÇÏ¿© ÃßÃâÀÛ¾÷À» ¼öÇàÇϵµ·Ï ÇØÁÖ´Â ¸í·Á¾îÀÌ´Ù. ¿¹¸¦µé¾î »ç¿ëÀÚ µî·ÏºÎ·Î »ç¿ëµÇ´Â /etc/passwd È­ÀÏÀ» º¸¸é, ÀÌ È­Àϳ»ÀÇ °¢ ¶óÀÎÀº µ¿ÀÏÇÑ Çü½ÄÀÇ Çʵåµé·Î ±¸¼ºµÈ´Ù. ±×·¯³ª °¢ ÇʵåµéÀÇ Å©±â´Â ÀÏÁ¤ÇÏÁö ¾Ê±â ¶§¹®¿¡ Ä®·³ ´ÜÀ§ÀÇ ÃßÃâÀº ¼öÇàÇϱ⠰ï¶õÇÏ´Ù. ÀÌ °æ¿ì¿¡ ÇÊµå ´ÜÀ§ÀÇ ÃßÃâÀ» ¼öÇàÇÏ¸é ¿ëÀÌÇÒ °ÍÀÌ´Ù. ´ÙÀ½Àº cut ¸í·É¾î¸¦ »ç¿ëÇÔ¿¡ ÀÖ¾î ÇÊµå ´ÜÀ§ÀÇ Ã³¸®¸¦ ¼öÇàÇϵµ·Ï ÁöÁ¤ÇÏ´Â Çü½ÄÀÌ´Ù. cut -flist [-dchar] [file1 file2 ...] À§ÀÇ Çü½Ä¿¡¼­ -flist´Â ÃßÃâ ´ë»óÀÌ µÇ´Â ÇÊµå ¹øÈ£µéÀ» ÁöÁ¤Çϱâ À§ÇÑ ¿É¼ÇÀ̸ç, -dchar´Â °¢°¢ÀÇ ÇʵåµéÀ» ±¸º°Çϱâ À§ÇØ »ç¿ëÇÒ ÇÊµå ±¸º°ÀÚ¸¦ ÁöÁ¤Çϱâ À§ÇÑ ¿É¼ÇÀÌ´Ù. ´ÙÀ½Àº /etc/passwd È­ÀÏÀ» ÀÌ¿ëÇÏ¿© ÇÊµå ´ÜÀ§ÀÇ ÃßÃâ ¹æ½ÄÀ» º¸¿©ÁÖ´Â ¿¹ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢/etc/passwd ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢root:RHUv4kvimw:0:0:Super User:/:/bin/ksh ¦¢ ¦¢cron:NONE:1:1:Timer Daemon:/: ¦¢ ¦¢user1::100:101:555 1212:/usr/user1:/bin/sh ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ # ÀÌ ¿¹¿¡¼­´Â ÇÊµå ±¸º°ÀÚ·Î :À», ÃßÃâ ´ë»ó Çʵ带 1¹ø°ú 6¹ø Çʵå·Î # ¼±¾ðÇÏ¿© cut ¸í·É¾î¸¦ ¼öÇàÇÏ´Â °ÍÀ» º¸¿©ÁÖ´Â ¿¹ÀÌ´Ù. $cut -d: -f1,6 /etc/passwd root:/ cron:/ user1:/user/user1 3. paste ¸í·É¾î cut ¸í·É¾î´Â ¶óÀγ»ÀÇ Æ¯Á¤ ºÎºÐÀ» À߶󳻴 ¹Ý¸é¿¡, paste ¸í·É¾î´Â ƯÁ¤ ºÎºÐÀ» ¶óÀγ»¿¡ »ðÀÔÇÑ´Ù´Â Ãø¸é¿¡¼­ cut ¸í·É¾îÀǹݴëÀÇ ÀÛ¾÷À» ¼öÇàÇÑ´Ù. paste ¸í·É¾îÀÇ Çü½ÄÀº ´ÙÀ½°ú °°ÀÌ ´Ù¾çÇÑ Çü½ÄÀ¸·Î ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù. paste file1 file2 ... paste -d list file1 file2 ... paste -s [-d list] file1 file2 ... ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢names ¦¢ ¦¢ cities ¦¢ ¦¢numbers ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢user1 ¦¢ ¦¢ Atlanta ¦¢ ¦¢(404)555-5356 ¦¢ ¦¢user2 ¦¢ ¦¢ New York ¦¢ ¦¢(212)555-3456 ¦¢ ¦¢user3 ¦¢ ¦¢ Los Angeles ¦¢ ¦¢(213)555-1234 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ # ÀÌ ¿¹´Â µÎ È­ÀÏÀÇ ³»¿ëÀ» È­Àϳ»ÀÇ ±â¼úµÇ¾î ÀÖ´Â ¼ø¼­¿¡ µû¶ó¼­ ¶óÀκ°·Î # ȾÀûÀ¸·Î º´ÇÕÇÏ´Â ¿¹¸¦ º¸¿©ÁØ´Ù. À̶§ °¢°¢ÀÇ È­ÀϷκÎÅÍ ¹ßÃéµÈ ³»¿ëµé # °£¿¡´Â ÅÇ ¹®ÀÚ »ç¿ëµÇ¾î ±¸º°µÈ´Ù. $paste names numbers user1 (404)555-5356 user2 (212)555-3456 user3 (213)555-1234 # ÀÌ ¿¹´Â ¼¼°³ÀÇ È­ÀÏÀ» ȾÀûÀ¸·Î º´ÇÕÇÑ´Ù. º´Çսà °¢ È­ÀÏ·Î ºÎÅÍ ÃßÃâµÈ # ³»¿ëÀÇ ±¸º°ÀÚ·Î ÅÇÀÌ ¾Æ´Ñ = ¹®ÀÚ¿Í + ¹®ÀÚ¸¦ »ç¿ëÇϱâ À§ÇØ -d ¿É¼ÇÀ» # »ç¿ëÇÏ°í ÀÖ´Ù. ±×·±µ¥ -d ¿É¼Ç¿¡ ÁöÁ¤µÈ ¹®ÀÚ¼öº¸´Ù ¸¹Àº È­ÀϵéÀÌ # ¸í·É¾î ¶óÀÎ»ó¿¡ ÁöÁ¤µÇ¾î ÀÖÀ» °æ¿ì¿¡, paste ¸í·É¾î´Â ÁöÁ¤µÈ ¹®ÀÚµéÀ» # Àç»ç¿ëÇÑ´Ù. $paste -d'=+' names cities numbers user1=Atlanta+(404)555-5356 user2=New York+(212)555-3456 user3=Los Angeles+(213)555-1234 # ÀÌ ¿¹´Â -s ¿É¼ÇÀ» »ç¿ëÇÏ¿© Á¾¹æÇâÀ¸·Î ÀúÀåµÇ¾î ÀÖ´ø µ¥ÀÌŸ¸¦ # Ⱦ¹æÇâÀ¸·Î º¯È¯ÇÏ¿© Ãâ·ÂÇϵµ·Ï ÇÏ´Â ¿¹¸¦ º¸¿©ÁØ´Ù. # À̶§ °¢°¢ÀÇ ¶óÀÎÀ¸·ÎºÎÅÍ ¿Â ³»¿ëµéÀ» ±¸º°Çϱâ À§ÇØ ÅÇÀÌ »ç¿ëµÇ¾î # Áö´Âµ¥, À̸¦ Á¦¾îÇϱâ À§Çؼ­ ÀÌ¹Ì ¼³¸íÇÑ -d ¿É¼ÇÀ» ÇÔ²² # »ç¿ëÇÒ ¼ö ÀÖ´Ù. $paste -s names user1 user2 user3 ------------------------------------------------------------------------ ´ÙÀ½ °­ÀÇ¿¡¼­´Â Filter ¿ªÇÒÀ» ¼öÇàÇÏ´Â sed ¸í·É¾î¿¡ ´ëÇؼ­ ¼³¸íÇÕ´Ï´Ù. ------------------------------------------------------------------------ #103 À¯´Ï½Ã½º (adunis2 ) Filter,Regular Expressions: sed 04/16 19:11 174 line Filter¿Í Regular Expression: sed ------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. ------------------------------------------------------------------- 1. sed ¸í·É¾î : ½© ÇÁ·Î±×·¥¿¡¼­ »ç¿ëÇÏ´Â ÆíÁý±â sed ¸í·É¾î´Â µ¥ÀÌŸ¸¦ ÆíÁýÇϱâ À§ÇØ ed ÆíÁý±â¿Í À¯»çÇÑ Çü½ÄÀÇ ºñ´ëÈ­½Ä(Non-interactive) ÆíÁý±â ÇÁ·Î±×·¥ÀÌ´Ù. ( ºñ´ëÈ­½Ä ÆíÁý±â´Â ´Ù¸¥ ÆíÁý±â¿Í´Â ´Þ¸® ÆíÁý±â¸¦ ÅëÇØ ¼öÇàÇÒ ÀÛ¾÷ ÀýÂ÷¸¦ »ç¿ëÀÚ°¡ »çÀü¿¡ ¼±¾ðÇصΰí, ±× ÀýÂ÷¿¡ µû¶ó¼­ ÆíÁý ÀÛ¾÷À» ½Ã½ºÅÛÀÌ »ç¿ëÀÚÀÇ Á¦¾î¸¦ ¹ÞÁö¾Ê°í ÁøÇàÇÏ´Â Çü½ÄÀ¸·Î ¼öÇàÇÏ´Â ÆíÁý±âÀÌ´Ù. ) ÀÌ sed ÆíÁý±â´Â ÁöÁ¤ÇÑ È­ÀÏÀ» Ç¥ÁØÃâ·Â(Standard Output)¿¡ º¹»çÇÏ°í, ÆíÁý ¸í·É¾î¿¡ µû¶ó¼­ ±×µéÀ» ÆíÁýÇÑ´Ù. sed ÆíÁý±âÀÇ ÆíÁý ¸í·É¾îµéÀº ½ºÅ©¸³Æ®(Script) ¶Ç´Â È­ÀÏ¿¡ ÀúÀåÇØ µÎ¾ú´Ù°¡, ½ÇÇà½Ã -e scriptname ¶Ç´Â -f filename Çü½ÄÀ¸·Î sed ¸í·É¾î¿¡ Àü´ÞÇÒ ¼ö ÀÖ´Ù. sed ¸í·É¾îÀÇ ±âº» Çü½ÄÀº ´ÙÀ½°ú °°´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ sed command file ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ À§ Çü½Ä¿¡¼­ commandÀÇ ÁöÁ¤ Çü½ÄÀº ´ÙÀ½°ú °°´Ù. [address]cmd ¿©±â¿¡¼­ address´Â ed ¸í·É¾î¿Í µ¿ÀÏÇÑ Çü½ÄÀ¸·Î ÁöÁ¤ °¡´ÉÇϸç, ´ÜÀÏ ¶óÀιøÈ£ ¶Ç´Â Á¤¹æÇâÀÇ ¶óÀÎ ¹üÀ§¸¦ ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù. ±×¸®°í ÁöÁ¤ÇÑ ÆíÁý ¸í·É¾î´Â ÀÔ·Â È­Àϳ»ÀÇ ¶óÀο¡ ´ëÇؼ­¸¸ ÀÛ¾÷À» ¼öÇàÇÒ»Ó, sed ¸í·É¾î»ó¿¡ ¼±¾îµÈ »õ·Î¿î ¶óÀε鿡 ´ëÇؼ­´Â ¾Æ¹«·± ¿µÇâÀ» ¹ÌÄ¡Áö ¾Ê´Â´Ù. ´ÙÀ½Àº sed ¸í·É¾î¿¡¼­ »ç¿ë °¡´ÉÇÑ ¿É¼ÇµéÀ» ÁöÁ¤ÇÏ´Â Çü½ÄÀ» º¸¿©ÁØ´Ù. sed [-n] [-e 'script] [-f file] [files] ¸¸ÀÏ ¸í·É¾î¿¡ ¶óÀιøÈ£°¡ ÁöÁ¤µÇÁö ¾Ê¾Ò´Ù¸é, sed ¸í·É¾î´Â È­Àϳ»ÀÇ ¸ðµç ¶óÀο¡ ´ëÇØ ÆíÁý ¸í·É¾î¸¦ ¼öÇàÇÑ´Ù. ¸í·É¾î ½ÇÇàÈÄ Ãâ·ÂÀº ½ºÅ©¸°»ó¿¡ º¸³»Áø´Ù. ±×·¯³ª º»·¡ÀÇ È­ÀÏÀÇ ³»¿ëÀº º¯°æµÇÁö ¾Ê°í ±×´ë·Î À¯ÁöµÈ´Ù. ´ÙÀ½Àº sed ¸í·É¾î¿¡ ÁöÁ¤ °¡´ÉÇÑ ÆíÁý ¸í·ÉµéÀ» Á¤¸®ÇÑ °ÍÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢¸í·É¾î ¦¢ ÆíÁý ³»¿ë ¦¢ ¿¹ Á¦ ¦¢ ¦¼¦¬¦¬¦¬¦¬¦»¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦»¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¾ ¦¢ nd ¦¢ n ¶óÀÎÀ» Áö¿î´Ù. ¦¢5d ¦¢ ¦§¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ na\ ¦¢ n ¶óÀÎ Á÷ÈÄ¿¡ ¿¬À̾î ÁöÁ¤µÇ¾î ÀÖ´Â ¦¢3a\ ¦¢ ¦¢ ¦¢ ¶óÀεéÀ» Ãß°¡ÇÑ´Ù. À̶§ Ãß°¡ÇÒ ¶óÀÎÀǦ¢this will be line 4.\ ¦¢ ¦¢ ¦¢ ³¡¿¡´Â \¹®ÀÚ¸¦ ±â¼úÇØ¾ß ÇÑ´Ù. ±×·¯³ª ¦¢this will be line 5.\ ¦¢ ¦¢ ¦¢ Ãß°¡ÇÒ ¸¶Áö¸· ¶óÀο¡´Â \¸¦ ÁöÁ¤ÇÏÁö ¦¢this will be six. ¦¢ ¦¢ ¦¢ ¾Ê´Â´Ù. ¦¢ ¦¢ ¦§¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ ni\ ¦¢ n ¶óÀÎ Á÷ÈÄ¿¡ ¿¬À̾î ÁöÁ¤µÇ¾î ÀÖ´Â ¦¢3i\ ¦¢ ¦¢ ¦¢ ¶óÀεéÀ» »ðÀÔÇÑ´Ù. À̶§ »ðÀÔÇÒ ¶óÀÎÀǦ¢this will be line 1.\ ¦¢ ¦¢ ¦¢ ³¡¿¡´Â \¹®ÀÚ¸¦ ±â¼úÇØ¾ß ÇÑ´Ù. ±×·¯³ª ¦¢this will be line 2.\ ¦¢ ¦¢ ¦¢ »ðÀÔÇÒ ¸¶Áö¸· ¶óÀο¡´Â \¸¦ ÁöÁ¤ÇÏÁö ¦¢this will be line 3. ¦¢ ¦¢ ¦¢ ¾Ê´Â´Ù. ¦¢ ¦¢ ¦§¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢s/aa/bb/¦¢ °¢ ¶óÀÎ»ó¿¡ Á¸ÀçÇϴ ù¹ø° aa¶ó´Â ¦¢s/This/That/ ¦¢ ¦¢ ¦¢ ¹®ÀÚ¿­À» bb¶ó´Â ¹®ÀÚ¿­·Î º¯È¯ÇÑ´Ù. ¦¢5s/This/That/ ¦¢ ¦¢ ¦¢ ¹®ÀÚ¿­À» ÁöÁ¤ÇÔ¿¡ À־ Á¤±ÔÇ¥Çö½Ä°ú¦¢/this/s/[tT]his/That ¦¢ ¦¢ ¦¢ ¶óÀÎ ÁÖ¼Ò¸¦ ÁöÁ¤ÇÒ ¼öµµ ÀÖ´Ù. ¦¢ ¦¢ ¦§¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ p ¦¢ ¶óÀÎÀ» ÇÁ¸°Æ® ÇÑ´Ù. ( ÀÌ ¸í·É¾î´Â ¦¢s/This/That/p ¦¢ ¦¢ ¦¢ Åë»ó -n ¿É¼ÇÀÌ sed ¸í·É¾î¿¡ »ç¿ëµÇ¾ú ¦¢ ¦¢ ¦¢ ¦¢ À»¶§ »ç¿ëÇÑ´Ù. ) ¦¢ ¦¢ ¦§¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ g ¦¢ ¶óÀγ»¿¡ Á¸ÀçÇÏ´Â ¸ðµç ¹®ÀÚ¿­À» ¦¢s/This/That/g ¦¢ ¦¢ ¦¢ ´ë»óÀ¸·Î ÇÑ´Ù. ¦¢ ¦¢ ¦¦¦¡¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ´ÙÀ½Àº sed ¸í·É¾îÀÇ »ç¿ë¿¹¸¦ º¸¿©ÁÖ°í ÀÖ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢fileA ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢Jim A. Total hours 80 ¦¢ ¦¢Steve P. Total hours 78 ¦¢ ¦¢Andy A. Total hours 80 ¦¢ ¦¢Ralph C. Total hours 40 ¦¢ ¦¢Jim A. Total hours 80 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ # ÀÌ ¿¹´Â Á¤±Ô Ç¥Çö½ÄÀ» »ç¿ëÇÏ¿© È­ÀÏÀÇ ³»¿ëÀ» ÆíÁýÇÏ¿© Ãâ·ÂÇÏ´Â °úÁ¤À» # º¸¿©ÁÖ´Â ¿¹Á¦µéÀÌ´Ù. # hours¶ó´Â ¹®ÀÚ¿­À» timeÀ̶ó´Â ¹®ÀÚ¿­·Î º¯°æÇÑ´Ù. $sed 's/hours/time/' fileA Jim A. Total time 80 Steve P. Total time 78 Andy A. Total time 80 Ralph C. Total time 40 Jim A. Total time 80 # JimÀ̶ó´Â ¹®ÀÚ¿­ÀÌ µé¾îÀÖ´Â µé¾îÀÖ´Â ³»¿ëÀ» Çѹø´õ ÇÁ¸°Æ®ÇÑ´Ù. $sed '/Jim/p' fileA Jim A. Total hours 80 Jim A. Total hours 80 Steve P. Total hours 78 Andy A. Total hours 80 Ralph C. Total hours 40 Jim A. Total hours 80 Jim A. Total hours 80 # -n ¿É¼ÇÀ» »ç¿ëµÇ¾úÀ½À¸·Î °Ë»öµÈ ¶óÀθ¸À» Ç¥½ÃÇÑ´Ù. $sed -n '/Jim/p' fileA Jim A. Total hours 80 Jim A. Total hours 80 sed ¸í·É¾î´Â ¿©·¯ ¶óÀÎÀÇ ÅؽºÆ®·Î ±¸¼ºµÇ¾î ÀÖ´Â ½ºÅ©¸³Æ®(script)¸¦ »ç¿ëÇÏ¿© ½ÇÇàÇÒ¼ö ÀÖ´Ù. À̶§ ÀÌ ½ºÅ©¸³Æ®´Â ½©ÀÌ ´Ù¸¥ Àǹ̷ΠÇؼ®ÇÏÁö ¸øÇϵµ·Ï º¸È£¹®ÀÚ¸¦ »ç¿ëÇÏ¿© º¸È£ÇØÁÖ¾î¾ß ÇÑ´Ù. ÀÌ °æ¿ì ½ºÅ©¸³Æ®¸¦ sed ¸í·É¾î¿¡ Àü´ÞÇϱâ À§Çؼ­´Â -e script¶ó´Â Çü½ÄÀ¸·Î ÁöÁ¤ÇØ ÁÖ¾î¾ß Çϴµ¥, ¿ÀÁ÷ ´Ü ÇϳªÀÇ ¸í·É¾î°¡ ½ÇÇàµÇ´Â °æ¿ì¿¡´Â -e 'script' ¿É¼ÇÀ» ÁöÁ¤ÇÏÁö ¾Ê¾Æµµ µÈ´Ù. ¶ÇÇÑ ÆíÁý ¸í·É¾îµéÀº ƯÁ¤ÀÇ È­ÀÏ¿¡ ÀúÀåÇÑÈÄ, sed ¸í·É¾î¿¡ -f ¿É¼ÇÀ» »ç¿ëÇÏ¿© Àü´ÞÇÔÀ¸·Î½á ½ÇÇàÇÒ ¼ö ÀÖ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢fileA ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢Jim A. Total hours 80 ¦¢ ¦¢Steve P. Total hours 78 ¦¢ ¦¢Andy A. Total hours 80 ¦¢ ¦¢Ralph C. Total hours 40 ¦¢ ¦¢Jim A. Total hours 80 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ # ½ºÅ©¸³Æ®¸¦ ÀÌ¿ëÇÏ¿© sed ¸í·É¾îÀÇ ÆíÁý ¸í·ÉµéÀ» ÁöÁ¤ÇÏ´Â ¿¹ÀÌ´Ù. $sed '1i\ >Tom S. Total hours 60' fileA Tom S. Total hours 60 Jim A. Total hours 80 Steve P. Total hours 78 Andy A. Total hours 80 Ralph C. Total hours 40 Jim A. Total hours 80 # ÆíÁý ¸í·É¾îµéÀ» cmdfileA¶ó´Â È­ÀÏ¿¡ ÀúÀåÇÑÈÄ, À̸¦ ÀÌ¿ëÇÏ¿© # sed ¸í·É¾î¸¦ ½ÇÇàÇÏ´Â ¿¹¸¦ º¸¿©ÁØ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢cmdfileA ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢1i\ ¦¢ ¦¢Tom S. Total hours 60\ ¦¢ ¦¢Mike M. Total hours 80 ¦¢ ¦¢$d ¦¢ ¦¢s/hours/Hours/ ¦¢ ¦¢4s/Ralph/John/ ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ $sed -f cmdfileA fileA Tom S. Total hours 60 Mike M. Total hours 80 Jim A. Total Hours 80 Steve P. Total Hours 78 Andy A. Total Hours 80 John C. Total Hours 40 ------------------------------------------------------------------------ ´ÙÀ½ °­ÀÇ¿¡¼­´Â Filter ¿ªÇÒÀ» ¼öÇàÇÏ´Â awk ¸í·É¾î¿¡ ´ëÇؼ­ ¼³¸íÇÕ´Ï´Ù. ------------------------------------------------------------------------ #104 À¯´Ï½Ã½º (adunis2 ) Filter,Regular Expressions: awk I 04/17 21:01 188 line Filter¿Í Regular Expression: awk I ------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. ------------------------------------------------------------------- 1. awk ¸í·É¾î 1) awk ¸í·É¾îÀÇ ±âº» Çü½Ä awk´Â À¯Çü °Ë»ö¹× ó¸® ¾ð¾î ¸í·É¾î·Î °£ÁֵǸç, ´ë°³ °íÂ÷¿ø ÇÊÅÍ·Î½á »ç¿ëµÈ´Ù. awkÀÇ Æ¯¼ºÀº ¸î°¡Áö¸¦ Á¦¿ÜÇÏ°í´Â sed ¸í·É¾î¿Í ¸Å¿ì À¯»çÇÏ´Ù. awk ¸í·É¾îÀÇ »ç¿ë¹æ½ÄÀº sed ¸í·É¾î¿Í µ¿ÀÏÇÏ´Ù. awk ['program'] [filenames ...] ÀÌ Çü½Ä¿¡¼­ ÁÖÀÇÇÒ °ÍÀº ÁöÁ¤ÇÑ programÀº ¹Ýµå½Ã º¸È£¹®ÀÚ·Î ¹­¾îÁÖ¾î¾ß ÇÑ´Ù´Â °ÍÀÌ´Ù. ÀÌ´Â program ºÎºÐ¿¡ ±â¼úµÇ¾î Àִ Ư¼ö¹®ÀÚµéÀ» ½©·ÎºÎÅÍ º¸È£ÇÏ¿©, awk ¸í·É¿¡ ÁöÁ¤µÈ Çü½Ä ±×´ë·Î Àü´ÞÇϱâ À§Çؼ­ÀÌ´Ù. À§ Çü½Ä¿¡¼­ programÀº ´ÙÀ½°ú °°Àº ±¸Á¶¸¦ °®´Â´Ù. '/re/ {action}' '/re/ {action}' ... awk ¸í·É¾î´Â ÁöÁ¤ÇÑ È­Àϵé·ÎºÎÅÍ ¶óÀδÜÀ§·Î ÀÔ·ÂÀ» Àоîµé¿©, ÁöÁ¤ÇÑ re Áï Á¤±Ô Ç¥Çö½Ä(Regular Expression)À¸·Î ÁöÁ¤µÈ ³»¿ë°ú ºñ±³ÇÏ¿©, ÀÌ¿Í ÀÏÄ¡ÇÏ´Â ¶óÀο¡ ´ëÇØ °¢°¢ÀÇ Á¤±Ô Ç¥Çö½Ä¿¡ »óÀÀÇÏ´Â actionÀ» ¼öÇàÇÑ´Ù. ´ÙÀ½Àº awk ¸í·É¾î¸¦ »ç¿ëÇÏ´Â ±âº»ÀûÀÎ Çü½ÄÀ» º¸¿©ÁÖ´Â ¿¹ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢fileA ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢Jim A. Total hours 80 ¦¢ ¦¢Steve P. Total hours 78 ¦¢ ¦¢Andy A. Total hours 80 ¦¢ ¦¢Ralph C. Total hours 40 ¦¢ ¦¢Jim A. Total hours 80 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ # ´ÙÀ½ ¿¹´Â ÁöÁ¤ÇÑ Á¤±Ô Ç¥Çö½Ä°ú ÀÏÄ¡ÇÏ´Â ¸ðµç ¶óÀÎÀ» Ç¥½ÃÇÑ´Ù. # ÀÌ¿Í °°Àº ÀÛ¾÷Àº awk ¸í·É¾îÀÇ µðÆúÆ® actionÀ» ÀÌ¿ëÇϸé Á»´õ ¼ö¿ùÇÏ°Ô # ÁöÁ¤ÇÒ ¼ö Àִµ¥, ±×¿Í °ü·ÃµÈ ¿¹Á¦°¡ µÎ¹ø° ¿¹Á¦ÀÌ´Ù. $awk '/Jim/ {print}' fileA Jim A. Total hours 80 Jim A. Total hours 80 $awk '/Jim/' fileA Jim A. Total hours 80 Jim A. Total hours 80 # ÀÌ ¿¹´Â awk ¸í·É¾î¿¡ Á¤±Ô Ç¥Çö½ÄÀ» ÁöÁ¤ÇÏÁö ¾Ê¾ÒÀ»¶§ÀÇ Ã³¸® ³»¿ëÀ» # º¸¿©ÁÖ´Â ¿¹ÀÌ´Ù. ÀÌ °æ¿ì¿¡ ÁöÁ¤ÇÑ actionÀ» ¸ðµç ¶óÀο¡ Àû¿ëÇÑ´Ù. $awk '{print}' fileA Jim A. Total hours 80 Steve P. Total hours 78 Andy A. Total hours 80 Ralph C. Total hours 40 Jim A. Total hours 80 ÀÌ»óÀÇ ¿¹¿¡¼­´Â awk ¸í·É¾î¿¡¼­ ¶óÀÎ Àüü¸¦ ´ë»óÀ¸·Î ÀÛ¾÷À» ¼öÇàÇÏ°í ÀÖ´Ù. 2. awk ¸í·É¾î¿¡¼­ÀÇ Çʵå ÁöÁ¤ awk ¸í·É¾î´Â ¿©·¯°³ÀÇ Çʵå·Î ±¸¼ºµÇ¾î ÀÖ´Â ¶óÀο¡¼­ ƯÁ¤ Çʵ常À» ´ë»óÀ¸·Î ÀÛ¾÷À» ¼öÇàÇϵµ·Ï Á¦ÇÑÇÒ ¼öµµ ÀÖ´Ù. ±âº»ÀûÀ¸·Î awk ¸í·É¾î´Â ¶óÀγ»ÀÇ ÇʵåµéÀ» °ø¹éÀ̳ª ÅÇÀ» ÀÌ¿ëÇÏ¿© ¶óÀγ»ÀÇ °¢ Çʵ带 ±¸º°ÇÑ´Ù. awk ¸í·É¾î´Â °¢°¢ÀÇ Çʵ带 ÂüÁ¶Çϱâ À§ÇØ ¶óÀγ»ÀÇ ÇÊµå ¼ø¼­¿¡ µû¶ó $1,$2,$3,...,$NF¶ó´Â Çʵå ÁöÁ¤ÀÚ¸¦ Á¦°øÇÑ´Ù. ÀÌ Çü½Ä¿¡¼­ ¼ýÀÚ´Â ¶óÀγ»ÀÇ ÇÊµå ¼ø¼­¸¦ ÀǹÌÇÏ°í, NF´Â ¶óÀγ»ÀÇ ÇʵåÀÇ ÃÑ °¹¼ö¸¦ ³ªÅ¸³»´Â º¯¼öÀÌ´Ù. ¾Æ¿ï·¯ awk ¸í·É¾î´Â ¶óÀγ»ÀÇ Àüü Çʵ带 ÇѲ¨¹ø¿¡ ÂüÁ¶ÇÒ¼ö ÀÖ´Â $0 ¸¦ Ãß°¡·Î Á¦°øÇÑ´Ù. ÁÖÀÇ) awk ¸í·É¾î´Â ÇÊµå ½Äº°Àڷμ­, ½©¿¡ÀÇÇØ »ç¿ëµÇ´Â Æ÷Áö¼Å³Î ÆĶó¸ÞÅÍ¿Í À¯»çÇÑ $¹®ÀÚ¸¦ ÀÌ¿ëÇÑ´Ù. fileA ¦£¦¡¦¡¦¡¦¨¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¤ ¦¢$1 ¦¢ $2 ¦¢ $3 ¦¢ $4 ¦¢ $5 ¦¢ ¦§¦¡¦¡¦¡¦«¦¡¦¡¦«¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦«¦¡¦¡¦© ¦¢Jim ¦¢ A. ¦¢ Total ¦¢ hours ¦¢ 80 ¦¢ ¦¢Steve ¦¢ P. ¦¢ Total ¦¢ hours ¦¢ 78 ¦¢ ¦¢Andy ¦¢ A. ¦¢ Total ¦¢ hours ¦¢ 80 ¦¢ ¦¢Ralph ¦¢ C. ¦¢ Total ¦¢ hours ¦¢ 40 ¦¢ ¦¢Jim ¦¢ A. ¦¢ Total ¦¢ hours ¦¢ 80 ¦¢ ¦¦¦¡¦¡¦¡¦ª¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦ª¦¡¦¡¦¥ # ÀÌ ¿¹´Â ÁöÁ¤ÇÑ Á¤±Ô Ç¥Çö½Ä°ú ÀÏÄ¡ÇÏ´Â ¹®ÀÚ¿­À» °®°íÀÖ´Â ¶óÀÎÁß # »ç¿ëÀÚ°¡ ÁöÁ¤ÇÑ Çʵ常À» Ç¥½ÃÇϵµ·Ï ÇÏ´Â ¿¹ÀÌ´Ù. # °á°ú¸¦ º¸¸é 80 À̶ó´Â ¼ýÀÚ°¡ µÎ¹ø Ç¥½ÃµÇ´Âµ¥ ÀÌ´Â action¿¡¼­ ÁöÁ¤ÇÑ # $5 °¡ ¶óÀÎÀÇ °¡Àå ¸¶Áö¸· ÇʵåÀ̱⠶§¹®¿¡, $NF¿¡ ÀÇÇØ Çѹø´õ # Ç¥½ÃµÇ±â ¶§¹®ÀÌ´Ù. $awk '/Jim/ {print $1 $5 $NF}' fileA Jim8080 Jim8080 # À§ÀÇ °á°ú¸¦ º¸¸é ÃßÃâÇÑ °¢ Çʵ尡 ¸¶Ä¡ ÇϳªÀÇ Çʵåó·³ Ãâ·ÂµÇ´Â °ÍÀ» # º¼¼ö ÀÖ´Ù. ÀÌ °æ¿ì °¢°¢ÀÇ Çʵ带 ±¸º°Çϱâ À§Çؼ­ ´ÙÀ½°ú °°ÀÌ °ø¹éÀÌ # Ç¥½ÃµÇµµ·Ï ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù. $awk '/Jim/ {print $1 " " $5 " " NF}' fileA Jim 80 5 Jim 80 5 # ÀÌ ¿¹´Â Á¤±Ô Ç¥Çö½ÄÀ¸·Î ÁöÁ¤ÇÑ ¹®ÀÚ¿­°ú ÀÏÄ¡ÇÏ´Â ¶óÀεéÀÇ Àüü ³»¿ëÀ» # $0¸¦ »ç¿ëÇÏ¿© ¸ðµÎ Ç¥½ÃµÇµµ·Ï ÁöÁ¤ÇÑ ¿¹ÀÌ´Ù. $awk '/Jim/ {print $0}' fileA Jim A. Total hours 80 Jim A. Total hours 80 ÀÌ»óÀÇ ¿¹¿¡¼­´Â Çʵå ÁöÁ¤ÀÚ¸¦ »ç¿ëÇÏ¿© ¶óÀγ»ÀÇ Æ¯Á¤ ÇʵåµéÀ» ¹ßÃéÇÏ¿© Ãâ·ÂÀ» ÀÛ¼ºÇÏ°í ÀÖ´Ù. 3. Á¤ÇüÈ­µÈ Ãâ·Â »ý¼º awk ¸í·É¾î´Â º¸´Ù Á¤ÇüÈ­µÈ Ãâ·ÂÀ» ÀÛ¼ºÇÒ ¼ö ÀÖµµ·Ï Çϱâ À§Çؼ­ C ¾ð¾îÀÇ printf() ÇÔ¼ö¿Í À¯»çÇÑ printf ¹®ÀåÀ» Á¦°øÇÑ´Ù. printf ¹®ÀåÀ» »ç¿ëÇÏ´Â Çü½ÄÀº ´ÙÀ½°ú °°´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ printf("Á¦¾î ¹®ÀÚ¿­",ÀÎÀÚ_list) ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÀÌ Çü½Ä¿¡¼­ Á¦¾î ¹®ÀÚ¿­¿¡´Â È­¸é»ó¿¡ Ç¥½ÃÇÒ ¹®ÀÚ¿­°ú ÁöÁ¤ÇÑ ÀÎÀÚµéÀ» Ç¥½ÃÇÏ´Â Çü½ÄÀ» ÁöÁ¤ÇÏ´Â Çü½Ä º¯È¯¹®ÀÚ¸¦ ÁöÁ¤ÇÑ´Ù. ±×¸®°í ÀÎÀÚ_list¿¡´Â ÀÌÀü¿¡ ¼³¸íÇß´ø Çʵå ÁöÁ¤ÀÚ ¶Ç´Â ÀÓÀÇÀÇ °ªµîÀ» ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù. Á¦¾î ¹®ÀÚ¿­¿¡ ÁöÁ¤µÇ¾î ÀÖ´Â °¢°¢ÀÇ Çü½Ä º¯È¯¹®ÀÚµéÀº ÀÎÀÚ_list»ó¿¡ ÁöÁ¤µÈ ÀÎÀÚµé°ú ¼ø¼­¿¡ µû¶ó¼­ ´ëÄ¡µÈ´Ù. À̶§ ÁöÁ¤µÈ Çü½Ä º¯È¯¹®ÀÚ¿¡ µû¶ó ÀÎÀÚ·Î ÁöÁ¤µÈ °ªÀÌ º¯È¯µÇ¾î ´ëÄ¡µÈ´Ù. ¶ÇÇÑ Á¦¾î ¹®ÀÚ¿­¿¡´Â new lineÀ» ÀǹÌÇÏ´Â \n ¹®ÀÚ¿Í ÅÇ ¹®ÀÚ¸¦ ÀǹÌÇÏ´Â \t¸¦ ÇÔ²² ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù. ´ÙÀ½Àº Á¦¾î ¹®ÀÚ¿­¿¡¼­ ÁöÁ¤ °¡´ÉÇÑ Çü½Ä º¯È¯¹®ÀÚµéÀ» º¸¿©ÁØ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦½¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ Çü½Ä º¯È¯¹®ÀÚ ¦­ ÀÇ ¹Ì ¦¢ ¦¼¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¶¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¾ ¦¢ %d ¦­ decimal integer ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ %o ¦­ octal number ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ %x ¦­ hexadecimal number ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ %u ¦­ unsigned decimal number ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ %e ¦­ scientific notation ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ %f ¦­ floating point decimal number ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ %g ¦­ the smaller of %e or %f ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ %c ¦­ single character ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ %s ¦­ character string ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¿¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ´ÙÀ½Àº printf ¹®ÀÚ¸¦ »ç¿ëÇÏ´Â ¿¹¸¦ º¸¿©ÁØ´Ù. $who root term/01 Apr 12 08:00 user1 term/02 Apr 12 09:01 # ÀÌ ¿¹¿¡¼­ %s¶ó´Â Çü½Ä º¯È¯ ¹®ÀÚ°¡ µÎ°³°¡ ÁöÁ¤µÇ¾î ÀÖ´Ù. # À̵éÀº ÈļӵǴ ÀÎÀÚµé°ú ´ëÄ¡µÇ°Ô µÇ´Âµ¥ ù¹ø° %s´Â $1°ú # %s´Â $5¿Í ´ëÄ¡µÇ¾î Ãâ·ÂµÈ´Ù. À̶§ ÁöÁ¤ÇÑ Çü½Ä º¯È¯¹®ÀÚ¿¡ # µû¶ó¼­ ÀÎÀÚÀÇ °ªÀ» º¯È¯ÇÏ¿© ´ëÄ¡Çϴµ¥ ÀÌ ¿¹¿¡¼­´Â # ¹®ÀÚ¿­ ±×´ë·Î 󸮵ȴÙ. ¶ÇÇÑ ¸Å ¶óÀÎÀÌ Ãâ·ÂµÉ¶§¸¶´Ù # »õ·Î¿î ¶óÀο¡ Ãâ·ÂµÇµµ·Ï Çϱâ À§Çؼ­ \nÀÌ »ç¿ëµÇ°í ÀÖ´Ù. $who | awk '{printf("%s logged on at %s\n", $1, $5)}' root logged on at 08:00 user1 logged on at 09:01 ------------------------------------------------------------------------ ´ÙÀ½ °­ÀÇ¿¡¼­µµ awk ¸í·É¾î¿¡ ´ëÇؼ­ °è¼ÓÇÏ¿© ¼³¸íÇÕ´Ï´Ù. ------------------------------------------------------------------------ #105 À¯´Ï½Ã½º (adunis2 ) Filter,Regular Expressions: awk II 04/19 22:49 218 line Filter¿Í Regular Expression: awk II ------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. ------------------------------------------------------------------- 4) awk ¸í·É¾îÀÇ ¿É¼Ç awk ¸í·É¾î´Â -f ¿Í -F ¶ó´Â µÎ°³ÀÇ ¿É¼ÇÀ» Á¦°øÇÑ´Ù. ÀÌµé ¿É¼ÇÀ» »ç¿ëÇÏ´Â Çü½ÄÀº ´ÙÀ½°ú °°´Ù. awk [-Fc][-f file] [filenames...] -f ¿É¼ÇÀº awk ¸í·É¾î¿¡ ÁöÁ¤ÇÒ 'program' ºÎºÐÀ»(ÀÌÀü °­ÀÇÀÇ awk ¸í·É¾îÀÇ ¹®¹ýÀ» ÂüÁ¶) ÀÓÀÇÀÇ È­ÀÏ¿¡ ÀúÀåÇØ µÐÈÄ, awk ¸í·É¾î¿¡ ±× È­ÀÏÀ» ¾Ë·ÁÁÖ±â À§ÇØ »ç¿ëÇÏ´Â ¿É¼ÇÀÌ´Ù. awk ¸í·É¾î´Â ÁöÁ¤ È­ÀϼÓÀÇ ¶óÀγ»ÀÇ ÇÊµå ±¸º°ÀÚ·Î µðÆúÆ®·Î °ø¹éÀ» »ç¿ëÇϴµ¥, ÀÌµé ¹®ÀÚ ÀÌ¿ÜÀÇ ¹®ÀÚ¸¦ ÇÊµå ±¸º°ÀڷΠó¸®ÇÏ°íÀÚ ÇÒ °æ¿ì¿¡´Â -F ¿É¼ÇÀ» »ç¿ëÇÏ¿© ÀÓÀÇÀÇ ±¸º°ÀÚ¸¦ ¼±¾ðÇÒ ¼ö ÀÖ´Ù. ¿¹¸¦µé¸é /etc/passwd È­Àϳ»ÀÇ °¢°¢ÀÇ ¶óÀÎÀº :ÀÌ ÇÊµå ±¸º°ÀÚ·Î »ç¿ëµÇ°í Àִµ¥, ÀÌ °æ¿ì -F:À̶ó°í ÁöÁ¤Çϸé awk´Â ÀÌ È­ÀÏÀ» ó¸®ÇÒ ¶§ ÇÊµå ±¸º°ÀÚ·Î :À» »ç¿ëÇÏ°Ô µÈ´Ù. ´ÙÀ½Àº awk ¸í·É¾îÀÇ ¿É¼ÇÀ» »ç¿ëÇÏ´Â ¿¹¸¦ º¸¿©ÁÖ°í ÀÖ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢myfile ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢/user/ {print $1 " " $7} ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢/etc/passwd ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢root:x:0:1:root admin:/: ¦¢ ¦¢sa:x:0:0:sa menus login:/sa:/sa/sa.exec ¦¢ ¦¢user1:x:200:200:UNIX user:/usr/user1:/bin/rsh ¦¢ ¦¢user2:x:201:200:UNIX user:/usr/user2:/bin/rsh ¦¢ ¦¢user3:x:202:200:UNIX user:/usr/user3:/bin/rsh ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ # ÀÌ ¿¹´Â ÇÊµå ±¸º°ÀÚ·Î :À» »ç¿ëÇÏ°í ÀÖ´Â /etc/passwd È­ÀÏÀ» ó¸® # ÇϱâÀ§ÇØ -F ¿É¼ÇÀ» »ç¿ëÇÏ°í, awk ¸í·É¾î¿¡ ÁöÁ¤ÇÒ 'program'À» # myfileÀ̶ó´Â È­ÀÏ¿¡ ÀúÀåÇصÐÈÄ À̸¦ awk ¸í·É¾î¿¡ Àü´ÞÇϱâ À§ÇØ # -f ¿É¼ÇÀ» »ç¿ëÇÑ ¿¹¸¦ º¸¿©ÁÖ°í ÀÖ´Ù. $awk -F: -f myfile /etc/passwd user1 /bin/rsh user2 /bin/rsh user3 /bin/rsh 5) awk ¸í·É¾îÀÇ ¿¬»êÀÚ awk ¸í·É¾îÀÇ 'program' ºÎºÐÀº '/re/ {action}'ÀÇ µÎ ºÎºÐÀ¸·Î ±¸¼ºµÈ´Ù. ÀÌ Çü½Ä¿¡¼­ re(RegularExpression)¿Í action ºÎºÐÀ» ±¸º°Çϱâ À§Çؼ­ action ºÎºÐÀ» Áß°ýÈ£·Î µÑ·¯½×µµ·Ï µÇ¾î ÀÖ´Ù. À̶§ action ºÎºÐ¿¡´Â ÁöÁ¤ÇÑ Regular Expression¿¡ ÀÇÇØ ¼±ÅÃµÈ ¶óÀο¡ ´ëÇؼ­ ¼öÇàÇÒ ÀÛ¾÷ ³»¿ëÀ» ÁöÁ¤ÇÑ´Ù. actionÀº awk ¸í·É¾î°¡ Á¦°øÇÏ´Â ´Ù¾çÇÑ ¿¬»êÀÚ¸¦ »ç¿ëÇÏ¿© ¼¼ºÎÀûÀÎ Á¦¾î°¡ °¡´ÉÇÏ´Ù. awk ¸í·É¾î¿¡¼­ »ç¿ë °¡´ÉÇÑ ¿¬»êÀÚµéÀº ´ÙÀ½°ú °°´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦½¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ Math Operator ¦­ ÀÇ ¹Ì ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢= += -= *= /= %= ¦­ÇÒ´ç ¿¬»êÀÚ ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢> >= < <= == != ~ |~ ¦­°ü°è ¿¬»êÀÚ ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ ¦­¹®ÀÚ¿­ ¿¬°á ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢+ - ¦­µ¡¼À, »¬¼À ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢* / % ¦­°ö¼À, ³ª´°¼À, ³ª¸ÓÁö ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢++ -- ¦­Áõ°¨ ¿¬»êÀÚ ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¿¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦½¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ Boolean Operator ¦­ ÀÇ ¹Ì ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢|| ¦­ ³í¸®Àû OR ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢&& ¦­ ³í¸®Àû AND ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢| ¦­ ³í¸®Àû NOT ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¿¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦½¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢Á¤±Ô ¿¬»ê½Ä ¿¬»êÀÚ ¦­ ÀÇ ¹Ì ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢~ == ¦­ ¹®ÀÚ¿­ ÀÏÄ¡ ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢!~ ¦­ ¹®ÀÚ¿­ ºÒÀÏÄ¡ ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ ¦­ ¹®ÀÚ¿­ ¿¬°á ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢= ¦­ ¹®ÀÚ¿­ ÇÒ´ç ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¿¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ À§ÀÇ ¿¬»êÀÚµéÁß ¸î°¡Áö ¿¬»êÀÚ¸¦ ¼Ò°³ÇÑ´Ù. ´ÙÀ½°ú °°Àº ÇÒ´ç ¿¬»êÀÚµéÀÌ ¼öÇàÇÏ´Â ¿¬»êÀº ´ÙÀ½°ú°°´Ù. a += 5 ------> a = a + 5 a -= 5 ------> a = a - 5 a *= 5 ------> a = a * 5 a /= 5 ------> a = a / 5 a %= 5 ------> a = a % 5 Boolean ¿¬»êÀÚÁß ³í¸®Àû OR¸¦ ³ªÅ¸³»´Â || ¿¬»êÀÚ°¡ µÎ°³ÀÇ ¿¬»ê½Ä »çÀÌ¿¡ ÁöÁ¤µÇ¾úÀ»¶§, µÎ°³ÀÇ ¿¬»ê½ÄÁß Çϳª¸¸ÀÌ¶óµµ ÂüÀÌ¸é ±× ¿¬»ê °á°ú´Â ÂüÀ¸·Î µÈ´Ù. À̶§ ¾Õ¿¡ ±â¼úµÈ ¿¬»ê½ÄÀÌ ÂüÀÏ °æ¿ì¿¡´Â µÚ¿¡ ±â¼úµÇ¾î ÀÖ´Â ¿¬»ê½ÄÀº Æò°¡µÇÁö ¾Ê´Â´Ù´Â °ÍÀ» ÁÖÀÇÇØ¾ß ÇÑ´Ù. ÀÌ´Â ÇÁ·Î±×·¥ ÀÛ¼º½Ã ¿À·ù¸¦ ¹üÇÒ °¡´É¼ºÀÌ ÀÖÀ¸´Ï ²À ±â¾ïÇϱ⠹ٶõ´Ù. ±×¸®°í ³í¸®Àû AND¸¦ ³ªÅ¸³»´Â && ¿¬»êÀÚ°¡ µÎ°³ÀÇ ¿¬»ê½Ä »çÀÌ¿¡ ÁöÁ¤µÇ¾úÀ»¶§, µÎ°³ÀÇ ¿¬»ê½Ä ¸ðµÎ°¡ ÂüÀ̾î¾ß¸¸ ÂüÀ¸·Î µÈ´Ù. À̶§ ¾Õ¿¡ ±â¼úµÈ ¿¬»ê½ÄÀÌ °ÅÁþÀÏ °æ¿ì¿¡´Â µÚ¿¡ ±â¼úµÇ¾î ÀÖ´Â ¿¬»ê½ÄÀº Æò°¡µÇÁö ¾Ê´Â´Ù´Â °Íµµ À¯ÀÇÇØ¾ß ÇÑ´Ù. ~¿Í !~ ¿¬»êÀÚµéÀº Regular Expression°ú ÇÔ²² »ç¿ëµÈ´Ù. À̶§ ~ ¿¬»êÀÚ´Â ÀÏÄ¡(match), !~´Â ºÒÀÏÄ¡(no-match)¸¦ ³ªÅ¸³½´Ù. µÑ ¶Ç´Â ±×ÀÌ»óÀÇ ¿¬»ê½ÄµéÀÌ ¿¬»êÀÚ¸¦ ÅëÇØ ¿¬°áµÇÁö ¾Ê¾ÒÀ» °æ¿ì¿¡´Â ÀÌµé ¿¬»ê½ÄÀº ÇϳªÀÇ ¹®ÀÚ¿­·Î ¿¬°áµÈ´Ù. ¿¹¸¦µé¸é ´ÙÀ½°ú °°´Ù. "code " 5+5 ¶ó°í ÁöÁ¤µÇ¾î ÀÖÀ¸¸é "code 10"ÀÇ ÇϳªÀÇ ¹®ÀÚ¿­·Î °áÇյȴÙ. ( ÁÖÀÇ ) ¿¬»ê½Ä³»¿¡ Ư¼ö ¹®ÀÚ¸¦ »ç¿ëÇÒ °æ¿ì¿¡ ½©ÀÇ Ã³¸®¸¦ ¸·±â À§ÇØ ¹Ýµå½Ã º¸È£¹®ÀÚ·Î µÑ·¯ ½×¾Æ¾ß ÇÑ´Ù. ´ÙÀ½Àº awk ¸í·É¾îÀÇ ¿¬»êÀÚ »ç¿ë ¿¹¸¦ º¸¿©ÁØ´Ù. # ´ÙÀ½ ¿¹´Â °¢°¢ÀÇ awk ¿¹Á¦¿¡¼­ ÀÔ·ÂÀ¸·Î »ç¿ëÇÒ ls -lÀÇ Ãâ·ÂÀ» # º¸¿©ÁÖ°í ÀÖ´Ù. $ls -l Total 4 -rwxrwxrwx 1 cuser cusers 624 Jan 15 21:10 file1 -rwxrwxrwx 1 cuser cusers 627 Feb 15 20:57 file2 -rwxrwxrwx 1 cuser cusers 168 Jan 15 18:58 file3 -rwxr--r-- 1 root cusers 576 Jan 15 18:58 myfile # ´ÙÀ½ ¿¹´Â ù¹ø° Ç¥Çö½Ä¿¡ ÁöÁ¤µÈ $9 Áï 9¹ø° ÇʵåÀÇ ³»¿ëÁß # Á¤±Ô Ç¥Çö½ÄÀ¸·Î ÁöÁ¤µÈ fileÀ̶ó´Â ¹®ÀÚ¿­°ú ÀÏÄ¡ÇÏ´Â (~ ¿¬»êÀÚ¸¦ # »ç¿ëÇÏ¿´À½À¸·Î) ¹®ÀÚ¿­ÀÌ ÀÖ´Â ¶óÀÎÀ» °Ë»öÇÏ¿©, ±× ¶óÀÎÀÇ 9¹ø° ÇʵåÀÇ # ³»¿ë¸¸À» Ãâ·ÂÇϵµ·Ï ÁöÁ¤ÇÑ ¿¹ÀÌ´Ù. $ls -l | awk '$9 ~ /file/ {print $9}' file1 file2 file3 myfile # À§ÀÇ ¿¹¿¡¼­´Â ÇØ´ç Çʵ忡¼­ÀÇ À§Ä¡¿Í »ó°ü¾øÀÌ fileÀ̶ó´Â ¹®ÀÚ¿­ÀÌ # ÀÖÀ¸¸é ó¸®ÀÇ ´ë»óÀ¸·Î »ç¿ëÇÏ°í ÀÖ´Ù. ¸¸ÀÏ ÁöÁ¤ÇÑ ¹®ÀÚ¿­ÀÌ ÇʵåÀÇ # ù Ä®·³ºÎÅÍ ÁöÁ¤µÇ¾î ÀÖ´Â ¹®ÀÚ¿­¸¸À» ó¸®ÀÇ ´ë»óÀ¸·Î »ç¿ëÇÏ°íÀÚ # ÇÑ´Ù¸é, ¹®ÀÚ¿­À» ÁöÁ¤ÇÏ´Â Á¤±Ô Ç¥Çö½Ä³»¿¡ ^¹®ÀÚ¸¦ ÇÔ²² ±â¼úÇÏ¸é µÈ´Ù. # ´ÙÀ½Àº ±×¿¡ ÇØ´çÇÏ´Â ¿¹ÀÌ´Ù. $ls -l | awk '$9 ~ /^file/ {print $9}' file1 file2 file3 # ´ÙÀ½ ¿¹¿¡¼­´ÂµÎ°³ÀÇ ¿¬»ê½ÄÀ» ÇÔ²² ÁöÁ¤ÇÒ¶§ ÁöÁ¤ Çü½ÄÀ» º¸¿©ÁÖ´Â # ¿¹Á¦ÀÌ´Ù. # ÀÌ ¿¹´Â ÀԷ¿¡ ´ëÇØ °¢°¢ÀÇ ¶óÀκ°·Î °Ë»öÇÏ¿©, - ¹®ÀÚ°¡ ù Ä®·³¿¡ # ±â¼úµÇ¾î ÀÖ´Â ¶óÀÎÀÇ 3¹ø Çʵå¿Í 6¹ø Çʵ带 °ø¹éÀ» »çÀÌ¿¡ À§Ä¡½ÃÄÑ # Á¶ÇÕÇÑÈÄ, ±×¸¦ stringÀ̶ó´Â º¯¼ö¿¡ ÀúÀåÇÑ ÈÄ ±× ³»¿ëÀÌ # "cuser Jan"À̶ó´Â ¹®ÀÚ¿­°ú ºñ±³ÇÏ¿©, °°À»°æ¿ì ±× ¶óÀÎÀÇ 9¹ø° # Çʵ带 Ãâ·ÂÇϵµ·Ï ÇÁ·Î±×·¥ µÇ¾î ÀÖ´Ù. # ÀÌ ÇÁ·Î±×·¥¿¡¼­ ÁÖ¸ñÇÒ °ÍÀº = Àº ´ëÀÔ ¿¬»êÀÚÀÌ°í, == ¿¬»êÀÚ°¡ # µîÈ£ ¿¬»êÀÚ¶ó´Â °ÍÀÌ´Ù. ±×¸®°í '$3 " " $6'ÀÇ ÁöÁ¤Àº ¹®ÀÚ¿­ ¿¬°áÀÌ # ¼öÇàµÇ¾î, ÇϳªÀÇ ¹®ÀÚ¿­·Î °áÇյȴÙ. $ls -l | awk '/^-/ {string = $3 " " $6} >string == "cuser Jan" {print $9}' file1 file3 # À§ÀÇ ÇÁ·Î±×·¥°ú °°Àº °á°ú´Â ´ÙÀ½°ú °°Àº ÇÁ·Î±×·¥À» »ç¿ëÇؼ­µµ # µ¿ÀÏÇÑ °á°ú¸¦ ¾òÀ» ¼ö ÀÖ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ ls -l | awk '/^-/ && "cuser" && $6 == "Jan" {print $9} ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ # ´ÙÀ½¿¹´Â ½© ÇÁ·Î±×·¥³»¿¡¼­ awk ¸í·É¾î°¡ »ç¿ëµÇ´Â °ÍÀ» º¸¿©ÁÖ°í ÀÖ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢prog ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢echo FILE "\t" SIZE "\t" RUNNING-TOTAL ¦¢ ¦¢ls -l | awk '/^-/ {total = total + $5 } ¦¢ ¦¢ {print $9 "\t" $5 "\t" total}' ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ # À§ÀÇ ÇÁ·Î±×·¥À» ºÐ¼®ÇØ º¸ÀÚ. ¿ì¼± echo ¸í·É¾î¸¦ ÅëÇØ Ãâ·Â»ó¿¡ Ç¥½ÃÇÒ # Ç¥Á¦¸¦(Header) ÁöÁ¤ÇÏ°í ÀÖ´Ù. ±× ÈÄ ls -l ¸í·É¾îÀÇ ½ÇÇà °á°ú¸¦ # awk ¸í·É¾îÀÇ Ç¥ÁØ ÀÔ·ÂÀ¸·Î ó¸®ÇÏ°í ÀÖ´Ù. ±× °á°ú¿¡ ´ëÇØ ¶óÀγ»ÀÇ # ù Ä®·³ÀÌ -ÀÎ ¶óÀÎÀÇ 5¹ø° Ä®·³ÀÇ ³»¿ëÀ» total À̶ó´Â º¯¼ö¿¡ # ´©ÀûÇÑÈÄ, 9 ¹ø° Çʵå, 5 ¹ø° ÇÊµå ±×¸®°í ´©Àû°ªÀ» Ãâ·ÂÇϵµ·Ï # ÇÏ´Â ÇÁ·Î±×·¥ÀÌ´Ù. À̶§ Ãâ·Â»ó¿¡ Æ÷ÇԵǴ °¢°¢ÀÇ µ¥ÀÌŸ´Â Á¤ÇüÈ­µÈ # Ãâ·ÂÀ» À§ÇØ \t Áï, ÅÇÀ» Âï¾îÁÖ°í ÀÖ´Ù. $prog FILE SIZE RUNNING-TOTAL file1 624 624 file2 627 1251 file3 168 1419 myfile 576 1995 -------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­´Â awk ¸í·É¾îÀÇ ÇÁ·Î±×·¡¹Ö Á¦¾î¹®¿¡ ´ëÇØ °è¼ÓÇÏ¿© ¼³¸íÇÕ´Ï´Ù. -------------------------------------------------------------------------- #106 À¯´Ï½Ã½º (adunis2 ) Filter,Regular Expressions: awk III 04/23 08:57 144 line Filter¿Í Regular Expression: awk III ------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. ------------------------------------------------------------------- 5) awkÀÇ ÀÀ¿ë (1) awkÀÇ ÇÔ¼ö(Built-in Functions) getline() ´ÙÀ½ ÀÔ·Â ·¹Äڵ尡 ÇöÀçÀÇ ·¹Äڵ带 ´ëÄ¡ÇÑ´Ù. getline ÇÔ¼ö´Â ´ÙÀ½ÀÇ ÀÔ·Â ·¹Äڵ尡 ÀÖÀ» °æ¿ì¿¡´Â 1À» µ¹·ÁÁØ´Ù. ¸¸ÀÏ ´ÙÀ½ÀÇ ÀÔ·Â ·¹Äڵ尡 ¾øÀ» °æ¿ì¿¡´Â 0ÀÌ µ¹·ÁÁø´Ù. ÀÌ ÇÔ¼ö°¡ ½ÇÇàµÈÈÄ Ã³¸®µÈ ¶óÀμö¸¦ µ¹·ÁÁÖ´Â NR(Number of Record) º¯¼ö°¡ °»½ÅµÈ´Ù. index(s1, s2) s1¿¡ ÁöÁ¤µÈ string³»¿¡¼­ s2·Î ÁöÁ¤ÇÑ substringÀ» °Ë»öÇÑ´Ù. ¹ß°ß½Ã¿¡´Â substringÀÌ ÁöÁ¤µÇ¾î ÀÖ´Â string³»ÀÇ À§Ä¡¸¦ µÇµ¹·ÁÁØ´Ù. ¸¸ÀÏ ¹ß°ßµÇÁö ¾ÊÀ¸¸é 0À» µ¹·ÁÁØ´Ù. length() length(string) length ÇÔ¼ö´Â ÇöÀçÀÇ ÀÔ·Â ·¹Äڵ带 ³»ÀÇ ¹®ÀÚ¼ö¸¦ È®ÀÎÇϱâ À§ÇØ ÀÎÀÚ¾øÀÌ »ç¿ëÇϰųª, string³»ÀÇ ¹®ÀÚ¼ö¸¦ È®ÀÎÇϱâ À§ÇØ ÀÎÀڷνá stringÀ» ÁöÁ¤ÇÏ¿© »ç¿ëÇÑ´Ù. split(string, array, sep) ÁöÁ¤ÇÑ stringÀ» Çʵå·Î ±¸ºÐÇÏ¿© ÁöÁ¤ÇÑ array ¹è¿­³»¿¡ ÀúÀåÇÑ´Ù. À̶§ string³»¿¡¼­ Çʵ带 ±¸º°Çϱâ À§ÇÑ ÇÊµå ±¸º°¹®Àڷδ `ÁöÁ¤ÇÑ sep°¡ »ç¿ëµÈ´Ù. ±×¸®°í °¢°¢ÀÇ Çʵ尡 ÀúÀåµÉ ¹è¿­¿ä¼Ò´Â array[1],array[2],array[3],..µîÀÌ µÈ´Ù. split ÇÔ¼ö´Â ½ÇÇàÈÄ ÇʵåÀÇ °¹¼ö¸¦ µ¹·ÁÁØ´Ù. sprintf(fmt, string, ...) ÁöÁ¤ÇÑ fmt(Formatting String)¿¡ µû¶ó¼­ ¹®ÀÚ¿­À» Çü½Ä º¯È¯ÇÑ´Ù. substr(string, pos, n) ÁöÁ¤ÇÑ string¿¡¼­ pos·Î ÁöÁ¤ÇÑ ¹®ÀÚºÎÅÍ n°³ÀÇ ¹®ÀÚ¸¦ ¹ßÃéÇÑ´Ù. ÇÔ¼ö »ç¿ë½Ã pos·Î ÁöÁ¤ÇÑ °ªÀÌ 1º¸´Ù ÀûÀ¸¸é 1ÀÌ °¡Á¤µÇ°í, nÀÌ 1º¸´Ù ÀûÀ¸¸é NullÀÌ µÇµ¹·ÁÁø´Ù. ÀÌ»óÀÇ ÇÔ¼ö ÀÌ¿Ü¿¡µµ ´ÙÀ½°ú °°Àº ¼öÇÐ ¿¬»ê¿ë ÇÔ¼ö¸¦ Ãß°¡·Î Á¦°øÇÑ´Ù. cos(expr) exprÀÇ cosine °ªÀ» µ¹·ÁÁØ´Ù. sin(expr) exprÀÇ sine °ªÀ» µ¹·ÁÁØ´Ù. log(expr) exprÀÇ log °ªÀ» µ¹·ÁÁØ´Ù. int(expr) exprÀÇ °ªÁß Á¤¼öºÎ¸¸À» µ¹·ÁÁØ´Ù. exp(expr) exprÀÇ Áö¼ö°ªÀ» µ¹·ÁÁØ´Ù. ´ÙÀ½Àº awk¿¡¼­ Áö¿øÇÏ´Â ÇÔ¼ö¸¦ »ç¿ëÇÏ´Â ¿¹¸¦ º¸¿©ÁØ´Ù. $ls -l | >awk '/^-/ {printf("Filename %s is %d characters long\n",$9, >length($9))}' Filename datafile is 8 characters long Filename file1 is 5 characters long Filename myfile is 6 characters long Filename prog is 4 characters long # À§ÀÇ ÇÁ·Î±×·¥¿¡¼­´Â ls -l ¸í·É¾îÀÇ Ãâ·ÂÀ» awk ¸í·É¾îÀÇ Ç¥ÁØ ÀÔ·ÂÀ¸·Î # ó¸®ÇÏ°í ÀÖ´Ù. À̶§ ls -l ¸í·É¾îÀÇ Ãâ·Â ¶óÀγ»ÀÇ 9¹ø°¸¦ Çʵ带 # Çü½ÄÈ­(Formatting)ÇÏ¿© Ãâ·ÂÇÏ°í ÀÖ´Ù. ÀÌ ¿¹¿¡¼­´Â length() ÇÔ¼ö¸¦ # »ç¿ëÇÏ°í ÀÖ´Ù. length() ÇÔ¼ö´Â ÁöÁ¤ÇÑ ¹®ÀÚ¿­ÀÇ ¹®ÀÚ¼ö¸¦ µ¹·ÁÁִµ¥, # ½ÇÇà °á°úÀÇ È­ÀϸíÀÇ ¹®ÀÚ¼ö°¡ Ç¥½ÃµÇ´Â °ÍÀ» º¸°í À̸¦ È®ÀÎÇÒ ¼ö ÀÖ´Ù. (2) awkÀÇ Æ¯¼ö À¯Çü(Special Pattern) awk ¸í·É¾î´Â BEGIN°ú END¶ó´Â µÎ°³ÀÇ Æ¯¼ö À¯ÇüÀ» °®°í ÀÖ´Ù. BEGIN¿¡ ÁöÁ¤ÇÑ actionÀº ù¹ø° ÀÔ·Â ¶óÀÎÀ» ÀоîµéÀ̱â Àü¿¡ ¼öÇàµÈ´Ù. ±×·¡¼­ Åë»ó BEGINÀº ÇÁ¸°Æ® Çì´õ¸¦ »ý¼ºÇϱâ À§ÇØ, º¯¼ö¸¦ ÃʱâÈ­Çϱâ À§ÇØ ¶Ç´Â ÇÊµå ±¸º°ÀÚ¸¦ ¼³Á¤Çϱâ À§ÇØ »ç¿ëµÈ´Ù. END·Î ÁöÁ¤ÇÑ actionÀº ¸¶Áö¸· ÀÔ·Â ¶óÀÎÀÌ Ã³¸®µÈÈÄ¿¡ ½ÇÇàµÈ´Ù. ´ÙÀ½Àº BEGIN°ú END°¡ ÁöÁ¤µÇ¾î ÀÖÀ»¶§ awk ¸í·É¾îÀÇ ½ÇÇà È帧À» º¸¿©ÁÖ´Â ±×¸²ÀÌ´Ù. $awk 'BEGIN {FS = ":"} $2 == "" END {print NR}' /etc/group # ÀÌ ¿¹´Â Æнº¿öµå¸¦ °®Áö¾Ê´Â /etc/group È­Àϳ»ÀÇ ¸ðµç »ç¿ëÀÚ¸¦ # ÇÁ¸°Æ®ÇÑ´Ù. ¸ðµç ·¹ÄÚµåµéÀÌ Ã³¸®µÇ¸é, ó¸®µÈ ·¹ÄÚµåÀÇ Àüü °¹¼ö°¡ # ÇÁ¸°Æ®µÈ´Ù. # ÀÌ ¿¹¿¡¼­´Â ó¸®µÈ ·¹ÄÚµåÀÇ Àüü °¹¼ö¸¦ µ¹·ÁÁÖ´Â º¯¼öÀÎ NR º¯¼ö¸¦ # »ç¿ëÇÏ°í ÀÖ´Ù. ¦¢ ¦£¦¡¦¡¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ÇÊµå ±¸º°ÀÚ¸¦ :À¸·Î ¼³Á¤¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢·¹Äڵ带 Àд´Ù.¦¢ ¦£¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦ª¦¡¦¤ No ¦¢ ·¹ÄÚµåÀÇ °Ë»öÀÌ ¦¢ Yes ¦£¦¡¦¡¦© ¼º°øÀûÀ¸·Î ¼öÇàµÆ´Â°¡? ¦§¦¡¦¡¦¡¦¤ ¦¢ ¦¦¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¨¦¡¦¥ ¦£¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¤No ¦¢ ¦¢´ÙÀ½ ·¹ÄÚµå 󸮦¢ ¦¢ÇöÀç ·¹ÄÚµåÀÇ ¦§¦¡¦¤ ¦¢ ¦¦¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¥ ¦¢$2°¡ ""Àΰ¡ ¦¢ ¦¢ ¦¢ ¦¢ Yes ¦¦¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¥ ¦¢ ¦£¦¡¦¡¦ª¦¡¦¡¦¤ ¦¢ ¦£¦¡¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¤ ¦¢ ¦¢NRÀ» Ãâ·Â ¦¢ ¦¢ ¦¢ÇöÀç ·¹Äڵ带 Ãâ·Â¦¢ ¦¢ ¦¦¦¡¦¡¦¨¦¡¦¡¦¥ ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¥ ¦¢ ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ´ÙÀ½Àº awkÀÇ Æ¯¼ö À¯ÇüÀ» »ç¿ëÇÏ´Â ¿¹ÀÌ´Ù. ÀÌ ¿¹´Â È­ÀÏ ½Ã½ºÅÛ´ç ÀÚÀ¯ ºí·°ÀÇ Æò±Õ °¹¼ö¿Í ÇÔ²² ½Ã½ºÅÛ³»ÀÇ ¸ðµç È­ÀÏ ½Ã½ºÅÛµéÀÇ ÀÚÀ¯ ºí·°ÀÇ Àüü °¹¼ö¸¦ µ¹·ÁÁÖ´Â ÇÁ·Î±×·¥ÀÌ´Ù. ÀÌ ¿¹¿¡¼­ »ç¿ëµÉ df ¸í·É¾îÀÇ Ãâ·Â ±¸¼ºÀº ´ÙÀ½°ú °°´Ù. ¦£¦¡¦¡< ÇÊµå ±¸º°ÀÚ¸¦ °ø¹éÀ¸·Î º¸¾ÒÀ»¶§ÀÇ ÇÊµå ½Äº°ÀÚ ¦£¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$1 $2 $3 $4 $5 $6 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ / (/dev/dsk/c0d0s1 ): 72520 14825 i-nodes /ADMIN (/dev/dsk/c0d0s3 ): 70960 1196 i-nodes ( °¢°¢ÀÇ Çʵ忡 ´ëÇÑ ÀÚ¼¼ÇÑ ¼³¸íÀº Â÷ÈÄ °­ÀÇµÉ À¯´Ð½º °ü¸®ÀÚ °úÁ¤¿¡¼­ ÀÚ¼¼È÷ ¼³¸íµË´Ï´Ù. ) $df | awk '{s = s + $4} END {print s, s/NR}' 143480 71740 # ÀÌ ¿¹¿¡¼­ Ãâ·Â»óÀÇ °¢°¢ÀÇ ¶óÀο¡ ´ëÇØ, awk ¸í·É¾î´Â s=s+$4¸¦ ¼öÇàÇÑ´Ù. s=72520 s=72520+70960 # ÀÌ ÇÁ·Î±×·¥¿¡¼­ ·¹ÄÚµå ó¸®ÀÇ ³¡¿¡¼­, awk ¸í·É¾î´Â s º¯¼öÀÇ °ª°ú # NR º¯¼öÀÇ °ªÀ» ÇÁ¸°Æ®ÇÑ´Ù. s=143480 NR=2 -------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­´Â awk ¸í·É¾îÀÇ ÇÁ·Î±×·¡¹Ö Á¦¾î¹®¿¡ ´ëÇØ °è¼ÓÇÏ¿© ¼³¸íÇÕ´Ï´Ù. -------------------------------------------------------------------------- #107 À¯´Ï½Ã½º (adunis2 ) Filter, Regular Expressions: awk IV 04/23 08:58 170 line Filter¿Í Regular Expression: awk IV ------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. ------------------------------------------------------------------- 6) awkÀÇ Á¦¾î¹® (1) if Á¦¾î¹® awk ¸í·É¾î ³»¿¡¼­µµ Á¶°ÇÆÇ´Ü¿¡ µû¸¥ ÀÛ¾÷ Á¦¾î¸¦ ¼öÇàÇÒ ¼ö ÀÖ´Â if Á¦¾î¹®À» ¼öÇàÇÒ ¼ö ÀÖ´Ù. awk ¸í·É¾î¿¡¼­ ÁöÁ¤ °¡´ÉÇÑ if Á¦¾î¹®ÀÇ ±âº» Çü½ÄÀº ´ÙÀ½°ú °°´Ù. if (condition-expression) action [else] action ´ÙÀ½Àº awk ¸í·É¾î¿¡¼­ if Á¦¾î¹®À» »ç¿ëÇÑ ¿¹ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ avsize ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ /bin/df | /usr/bin/awk '{ s = s + $4} ¦¢ ¦¢ END { ¦¢ ¦¢ if (s/NR <= 40000) ¦¢ ¦¢ printf(Average File System Size is: %d\n", s/NR) ¦¢ ¦¢ else ¦¢ ¦¢ printf("*** WARNING AVERAGE FILE SYSTEM SIZE IS: %d. \ ¦¢ ¦¢ ACTION REQUIRED\n",s/NR) ¦¢ ¦¢ }' ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ $sh avsize Average File System Size is: 122083 À§ÀÇ ¿¹´Â df ¸í·ÉÀÇ ½ÇÇà °á°ú¸¦ awk ¸í·É¾î¿¡ Ç¥ÁØÀԷ ó¸®ÇÏ°í ÀÖ´Ù. ±×ÈÄ awk ¸í·É¾î´Â Ãâ·Â»óÀÇ °¢°¢ÀÇ ¶óÀγ»ÀÇ 4¹ø° Çʵå Áï, È­ÀÏ ½Ã½ºÅÛÀÇ ÃÑÇհ踦 ±¸ÇÑÈÄ À̸¦ s º¯¼ö¿¡ ÀúÀåÇÑÈÄ, END ¿¬»ê½Ä³»¿¡¼­ if¹®À» ¼öÇàÇÑ´Ù. if Á¦¾î¹®¿¡¼­ s º¯¼ö¿¡ ÀúÀåµÈ °ª(Áï, ¸ðµç È­ÀϽýºÅÛÀÇ ÇÕ°è)À» df ¸í·É¾îÀÇ Ãâ·Â ¶óÀμö(Áï, È­ÀÏ ½Ã½ºÅÛÀÇ °¹¼ö)·Î ³ª´©¾î È­ÀÏ ½Ã½ºÅÛÀÇ Æò±ÕÄ¡¸¦ ±¸ÇÑÈÄ ÀÌ °ªÀÌ 40000º¸´Ù Àû°Å³ª °°ÀºÁö¸¦ ÆÇ´ÜÇÏ¿©, Á¶°ÇÀÌ ÂüÀÌ¸é ±× Æò±ÕÄ¡¸¦ ¾Ë·ÁÁÖ´Â ¸Þ¼¼Áö¸¦ Ç¥½ÃÇÏ°í, °ÅÁþÀÏ °æ¿ì¿¡´Â WARNING ¸Þ¼¼Áö¸¦ Ç¥½ÃÇϵµ·Ï ÀÛ¼ºÇÑ ÇÁ·Î±×·¥ÀÌ´Ù. ( ÁÖÀÇ ) awk if ¸í·É¾î¿Í ShellÀÇ if ¸í·É¹®°ú È¥µ·ÇÏÁö ¸»¾Æ¾ß ÇÑ´Ù. (2) loop Á¦¾î¹® awk ¸í·É¾î¿¡¼­´Â if Á¦¾î¹®°ú ´õºÒ¾î ´ÙÀ½°ú °°Àº µÎ°¡Áö loop Á¦¾î¹®À» Áö¿øÇÑ´Ù. for(initializeCounter; testCounter; incrementCounter) action while(condition-expression) action À§ÀÇ µÎ°¡Áö loop Á¦¾î¹®»ó¿¡ Çϳª ÀÌ»óÀÇ actionÀ» ÁöÁ¤Çϱâ À§Çؼ­´Â Áß°ýÈ£({})·Î ¹­¾îÁÖ¾î¾ß ÇÑ´Ù. ( ÁÖÀÇ ) awk ¸í·É¾îÀÇ for¿Í while Á¦¾î¹®°ú ShellÀÇ for¿Í while Á¦¾î¹®À» È¥µ·ÇÏÁö ¸»±â ¹Ù¶õ´Ù. ´ÙÀ½Àº loop Á¦¾î¹®ÀÇ Ã³¸® °úÁ¤À» º¸¿©ÁÖ´Â ±×¸²ÀÌ´Ù. while loop for loop ¦¢ ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦£¦¡¦¡¦ª¦¡¦¡¦¤ ¦£¦¡¦¡¦ª¦¡¦¡¦¤Âü ¦£¦¡¦¡¦ª¦¡¦¡¦¤ initialize counter ¦¢ test ¦§¦¡¦¡¦© action(s)¦¢ ¦£¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦ª¦¡¦¤ ¦¦¦¡¦¡¦¨¦¡¦¡¦¥ ¦¦¦¡¦¡¦¡¦¡¦¡¦¥ ¦£¦¡¦© test counter ¦§¦¡¦¡¦¡¦¤ ¦¢°ÅÁþ °ÅÁþ¦¢ ¦¦¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¨¦¡¦¥Âü ¦¢ ¦¢ ¦¢ increment counter ¦¢ ¦¢ ¦¦¦¡¦¡¦¨¦¡¦¡¦¥ ¦£¦¡¦¡¦ª¦¡¦¡¦¤ ¦¢ ¦¢ ¦¢ action(s)¦¢ ¦¢ ¦¢ ¦¦¦¡¦¡¦¨¦¡¦¡¦¥ ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¦¢ ´ÙÀ½Àº loop Á¦¾î¹®À» »ç¿ëÇÏ´Â ¿¹Á¦ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ file2 ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ Mary Jones 20000 ¦¢ ¦¢ Harriet Forbes 40000 ¦¢ ¦¢ Tom Jenkins 45000 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ $awk '$1 == "Harriet"\ > {for (salary=$3; salary < 60000; salary = salary * 1.1) > printf("Salary is %d. Keep working\n",salary)}' file2 Salary is 40000. Keep working Salary is 44000. Keep working Salary is 48400. Keep working Salary is 53240. Keep working Salary is 58564. Keep working ÀÌ ¿¹¿¡¼­´Â awk ¸í·É¾î´Â ÀÔ·Â ¶óÀÎÀÇ Ã¹¹ø° Çʵ忡¼­ HarrietÀ̶ó´Â ¹®ÀÚ¿­ÀÌ Á¸ÀçÇÏ´ÂÁö¸¦ °Ë»öÇÑ´Ù. ¸¸ÀÏ ÇØ´ç ¹®ÀÚ¿­ÀÌ ÀÖÀ» °æ¿ì¿¡´Â for Á¦¾î¹®À» ¼öÇàÇÑ´Ù. ´ÙÀ½Àº for Á¦¾î¹®¿¡ÀÇÇØ ¼öÇàµÇ´Â °úÁ¤À» ¿ä¾àÇÑ °ÍÀÌ´Ù. 1. salary º¯¼ö¿¡ ¼¼¹ø° Çʵ忡 ÀÖ´Â °ªÀ» ¼³Á¤ÇÑ´Ù.(Áï, 40000) 2. salary º¯¼öÀÇ °ªÀÌ 60000º¸´Ù ÀûÀºÁö¸¦ °Ë»çÇÑ´Ù. 3. °Ë»ç °á°ú°¡ ÂüÀ̸é printf ¸í·É¹®À» ¼öÇàÇÑ´Ù. 4. ±×ÈÄ salary º¯¼ö¿¡ 1.1À» °öÇÑ´Ù. 5. ±×ÈÄ ´Ù½Ã salary º¯¼öÀÇ °ªÀÌ 60000 º¸´Ù ÀûÀºÁö¸¦ ´Ù½Ã °Ë»çÇÑ´Ù. °Ë»ç °á°ú°¡ ÂüÀÌ¸é ¶ÇÇѹø printf ¸í·É¹®À» ¼öÇàÇÑÈÄ 3¹ø¿¡¼­ 5¹ø±îÁöÀÇ ´Ü°è¸¦ °ÅÁþÀÌ µÉ¶§±îÁö °è¼ÓÀûÀ¸·Î ¹Ýº¹ ¼öÇàÇÑ´Ù. 6. ÀÌ ¿¹¿¡¼­´Â salary º¯¼öÀÇ °ªÀÌ 64420ÀÌ µÉ¶§ °Ë»ç°¡ °ÅÁþÀ̵Ǿî loop¸¦ Á¾·áÇÑ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ file1 ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ somefield otherfield 9999 whoknows ¦¢ ¦¢ information junk 45 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ $awk '{n=1 > while(n <= NF) > {printf("%s:",$n) > n = n + 1} > printf("\n)}' file1 somefield:otherfield:9999:whoknows: information:junk:45: ÀÌ ¿¹¿¡¼­´Â awk ¸í·É¾î°¡ ÀÔ·Â È­ÀÏÀÇ ¸ðµç ¶óÀο¡ ´ëÇؼ­ ÁöÁ¤ÇÑ ÀÛ¾÷À» ¼öÇàÇÏ°Ô µÈ´Ù. °¢°¢ÀÇ ¶óÀο¡ ´ëÇØ ¼öÇàµÇ´Â ÀÛ¾÷Àº ´ÙÀ½°ú °°´Ù. 1. n À̶ó´Â º¯¼ö°¡ 1·Î ¼³Á¤µÈ´Ù. 2. n º¯¼öÀÇ °ªÀÌ È­Àϳ»ÀÇ ÇÊµå ¼öº¸´Ù Àû°Å³ª °°Àº µ¿¾ÈÀº ÂüÀ̵ǰí, ¶óÀγ»ÀÇ °¢°¢ÀÇ ÇʵåÀÇ ³»¿ëÀÌ : ±¸º°ÀÚ¸¦ »ç¿ëÇÏ¿© ¸ðµÎ ÇÁ¸°Æ® µÇ¾îÁø´Ù. ±×¸®°í n º¯¼öÀÇ °ªÀÌ n+1ÀÌ µÈ´Ù. 3. n º¯¼öÀÇ °ªÀÌ È­Àϳ»ÀÇ ÇÊµå ¼öº¸´Ù Ŭ°æ¿ì¿¡´Â °ÅÁþÀÌ µÇ¾î, \n(New line) ¹®ÀÚ°¡ ÇÁ¸°Æ®µÈ´Ù. 7) awk ¸í·É¾î¸¦ ¸¶Ä¡¸é¼­ ´ÙÀ½Àº awk ¸í·É¾î¸¦ ¼Ò°³¸¦ ¸¶°¨Çϸ鼭, ÀÌÀü¿¡ awk ¿¬»êÀÚ¸¦ ¼Ò°³Çϸ鼭 »ç¿ëÇß´ø ¿¹Á¦¸¦ awk Á¦¾î¹®À» »ç¿ëÇÏ¿© ÀÛ¼ºÇÏ¿© ´Ù½ÃÇѹø ¼Ò°³ÇÑ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ prog ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ ls -l | awk ' ¦¢ ¦¢ BEGIN {print "\nFILE\tSIZE\tRUNNING-TOTAL\n"} ¦¢ ¦¢ /^-/{total=total+$5 ¦¢ ¦¢ print $9 "\t" $5 "\t] total} ¦¢ ¦¢ END {print "\nTotal is "total is " total "\n"}' ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ $prog FILE SIZE RUNNING-TOTAL file1 624 624 file2 627 1251 file3 168 1419 myfile 576 1995 Total is 1995 -------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­´Â ½© ÇÁ·Î±×·¡¹Ö °úÁ¤ÀÇ µÎ¹ø° ½Ç½À¹®Á¦¸¦ µå¸®µµ·Ï ÇÏ°Ú½À´Ï´Ù. -------------------------------------------------------------------------- #108 À¯´Ï½Ã½º (adunis2 ) Shell Program: ½ÇÀü ¿¬½À ¹®Á¦ 04/24 09:13 104 line Filter¿Í Regular Expression: ½ÇÀü¹®Á¦ ------------------------------------------------------------------- ¼ö°­ÀÚ ¿©·¯ºÐ²² À̹ø¿¡µµ ¿©·¯ºÐ ½º½º·Î ½© ÇÁ·Î±×·¡¹ÖÀÇ ÀÌÇصµ¸¦ ÃøÁ¤ÇÒ ¼ö ÀÖµµ·Ï µµ¿Íµå¸®±â À§ÇØ ´ÙÀ½°ú °°Àº ½ÇÀü¹®Á¦¸¦ µå¸³´Ï´Ù. Ȥ½Ã À¯´Ð½º ¿î¿µÃ¼Á¦¸¦ »ç¿ëÇÏ½Ç È¯°æ¿¡ ÀÖÁö ¾ÊÀ¸½Å ºÐµéÀº ÀÛ¼ºÇÑ ÇÁ·Î±×·¥À» ¸ÞÀÏ(adunis2)À̳ª ÁúÀÇ ÀÀ´ä ¸Þ´º¿¡ ¿Ã·ÁÁֽøé Á¦°¡ ´ë½ÅÇؼ­ ±× °á°ú¸¦ Å×½ºÆ®ÇÑ ÈÄ¿¡, ±× °á°ú¸¦ ¾Ë·Áµå¸®µµ·Ï ÇÏ°Ú½À´Ï´Ù. °¨»çÇÕ´Ï´Ù. ±×¸®°í ¼ö°­ÀÚ ¿©·¯ºÐ²²¼­ ½ÇÀü¹®Á¦¸¦ Ç®¼ö ÀÖ´Â ½Ã°£Àû ¿©À¯¸¦ µå¸®±â À§ÇØ ¾ÕÀ¸·Î 3ÀÏ µ¿¾È °­ÀǸ¦ ÈÞ°­ÇÕ´Ï´Ù. ------------------------------------------------------------------- 1. ÇöÀç ½Ã½ºÅÛ¿¡ ·Î±×ÀÎÇÏ°í ÀÖ´Â ¸ðµç »ç¿ëÀÚ¸¦ Ç¥½ÃÇÏ´Â who ¸í·É¾îÀÇ Ãâ·ÂÀ» Å͹̳Π½Äº°¸íÀ» ±âÁØÀ¸·Î Á¤·ÄÇÏ¿© Ãâ·ÂÇϵµ·Ï ÇÏ´Â ¸í·É¾î ¶óÀÎÀ» ÀÛ¼ºÇϽÿÀ. ( sort, who ¸í·É¾î¸¦ Âü°íÇÑ´Ù. ) Ãâ·Â¿¹) bin con Jun 20 19:00 root console Jun 20 08:10 user09 term/06 Jun 20 10:01 user10 term/04 Jun 20 10:02 ÈùÆ®) ÇÊµå ±¸º°ÀÚ·Î ½½·¹½¬¸¦ »ç¿ëÇϰųª ¹®ÀÚ À§Ä¡¸¦ ±âÁØÀ¸·Î Á¤·ÄÇÑ´Ù. 2. ½Ã½ºÅÛ»ó¿¡¼­ ps -el ¸í·ÉÀÇ ½ÇÇà °á°ú·Î Ãâ·ÂµÇ´Â ³»¿ëÁß, ÇöÀç ½ÇÇàµÇ°í ÀÖ´Â sh ÇÁ·Î¼¼½ºµé¸¸À» Ç¥½ÃÇϵµ·ÏÇÏ´Â ¸í·É¾î ¶óÀÎÀ» ÀÛ¼ºÇϽÿÀ. ( ps ¿Í grep ¶Ç´Â ps ¿Í awk ¸í·É¾î¸¦ ÀÌ¿ë. ) Ãâ·Â¿¹) 28722 console 0:02 sh 25855 con 0:01 sh 185 con1 0:00 sh 3. who ¸í·É¾îÀÇ Ãâ·Â¿¡¼­ »ç¿ëÀÚ À̸§°ú ÅÍ¹Ì³Î¸í¸¸À» ¹ßÃéÇÏ¿© Ãâ·ÂÇÏ´Â ¸í·É¾î ¶óÀÎÀ» ÀÛ¼ºÇϽÿÀ. À̶§ Ãâ·ÂÀº Å͹̳Π½Äº°¸íÀ» ±âÁØÀ¸·Î Á¤·ÄÇÏ¿© Ç¥½ÃÇÑ´Ù. Ãâ·Â¿¹) bin con root console user10 term/04 user09 term/06 ÈùÆ®) / ¸¦ ÇÊµå ±¸º°ÀÚ·Î ÀÌ¿ëÇÑ´Ù. 4. ½Ã½ºÅÛ³»¿¡¼­ ps -el ¸í·É¾îÀÇ ½ÇÇà °á°ú·Î »ý¼ºµÇ´Â ¼öÇàÁßÀÎ ¸ðµç ÇÁ·Î¼¼½º¿¡ ´ëÇÑ Á¤º¸¸¦ Ç¥½ÃÇÏ´Â ½© ÇÁ·Î±×·¥À» ÀÛ¼ºÇϽÿÀ. À̶§ Ãâ·Â °á°ú¸¦ PPID Çʵ带 ù¹ø° sort key·Î, PID¸¦ µÎ¹ø° sort key·Î Çؼ­ Á¤·ÄÇϵµ·Ï Ãâ·Â ³»¿ëÀ» Á¶Á¤ÇÏ¿© Ãâ·ÂÇÑ´Ù. À̶§ °¢°¢ÀÇ Ä÷³ Çì´õ´Â º¯°æµÇÁö ¾Êµµ·Ï ÁÖÀÇÇÑ´Ù. Ãâ·Â¿¹) F S UID PID PPID C PRI NI ADDR SZ WCHAN TTY TIME COMD 19 S 0 0 0 0 60 20 8009f465 2 c008f0d0 ? 0:01 sched 10 S 0 1 0 0 60 20 80198465 18 e0000000 ? 19:41 init 19 S 0 2 0 0 60 20 8019c465 0 c0015b60 ? 0:00 vhand 18 S 0 201 1 0 64 24 8027a465 14 d0130b70 ? 0:00 fssel 19 S 309 28722 1 0 60 20 801cf465 23 c008ebf8 console 0:01 sh 5. »ç¿ëÀÚ µî·ÏºÎÀÎ /etc/passwd È­ÀÏ¿¡ »õ·Î¿î »ç¿ëÀÚ¿¡ ´ëÇÑ Á¤º¸¸¦ µî·ÏÇÏ´Â ½© ÇÁ·Î±×·¥À» ÀÛ¼ºÇϽÿÀ. »õ·Î¿î »ç¿ëÀÚ¿¡ ´ëÇÑ Á¤º¸´Â /etc/passwd È­ÀÏÀÇ °¡Àå ¸¶Áö¸· ¶óÀο¡ Ãß°¡Çϵµ·Ï ÇÑ´Ù. Âü°í·Î /etc/passwd È­ÀÏ¿¡ ÀúÀåµÇ´Â °³°³ÀÇ »ç¿ëÀÚ¿¡ ´ëÇÑ Á¤º¸´Â ´ÙÀ½°ú °°Àº Çü½ÄÀÇ ÇÑ ¶óÀÎÀ¸·Î ±¸¼ºµÈ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ (Login-id):x:(UID):(GID):(Comment):(Home):(Shell) ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ () ºÎºÐÀº »ç¿ëÀڷκÎÅÍ ÀÔ·ÂÀ» ¹Þ¾Æµé¿© ó¸®Çϵµ·Ï ÇÁ·Î±×·¥À» ÀÛ¼ºÇÑ´Ù. ¶óÀγ»ÀÇ °¢°¢ÀÇ ÇʵåÀÇ Àǹ̴ ´ÙÀ½°ú °°´Ù. Login-id : »ç¿ëÀÚÀÇ ·Î±×ÀÎ À̸§ UID : »ç¿ëÀÚ¸¦ ½Äº°ÇÏ´Â ¹øÈ£ GID : »ç¿ëÀÚÀÇ ¼Ò¼Ó ±×·ìÀ» ½Äº°ÇÏ´Â ¹øÈ£ Comment : »ç¿ëÀÚ¿¡ °ü·ÃµÈ ÁÖ¼® Home : »ç¿ëÀÚÀÇ È¨ µð·ºÅ丮 Shell : ·Î±×ÀÎÀ» ¼öÇàÇßÀ»¶§ ÃÖÃÊ¿¡ °³½ÃµÇ´Â ÇÁ·Î¼¼½º À§ÀÇ ¶óÀÎÀ» È­ÀÏ¿¡ ÀúÀåÇϱâ À§Çؼ­´Â sed ¸í·É¾î¸¦ ÀÌ¿ëÇÑ´Ù. ÈùÆ®) ÇÁ·Î±×·¥À» ÀÛ¼ºÇÏ´Ùº¸¸é sed ¸í·É¾î»ó¿¡¼­ »ç¿ëµÇ´Â \(¿ª½½·¹½¬)ÀÇ Æ¯¼ö Àǹ̸¦ Á¦°ÅÇØ¾ß ÇÒ Çʿ並 ´À³¢°Ô µÉ °ÍÀÌ´Ù. ÈùÆ®) sed ¸í·É¾îÀÇ Ãâ·ÂÀ» /etc/passwd È­ÀÏ¿¡ ÀúÀåÇϵµ·Ï ÇÁ·Î±×·¥À» ÀÛ¼ºÇÑ´Ù. -------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­´Â ½© ÇÁ·Î±×·¥ÀÇ µð¹ö±ë(°ËÁõ) ¹æ½Ä¿¡ ´ëÇؼ­ °­ÀÇ ÇÕ´Ï´Ù. -------------------------------------------------------------------------- #111 À¯´Ï½Ã½º (adunis2 ) Shell Program Debugging I 04/28 10:03 169 line Shell ProgramÀÇ µð¹ö±ë(Debugging) ------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. ------------------------------------------------------------------- À̹ø °­ÀÇ¿¡¼­´Â ½© ÇÁ·Î±×·¥ÀÇ µð¹ö±ë½Ã¿¡ »ç¿ëµÉ¼ö ÀÖ´Â ¸î°¡Áö À¯´Ð½º ¸í·É¾î¿Í ¸î°¡Áö ½©ÀÇ ±â´Éµé¿¡ ´ëÇؼ­ ¼Ò°³ÇÕ´Ï´Ù. 1. set ¸í·É¾î ÀÌ¹Ì ±âº»ÀûÀÎ set ¸í·É¾îÀÇ »ç¿ë¹æ½ÄÀº ½© ÇÁ·Î±×·¥ÀÇ Æ÷Áö¼Å³Î ÆĶó¸ÞÅÍÀÇ ¼³Á¤ ¹æ½Ä¿¡ ´ëÇÑ ¼³¸í½Ã¿¡ ¼Ò°³Çß´Ù. ±×¿Ü¿¡µµ set ¸í·É¾î´Â ½©¿¡ ¼³Á¤µÇ¾î ÀÖ´Â ¿É¼ÇÀ» ¼³Á¤ ¶Ç´Â ÇØÁ¦Çϱâ À§ÇØ »ç¿ëÇÒ ¼ö ÀÖ´Ù. ½©ÀÇ ¿É¼ÇµéÀº ½©ÀÇ ÀÛ¾÷ ȯ°æÀ» »ç¿ëÀÚ°¡ ÀçÁ¤ÀÇÇÒ ¼ö ÀÖµµ·Ï ÇϱâÀ§Çؼ­ Á¦°øµÇ´Â ½©ÀÇ Æ¯Â¡ÀûÀÎ ±â´ÉÀÌ´Ù. ÀÚ¼¼ÇÑ ½©ÀÇ ¿É¼ÇµéÀÇ ¿¹´Â ÀÌÈÄ ¼³¸íµÈ´Ù. ½©ÀÇ ¿É¼ÇµéÀº set ¸í·É¾î¿¡ - ¶Ç´Â + Áö½ÃÀÚ¿Í ÇÔ²² set ¸í·É¾îÀÇ ¿É¼ÇÀ» ÁöÁ¤ÇÔ¿¡ ÀÇÇØ ¼³Á¤ ¶Ç´Â ÇØÁ¦ÇÒ ¼ö ÀÖ´Ù. Áï, ½© ¿É¼ÇÀ» ¼³Á¤Çϱâ À§Çؼ­´Â Á¦¾îÇÒ ´ë»óÀ̵Ǵ ½© ¿É¼Ç¿¡ »óÀÀÇÏ´Â set ¸í·É¾îÀÇ ¿É¼ÇÀ» - Áö½ÃÀÚ¿Í ÇÔ²² ÁöÁ¤Çϸç, ½© ¿É¼ÇÀ» ÇØÁ¦Çϱâ À§Çؼ­´Â ±×¿¡ »óÀÀÇÏ´Â set ¿É¼ÇÀ» + Áö½ÃÀÚ¿Í ÇÔ²² ÁöÁ¤ÇÑ´Ù. ±×¿¹´Â ´ÙÀ½°ú °°´Ù. set -x ¦¡¦¡¦¡¦¤ ¦¢ ¿¹¿¡¼­ set ¸í·É¾îÀÇ ¿É¼Ç x´Â ½© ¿É¼ÇÁß xtrace¿¡ set +x ¦¡¦¡¦¡¦¥ »óÀÀÇÏ´Â ¿É¼ÇÀÌ´Ù. ¶ÇÇÑ ÇöÀç ¼³Á¤µÇ¾î ÀÖ´Â ½© ¿É¼ÇµéÀº ½© º¯¼öÀÎ $- º¯¼öÀÇ ³»¿ëÀ» Ç¥½ÃÇÔÀ¸·Î½á È®ÀÎ °¡´ÉÇÏ´Ù. ±× ¿¹´Â ´ÙÀ½°ú °°´Ù. $echo $- vhs »ç¿ëÀÚÀÇ ÀÛ¾÷À» À§ÇØ ½©ÀÌ ±âµ¿µÉ¶§, ÀϹÝÀûÀ¸·Î ¸¹ÀÌ »ç¿ëµÇ´Â ¿É¼Çµé¸¸ÀÌ ¼³Á¤µÈ´Ù. µû¶ó¼­ ±×¿ÜÀÇ ¿É¼ÇµéÀ» ¼³Á¤Çϱâ À§Çؼ­´Â set ¸í·É¾î¸¦ »ç¿ëÇؼ­ »ç¿ëÀÚ°¡ Á÷Á¢ ¼³Á¤ÇÑ´Ù. ´ÙÀ½Àº »ç¿ëÀÚ°¡ ÀÛ¾÷ȯ°æÀ» Á¦¾îÇϱâ À§Çؼ­ »ç¿ëÇÒ¼ö ÀÖ´Â ½© ¿É¼ÇµéÀÌ´Ù. ¦£¦¡¦¡¦¡¦¤ ¦¢Bourne¦§¦¡¦¡¦¡¦¡¦¡¦Á ¦¢Korn ¦¢Korn ¦­ ¦§¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢¿É¼Ç ¦¢¿É¼Ç ¦­ ÀÇ ¹Ì ¦¢ ¦§¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ -- ¦¢ ¦­- ·Î ½ÃÀ۵Ǵ ´ÙÀ½ÀÇ ÀÎÀÚµéÀ» ¿É¼ÇÀ¸·Î ó¸®ÇÏÁö ¦¢ ¦¢ ¦¢ ¦­¾Ê´Â´Ù. ¦¢ ¦§¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ -a ¦¢allexport ¦­ÀÌÈÄ¿¡ Á¤ÀǵǴ ¶Ç´Â ¼öÁ¤µÇ´Â ¸ðµç º¯¼öµéÀ» ¦¢ ¦¢ ¦¢ ¦­ÀÚµ¿ÀûÀ¸·Î export ÇÑ´Ù. ¦¢ ¦§¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ -e ¦¢errexit ¦­½ÇÇàÇÑ ¸í·É¾îÀÇ Á¾·á»óÅ°¡ 0ÀÌ ¾Æ´Ñ Á¾·á»óŸ¦ ¦¢ ¦¢ ¦¢ ¦­°®À¸¸é ½©À» Á¾·áÇÑ´Ù. ¦¢ ¦§¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ -f ¦¢noglob ¦­È­ÀÏ¸í »ý¼ºÀ» ±ÝÁöÇÑ´Ù. ¦¢ ¦§¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ -h ¦¢trackall ¦­FunctionÀÌ Á¤ÀǵǾúÀ»¶§ Function³»¿¡ »ç¿ëµÈ ¦¢ ¦¢ ¦¢ ¦­¸í·É¾îµéÀÇ À§Ä¡(Àý´ë°æ·Î)¸¦ ±â¾ïÇÑ´Ù. ¦¢ ¦§¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ -k ¦¢keyword ¦­¸í·É¾î ¶óÀο¡ À§Ä¡ÇÏ°í ÀÖ´Â keyword=value Çü½ÄÀǦ¢ ¦¢ ¦¢ ¦­ÀÎÀÚµéÀ» ó¸®ÇÏ°í, (´Ü; ¸í·É¾î ÀÌÀü¿¡ ¼±¾ðµÇ¾î ¦¢ ¦¢ ¦¢ ¦­Àִ°ÍÀº Á¦¿Ü) ±×µéÀ» ¸í·É¾îÀÇ È¯°æ¿¡ ¹èÄ¡ÇÑ´Ù. ¦¢ ¦§¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ -n ¦¢noexec ¦­¸í·É¾î¸¦ ½ÇÇàÇÏÁö ¾Ê°í ¸í·É¾î¸¦ Àд´Ù. ¦¢ ¦§¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ -t ¦¢ ¦­ÇϳªÀÇ ¸í·É¾î¸¦ ½ÇÇàÇÑ ÈÄ¿¡ ½©À» Á¾·áÇÑ´Ù. ¦¢ ¦§¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ -u ¦¢nounset ¦­°ªÀÌ ÇÒ´çµÇ¾î ÀÖÁö¾ÊÀº º¯¼ö³ª Æ÷Áö¼Å³Î ÆĶó¸ÞÅÍ ¦¢ ¦¢ ¦¢ ¦­°¡ ÂüÁ¶µÇ¸é ¿¡·¯¸¦ Ç¥½ÃÇÑ´Ù. ¦¢ ¦§¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ -v ¦¢verbose ¦­»ç¿ëÀÚ°¡ ÀÔ·ÂÇÑ ¸í·É¾î ¶óÀÎÀ» ½©ÀÌ ÀоîµéÀÎ ¦¢ ¦¢ ¦¢ ¦­±×´ë·Î È­¸é»ó¿¡ ÇÁ¸°Æ®ÇÑ´Ù. ¦¢ ¦§¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦À¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ -x ¦¢xtrace ¦­½ÇÇàÇÒ ¸í·É¾î ¶óÀÎÀ» ½©ÀÌ ¹ø¿ªÇÑÈÄÀÇ ¸í·É¾î ¦¢ ¦¢ ¦¢ ¦­¶óÀÎ »óÅ·Π+ Ç¥½ÃÀÚ¸¦ µ¡ºÙ¿© ÇÁ¸°Æ®ÇÑ´Ù. ¦¢ ¦¦¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¿¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÀÌ»óÀÇ ¼³¸íÀ¸·Î ½©¿¡¼­ »ç¿ëÀÚ°¡ ÀÛ¾÷ ȯ°æÀ» Á¦¾îÇϱâ À§ÇØ »ç¿ë°¡´ÉÇÑ ¿É¼Ç¿¡´ëÇÑ ¼³¸íÀº ¸¶Ä¡°Ú´Ù. ±×·±µ¥ ÀÌ ¿É¼ÇµéÁß ½© ÇÁ·Î±×·¥À» µð¹ö±ëÇϱâ À§ÇØ ¿ä±äÇÏ°Ô »ç¿ëÇÒ¼ö ÀÖ´Â ¿É¼ÇµéÀÌ ÀÖ´Ù. ±×°ÍÀº x, v ±×¸®°í n ¿É¼ÇÀÌ´Ù. . -x ¿É¼ÇÀ» ¼³Á¤Çϸé È­Àϸí, º¯¼ö ±×¸®°í ¸í·É¾î ´ëÄ¡¿Í ÀÔÃâ·Â ¹æÇâÀüȯÀÌ ¼öÇàµÈÈÄÀÇ »óÅ·Î, ½ÇÇàµÉ ¸í·É¾î ¶óÀÎÀÌ ½©¿¡ ÀÇÇØ ÇÁ¸°Æ® µÇ¾îÁø´Ù. ÀÌ °á°ú·Î Ãâ·ÂµÇ´Â ¸ðµç ¸í·É¾î ¶óÀÎÀÇ Ã³À½¿¡´Â + ½É¹úÀÌ Ç¥½ÃµÈ´Ù. º¯¼ö ÇÒ´ç ¸í·É¹®Àº À§ÀÇ Çü½Ä¿¡¼­ Á¦¿ÜµÈ´Ù. . -v ¿É¼ÇÀ» ¼³Á¤ÇÏ¸é ¹ø¿ªÀüÀÇ Ã³¸®µÇ´Â °¢°¢ÀÇ ¸í·É¾î ¶óÀÎÀ» Ç¥½ÃÇÑ´Ù. . ÀÌ·¯ÇÑ ¿É¼ÇµéÀº ½© ÇÁ·Î±×·¥ÀÇ µð¹ö±ë½Ã¿¡ À¯¿ëÇÑ µµ±¸ÀÌ°í, ½© ÇÁ·Î±×·¥ÀÇ Ã³À½¿¡ 'set -xv' ¶ó´Â ¸í·É¾î¸¦ ±â¼úÇÔÀ¸·Î½á ¼Õ½±°Ô ¼³Á¤ÇÒ ¼ö ÀÖ´Ù. . -n ¿É¼ÇÀº ÁßøµÈ Á¦¾î¹®µé Áï, do ... done ¶Ç´Â if ... fi Á¦¾î¹®ÀÇ ÁöÁ¤ ¿À·ù¸¦ °Ë»çÇϴµ¥ À¯¿ëÇÏ´Ù. 2. set ¸í·É¾î ¿¹Á¦ ¿©±â¼­ ÇöÀç ½©ÀÇ v¿Í x ¿É¼ÇÀ» ¼³Á¤¹× Á¦°ÅÇϱâ À§ÇØ ¸í·É¾î ¶óÀλ󿡼­ set ¸í·É¾î¸¦ ÀÌ¿ëÇÑ´Ù. ±×·¯³ª set ¸í·É¾î´Â ½© ÇÁ·Î±×·¥¿¡ Àû¿ëÇϱâ À§Çؼ­ ½© ÇÁ·Î±×·¥³»¿¡¼­µµ ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ prog ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ if [ $# -eq 0 ] ¦¢ ¦¢ then # ÀÌ ÇÁ·Î±×·¥Àº ½© ¿É¼ÇÀ» ¦¢ ¦¢ set -- W X Y # ¼³¸íÇϱâ À§ÇØ »ç¿ëÇÑ´Ù. ¦¢ ¦¢ fi ¦¢ ¦¢ var=Testing ¦¢ ¦¢ echo $var $1 $2 $3 > file2 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ Bourne/Korn ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢$echo "$-" ¦¢< ÇöÀç ¼³Á¤µÇ¾î ÀÖ´Â ½© ¿É¼ÇÀ» ¦¢s ¦¢ È®ÀÎÇÏ°í ÀÖ´Ù. ¦¢$set -vx ¦¢< v ¿Í x ¿É¼ÇÀ» ¼³Á¤ÇÏ°í ÀÖ´Ù. ¦¢$echo "$-" ¦¢ ¦¢echo "$-" ¦¢< v ¿É¼Ç ¼³Á¤ÀÇ °á°ú ¦¢+echo xvs ¦¢< x ¿É¼Ç ¼³Á¤ÀÇ °á°ú ¦¢xvs ¦¢< ¸í·É¾î ¶óÀÎ ½ÇÇà °á°ú ¦¢$prog A B C ¦¢ ¦¢prog A B C ¦¢ ¦¢+prog A B C ¦¢ ¦¢$cat file2 ¦¢ ¦¢cat file2 ¦¢ ¦¢+cat file2 ¦¢ ¦¢Testing A B C ¦¢ ¦¢$set +vx ¦¢< v ¿Í x ¿É¼ÇÀ» Á¦°ÅÇÏ°í ÀÖ´Ù. ¦¢set +vx ¦¢ ¦¢+set +vx ¦¢ ¦¢$echo "$-" ¦¢< v¿Í x ¿É¼ÇÀ» Á¦°ÅÇÔÀ¸·Î½á ¸í·É¾î ¦¢s ¦¢ ½ÇÇà °á°ú¸¸ÀÌ Ãâ·ÂµÇ°í ÀÖ´Ù. ¦¢$sh -x prog D E F ¦¢< sh ¸í·É¾î¸¦ ÅëÇØ ½© ÇÁ·Î±×·¥À» ¦¢+[3 -eq 0] ¦¢ ½ÇÇàÇϸ鼭, ½© ¿É¼ÇÀ» ÇÔ²² ÁöÁ¤ ¦¢var=Testing ¦¢ ÇÏ°í ÀÖ´Ù. ¿©±â¼­ º¯¼ö ÇÒ´ç ¦¢+echo Testing D E F ¦¢ Á¦¾î¹®Àº °ËÁõµÇÁö ¾Ê°í ÀÖÀ½À» ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÁÖ¸ñÇÑ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ Korn ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢KORN> PS4="trace> " ¦¢< trace ¸ðµå½Ã¿¡ »ç¿ëÇÒ ÇÁ·ÒÇÁÆ®¸¦ ¦¢KORN> export PS4 ¦¢ ¼±¾ðÇÏ°í ÀÖ´Ù. ¦¢KORN> set -o xtrace ¦¢< trace ¸ðµå¸¦ ¼±¾ðÇÏ°í ÀÖ´Ù. ¦¢KORN> set -v ¦¢< v ¿É¼ÇÀ» ¼³Á¤ÇÏ°í ÀÖ´Ù. ¦¢trace> set -v ¦¢ ¦¢KORN> echo $- ¦¢ ¦¢echo $- ¦¢ ¦¢trace> echo ivsxm ¦¢ ¦¢ivsxm ¦¢< ¸í·É¾îÀÇ ½ÇÇà °á°ú ¦¢KORN> set +o verbose ¦¢ ¦¢set +o verbose ¦¢ ¦¢trace> set +o verbose ¦¢ ¦¢KORN> set +x ¦¢ ¦¢KORN> ksh -x progb D E F ¦¢< progb È­ÀÏÀÇ ³»¿ëÀ» ½ÇÇàÇϴµ¥ ¦¢trace> [3 -eq 0] ¦¢ À־ x ¿É¼ÇÀ» ¼³Á¤ÇÏ¿© ½ÇÇàÇÏ°í ¦¢trace> var=Testing ¦¢ ÀÖ´Ù. Korn Shell¿¡¼­´Â º¯¼öÇÒ´ç ¦¢trace> echo Testing D E F ¦¢ ¸í·É¹®µµ °ËÁõÇØÁÖ°í ÀÖ´Ù. ¦¢trace> 1> file2 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ --------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­µµ ½© ÇÁ·Î±×·¥ÀÇ µð¹ö±ë ¹æ½Ä¿¡ ´ëÇؼ­ °è¼ÓÇÏ¿© ¼³¸íÇÕ´Ï´Ù. --------------------------------------------------------------------------- #112 À¯´Ï½Ã½º (adunis2 ) Shell Program Debugging II 04/29 09:58 90 line Shell ProgramÀÇ µð¹ö±ë(Debugging) II ------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. ------------------------------------------------------------------- 3. unset ¸í·É¾î ½© ÇÁ·Î±×·¥À» ÀÛ¼ºÇÏ´Ù º¸¸é, ÀÌÀü¿¡ Á¤ÀÇµÈ º¯¼ö¸¦ Á¦°ÅÇÒ ÇÊ¿ä°¡ ÀÖÀ»¼ö ÀÖ´Ù. ÀÌ·¯ÇÑ º¯¼ö¿¡ ´ëÇÑ Á¤ÀǸ¦ Á¦°ÅÇÏ´Â ÀÛ¾÷Àº unset ¸í·É¾î¸¦ »ç¿ëÇÏ¿© ¼öÇàÇÒ ¼ö ÀÖ´Ù. ( ÁÖÀÇ ) unset ¸í·É¾î´Â ÀбâÀü¿ë º¯¼ö¹× IFS, PATH, PS1, PS2 µî°ú °°Àº ½© ¿¹¾à º¯¼ö¿¡´Â »ç¿ëµÉ ¼ö ¾ø´Ù. ÀÌ¹Ì Á¤ÀǵǾî ÀÖ´Â º¯¼öµéÀ» È®ÀÎÇϱâ À§ÇÑ env¿Í set ¸í·É¾î¸¦ ½ÇÇàÇصµ unset ¸í·É¾î°¡ ¼öÇàµÈ º¯¼öµéÀº Ç¥½ÃµÇÁö ¾Ê´Â´Ù. ´ÙÀ½Àº unset ¸í·É¾îÀÇ »ç¿ë¿¹¸¦ º¸¿©ÁÖ´Â ¿¹ÀÌ´Ù. ( ¿¹Á¦ ) $x=100 $echo $x 100 $unset x $echo $x <------ unset µÇ¾úÀ½À¸·Î ¾Æ¹«°Íµµ Ç¥½ÃµÇÁö $ ¾Ê°í ÀÖ´Ù. 4. readonly ¸í·É¾î readonly ¸í·É¾î´Â °ªÀÌ º¯°æµÇ¾îÁ®¼­´Â ¾ÈµÉ º¯¼ö¸¦ ÁöÁ¤Çϱâ À§Çؼ­ »ç¿ëµÈ´Ù. readonly ¸í·É¾î¸¦ ÅëÇØ ÀбâÀü¿ë º¯¼ö·Î ¼±¾ðµÈ º¯¼öµéÀº unset ¶Ç´Â °ªÀ» º¯°æÇÒ ¼ö ¾ø´Ù. ÀÌ·± ÀбâÀü¿ë º¯¼ö ±â´ÉÀº Á¦Çѽ©(Restricted Shell)¿¡¼­ ºó¹øÇÏ°Ô »ç¿ëµÇ¾îÁø´Ù. ÀÌ¿¡ ´ëÇÑ ÀÚ¼¼ÇÑ ¼³¸íÀº À̹ø °úÁ¤¿¡¼­´Â ¼Ò°³µÇÁö ¾Ê´Â´Ù. ´ÙÀ½Àº readonly ¸í·É¾î¸¦ »ç¿ëÇÏ´Â ¿¹ÀÌ´Ù. ( ¿¹Á¦ ) $readonly PATH HOME $HOME=. HOME: is read only 5. eval ¸í·É¾î ÀÌ¹Ì ¼³¸íÇß´ø´ë·Î ¸í·É¾î ¶óÀÎÀ» Ä¿³ÎÀÌ ½ÇÇàÇϱâ Àü¿¡, ½©¿¡ ÀÇÇØ È­ÀÏ¸í ´ëÄ¡, º¯¼ö ´ëÄ¡, ÀÔÃâ·Â ¹æÇâÀüȯµîÀÇ ÀÛ¾÷À» ¼öÇàÇϱâ À§ÇÑ ¸í·É¾î ¶óÀο¡ ´ëÇÑ ÇѹøÀÇ ¹ø¿ª ÀÛ¾÷ÀÌ ¼öÇàµÈ´Ù. ½©Àº ÇϳªÀÇ ¸í·É¾î ¶óÀÎÀ» Çص¶Çϱâ À§ÇÑ ÀÏÁ¤ÇÑ ¹ø¿ªÀýÂ÷¸¦ °®°í ÀÖ´Ù. ÀÌ·ÎÀÎÇØ ºÎÁ¤È®ÇÏ°Ô ¹ø¿ªµÇ¾îÁö´Â º¯¼öµéÀÌ ÀÖÀ» ¼ö ÀÖ´Ù. ÀÌ·± °æ¿ì eval ¸í·É¾î¸¦ ÅëÇØ ±× ½ÇŸ¦ °ËÁõÇÒ ¼ö ÀÖ´Ù. Áï, ÀÌ¿Í°°Àº °æ¿ì ÇϳªÀÇ ¸í·É¾î ¶óÀο¡ ´ëÇÏ¿© µÎ¹ø ¿¬¼ÓÇÏ¿© ¹ø¿ª ÀÛ¾÷À» ¼öÇàÇϵµ·Ï ÁöÁ¤ÇÔÀ¸·Î½á ¹ø¿ª ÀýÂ÷·Î ÀÎÇÑ ÇÁ·Î±×·¥ ¿À·ù¸¦ °ËÁõÇÒ ¼ö ÀÖ´Ù. ´ÙÀ½Àº ¸í·É¾î ¶óÀÎ ¹ø¿ªÀýÂ÷·Î ÀÎÇÑ ¸í·É¾î ¶óÀÎ ¿À·ù¸¦ º¸¿©ÁÖ´Â ¿¹Á¦ÀÌ´Ù. ( ¿¹Á¦ ) $pipe="|" $ls $pipe wc -l |: No such file or directory wc: No such file or directory -l: No such file or directory $eval ls $pipe wc -l 16 ù¹ø° ls ¸í·É¾î¸¦ ºÐ¼®Çغ¸ÀÚ.¿©±â¼­ »ç¿ëÀÚ´Â ÆÄÀÌÇÁ ½Éº¼ÀÎ |¸¦ »çÀü¿¡ º¯¼ö pipe¿¡ ÀúÀåÇØ µÎ¾ú´Ù°¡ À̸¦ ¸í·É¾î ¶óÀλ󿡼­ ÂüÁ¶ÇÏ·Á°í ÇÏ°í ÀÖ´Ù. ½ÇÇà °á°ú¸¦ º¸¸é ¿¡·¯ 󸮰¡ µÇ°í ÀÖ´Ù. ¿Ö±×·²±î? ±×³É º¸¸éÀº ÀüÇô ¸í·É¾î ¶óÀÎ»ó¿¡ ¿À·ù°¡ ¾ø´Â °ÍÀ¸·Î º¸ÀδÙ. ±×·¯³ª ÀÚ¼¼È÷ º¸¸éÀº Áß´ëÇÑ ¿À·ù°¡ ÀÖÀ½À» º¼¼ö ÀÖ´Ù. ÆÄÀÌÇÁ¸¦ ÅëÇÑ Ãâ·Â ¹æÇâÀüȯÀº ½©¿¡ÀÇÇØ Ã³¸®°¡ µÇ¾î¾ß Çϴµ¥, ½©Àº pipe¶ó´Â º¯¼ö¸¦ ÆÄÀÌÇÁ ½Éº¼ÀÎ |·Î ´ëÄ¡ÇÑÈÄ À̸¦ ±×´ë·Î Ä¿³Î¿¡ Àü´ÞÇÏ¿© ½ÇÇàÀ» ¿ä±¸Ç߱⠶§¹®¿¡ ÀÌ¿Í °°Àº °á°ú°¡ ÃÊ·¡µÈ °ÍÀÌ´Ù. ( ÀÌ ºÎºÐ¿¡ ´ëÇØ Àß ÀÌÇØ°¡ °¡Áö ¾ÊÀ» °æ¿ì¿¡´Â ÀÌ¹Ì °­ÀÇÇÑ ½©ÀÇ ¸í·É¾î ¶óÀΠ󸮰úÁ¤ °­ÀǸ¦ ´Ù½Ã È®ÀÎÇϱ⠹ٶõ´Ù. ) ÀÌ°æ¿ì µÎ¹ø° ¿¹Á¦¿Í °°ÀÌ eval ¸í·É¾î¸¦ ½ÇÇàÇÔÀ¸·Î½á ÇÁ·Î±×·¥À» °ËÁõÇÒ ¼ö ÀÖ´Ù. Áï eval ¸í·É¾î ¼öÇàÈÄ Á¤»óÀûÀÎ ÀÛ¾÷ÀÌ ¼öÇàµÇ´Â °ÍÀ¸·Î ¹ø¿ªÀýÂ÷·Î ÀÎÇÑ ¿À·ùÀÓÀ» È®ÀÎÇÒ ¼ö ÀÖ´Ù. --------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­µµ ½© ÇÁ·Î±×·¥ÀÇ µð¹ö±ë ¹æ½Ä¿¡ ´ëÇؼ­ °è¼ÓÇÏ¿© ¼³¸íÇÕ´Ï´Ù. --------------------------------------------------------------------------- #113 À¯´Ï½Ã½º (adunis2 ) Shell Program Debugging III 04/30 09:41 102 line Shell ProgramÀÇ µð¹ö±ë(Debugging) III ------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ »çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇ ÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. ------------------------------------------------------------------- 6. cat ¸í·É¾î¸¦ »ç¿ëÇÑ ÇÁ·Î±×·¥ °ËÁõ ÇÁ·Î±×·¥À» ¼öÇàÇÏ´Ùº¸¸é ½© ÇÁ·Î±×·¥ ¶Ç´Â µ¥ÀÌŸ È­Àϼӿ¡ È­¸é»ó¿¡´Â Ç¥½ÃµÇÁö ¾Ê´Â Á¦¾î¹®ÀÚ(Control Character)·Î ÀÎÇØ ¿¡·¯°¡ ¹ß»ýÇÏ´Â °æ¿ì°¡ ÀÖÀ»¼ö ÀÖ´Ù. Á¦¾î¹®ÀÚµéÀº È­¸é»ó¿¡ Ç¥½Ã¸¸µÇÁö ¾ÊÀ»»Ó ¾ö¿¬ÇÑ ÇϳªÀÇ ¹®ÀڷΠ󸮵DZ⠶§¹®¿¡ ¸í·É¾î ¶óÀÎÀÇ ºÐ¼®½Ã ¾û¶×ÇÑ °á°ú¸¦ °¡Á®¿Ã¼ö ÀÖ´Ù. »Ó¸¸¾Æ´Ï¶ó Á¦¾î¹®ÀÚµé·Î ÀÎÇÏ¿© Å͹̳ÎÀÌ ´Ù¿îµÇ´Â Çö»ó Áï, Hang upÀ» ÃÊ·¡ÇÒ ¼öµµ Àֱ⠶§¹®¿¡ ÇÁ·Î±×·¥³»ÀÇ Á¦¾î¹®ÀÚ Á¸Àç ¿©ºÎ¸¦ È®ÀÎÇÒ ÇÊ¿ä°¡ ÀÖ´Ù. À§¿Í°°ÀÌ ÇÁ·Î±×·¥ ¶Ç´Â µ¥ÀÌŸ È­Àϼӿ¡ Ȥ½Ã µé¾î ÀÖÀ»¼öµµ ÀÖ´Â Á¦¾î¹®ÀÚµéÀÇ È®ÀÎÀº cat ¸í·É¾î¿Í ÇÔ²² ±×ÀÇ ¿É¼ÇÀ» »ç¿ëÇÏ¿© ¼öÇàÇÒ ¼ö ÀÖ´Ù. ´ÙÀ½Àº cat ¸í·É¾îÀÇ ¿É¼Ç¿¡ ´ëÇÑ ¼³¸íÀÌ´Ù. ¦£¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ ¿É¼Ç ¦¢ ÀÇ ¹Ì ¦¢ ¦§¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ -e ¦¢°¢ ¶óÀÎÀÇ ³¡¿¡ $ ½Éº¼À» ºÙÀδÙ. v ¿É¼Ç°ú ÇÔ²² »ç¿ëÇÑ´Ù. ¦¢ ¦§¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ -t ¦¢ÅÇ ¹®ÀÚ¸¦ ´ë½ÅÇÏ¿© ^i·Î Ç¥½ÃÇÑ´Ù. v ¿É¼Ç°ú ÇÔ²² »ç¿ëÇÑ´Ù. ¦¢ ¦§¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ -v ¦¢ÇÁ¸°Æ® ºÒ°¡´ÉÇÑ Á¦¾î¹®ÀÚ¸¦ ´ëÄ¡ Çü½ÄÀ¸·Î Ç¥½ÃÇÑ´Ù. ¦¢ ¦¦¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ´ÙÀ½Àº v ¿É¼Ç ÁöÁ¤½Ã Á¦¾î¹®ÀÚ¸¦ ´ë½ÅÇÏ´Â ´ëÄ¡ Çü½ÄÀ» ³ªÅ¸³½´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ASCII Äڵ尪 ¦¢ ´ëÄ¡ Çü½Ä ¦¢ ¦¢ASCII Äڵ尪 ¦¢ ´ëÄ¡ Çü½Ä ¦¢ ¦¼¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦»¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¾ ¦¼¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦»¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¬¦¾ ¦¢ '\000' ¦¢ ^@ ¦¢ ¦¢ '\021' ¦¢ ^Q ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ '\001' ¦¢ ^A ¦¢ ¦¢ '\022' ¦¢ ^R ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ '\002' ¦¢ ^B ¦¢ ¦¢ '\023' ¦¢ ^S ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ '\003' ¦¢ ^C ¦¢ ¦¢ '\024' ¦¢ ^T ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ '\004' ¦¢ ^D ¦¢ ¦¢ '\025' ¦¢ ^U ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ '\005' ¦¢ ^E ¦¢ ¦¢ '\026' ¦¢ ^V ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ '\006' ¦¢ ^F ¦¢ ¦¢ '\027' ¦¢ ^W ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ '\007' ¦¢ ^G ¦¢ ¦¢ '\030' ¦¢ ^X ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ '\010' ¦¢ ^H ¦¢ ¦¢ '\031' ¦¢ ^Y ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ '\011' ¦¢ ^I ¦¢ ¦¢ '\032' ¦¢ ^Z ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ '\012' ¦¢ $ ¦¢ ¦¢ '\033' ¦¢ ^[ ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ '\013' ¦¢ ^K ¦¢ ¦¢ '\034' ¦¢ ^\ ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ '\014' ¦¢ ^L ¦¢ ¦¢ '\035' ¦¢ ^] ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ '\015' ¦¢ ^M ¦¢ ¦¢ '\036' ¦¢ ^^ ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ '\016' ¦¢ ^N ¦¢ ¦¢ '\037' ¦¢ ^_ ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ '\017' ¦¢ ^O ¦¢ ¦¢ '\040' ¦¢ ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ '\020' ¦¢ ^P ¦¢ ¦¢ '\177' ¦¢ ^? ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ´ÙÀ½Àº È­ÀϼÓÀÇ Á¦¾î¹®ÀÚ¸¦ È®ÀÎÇغ¸´Â cat ¸í·É¾îÀÇ ¿¹ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢file1 ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢This data file has spaces ¦¢ ÀÌ È­ÀÏÀ» ÀÚ¼¼È÷ º¸¸é ¦¢ and tabs and newline, but I ¦¢ È­Àϳ» °¢°¢ÀÇ ´Ü¾îµé°£¿¡ ¦¢cannot see where they are. It also ¦¢ °£°ÝÀÌ ÀÏÁ¤ÇÏÁö ¾Ê´Â °ÍÀ» ¦¢has a bunch of unprintable ¦¢ º¼¼ö ÀÖ´Ù. ¿Ö ±×·²±î? ¦¢characters ¦¢ ¾Æ¸¶ »ç¿ëÀÚ°¡ ÀϺη¯ ´Ü¾îµé ¦¢ ¦¢ »çÀÌ¿¡ °ø¹éÀ» ÁöÁ¤ÇÏ¿© ¦¢ ¦¢ °£°ÝÀ» µÎÁö´Â ¾Ê¾ÒÀ» °ÍÀÌ´Ù. ¦¢embedded in it. ¦¢ ÀÌ °æ¿ì cat ¸í·É¾î¸¦ ÅëÇØ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥È®ÀÎÇÒ ¼ö ÀÖ´Ù. $cat -vet file1 This data file has spaces$ ÀÌ °á°ú»ó¿¡¼­ °¢°¢ÀÇ ¶óÀÎÀÇ and^Itabs and newline, but I$ ³¡¿¡´Â e ¿É¼ÇÀ¸·Î ÀÎÇØ $°¡ cannot see where they are. It also$ Ç¥½ÃµÇ°í ÀÖ°í, t ¿É¼ÇÀ¸·Î has a bunch of unprintable$ ÀÎÇØ ÅÇ ¹®ÀÚ ´ë½Å¿¡ ^I°¡ characters$ Ç¥½ÃµÇ°í ÀÖ°í, ±âŸ Á¦¾î¹®ÀÚ¸¦ ^A^B^C^E^F^I$ ´ë½ÅÇØ ´ëÄ¡¹®ÀÚ°¡ Ç¥½ÃµÇ°í ^K^L$ Àִ°ÍÀ» È®ÀÎÇÒ ¼ö ÀÖ´Ù. ^V^W^X^Y^Zembedded in it.$ ## Á¦¾î¹®ÀÚ °¢°¢ÀÇ Á¤È®ÇÑ Àǹ̴ ASCII ÄÚµåÇ¥¸¦ ÂüÁ¶Çϱ⠹ٶõ´Ù. ## --------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­´Â ½© ÇÁ·Î±×·¥ÀÇ Á¦¾î¹®¿¡ ´ëÇؼ­ ¼³¸íµË´Ï´Ù. --------------------------------------------------------------------------- #115 À¯´Ï½Ã½º (adunis2 ) Parameter Modification 05/14 09:08 172 line Shell ProgramÀÇ Á¦¾î¹®: ParameterÀÇ ÀÀ¿ë ------------------------------------------------------------------- ¼ö°­ÀÚ ¿©·¯ºÐ²²! Áö³­ º¸¸§¿© µ¿¾È ¾Æ¹«·± Å뺸¾øÀÌ °­ÀÇ°¡ ÁߴܵǾú´ø °Í¿¡ ´ëÇØ ´ë´ÜÈ÷ Á˼۽º·´°Ô »ý°¢ÇÕ´Ï´Ù. ¾Æ¿ï·¯ À¯´Ð½º °­ÀǸ¦ °ÆÁ¤Çϼż­, ÀüÈ­¸¦ ÅëÇØ °ü½ÉÀ» Ç¥½ÃÇØÁֽŠ¼ö°­ÀÚ ¿©·¯ºÐµé²² Áø½ÉÀ¸·Î °¨»çµå¸³´Ï´Ù. ÇâÈÄ °­ÀÇ°¡ Áö¿¬µÉ °æ¿ì¿¡´Â »çÀü¿¡ Å뺸µå¸± °ÍÀ» ¾à¼Óµå¸³´Ï´Ù. ------------------------------------------------------------------- À̹ø °­ÀǺÎÅÍ´Â ½© ÇÁ·Î±×·¥À»ÀÛ¼ºÇÔ¿¡ À־ º¸´Ù È¿°úÀûÀÎ ÇÁ·Î±×·¥À» ÀÛ¼ºÇÒ ¼ö ÀÖµµ·Ï Áö¿øÇÏ´Â Bourne / Korn ShellÀÇ ´Ù¾çÇÑ Á¦¾î¹®¿¡ ´ëÇÏ¿© ¼³¸íµå¸³´Ï´Ù. 1. ÆĶó¸ÞÅÍÀÇ ÀÀ¿ë °³¿ä ½©Àº ±âº»ÀûÀ¸·Î $parameter Çü½ÄÀÇ ÆĶó¸ÞÅÍ ÂüÁ¶½Ã¿¡´Â, »çÀü¿¡ parameter¿¡ ÇÒ´çµÇ¾î ÀÖ´Â °ªÀ¸·Î ±×¸¦ ´ëÄ¡ÇØÁØ´Ù. ±×·¯¸é ÆĶó¸ÞÅÍ¿¡ °ªÀÌ ¼³Á¤µÇ¾î ÀÖÁö ¾ÊÀº °æ¿ì´Â ¾î¶»°Ô 󸮵ɱî? ÀÌ°ÍÀº ÀÌÀü °­ÀÇ¿¡¼­ ÆĶó¸ÞÅÍ°¡ ¹Ì¼³Á¤µÇ¾î ÀÖÀ» °æ¿ì¿¡´Â null 󸮵ÊÀ» È®ÀÎÇß´Ù. ±×·¸Áö¸¸ ÆĶó¸ÞÅ͸¦ ¿î¿ëÇÔ¿¡ À־, ÆĶó¸ÞÅÍ°¡ ¼³Á¤ ¶Ç´Â nullÀΰ¡¿¡ µû¸¥ ÆĶó¸ÞÅÍÀÇ Æ¯Á¤ ¹®ÀÚ¿­·ÎÀÇ Á¶°ÇÀû ´ëÄ¡¸¦ Ư¼ö±âÈ£µéÀ» »ç¿ëÇÔ¿¡ ÀÇÇØ ÇàÇÒ¼ö ÀÖ´Ù.( À̵é Ư¼ö ±âÈ£µéÀº ÀÌÈÄ ¼³¸íµÈ´Ù. ) ½©¿¡ ÀÇÇÑ ÆĶó¸ÞÅÍÀÇ ±âº»ÀûÀÎ ´ëÄ¡ ÀÚ¾÷ ³»¿ëÀ» ¿ä¾àÇÏ¸é ´ÙÀ½°ú °°´Ù. ÆĶó¸ÞÅÍ°¡ ¼³Á¤µÇ¾î ÀÖ´Â °æ¿ì : ¼³Á¤ °ªÀ¸·Î ´ëÄ¡ ÆĶó¸ÞÅÍ°¡ ¹Ì¼³Á¤µÇ¾î ÀÖ´Â °æ¿ì : null °ªÀÌ ´ëÄ¡ ÆĶó¸ÞÅÍ°¡ null·Î ¼³Á¤µÇ¾î ÀÖ´Â °æ¿ì : ´ëÄ¡°¡ ¼öÇàµÇÁö ¾Ê´Â´Ù. ´ÙÀ½Àº ÆĶó¸ÞÅÍÀÇ ´ëÄ¡ ÀÛ¾÷À» º¸¿©ÁÖ´Â ¿¹ÀÌ´Ù. ¿¹Á¦) $fruit=apples $echo fruit $fruit <-- ÆĶó¸ÞÅ͸¦ ÂüÁ¶ÇÒ¶§ $parameter Çü½ÄÀ¸·Î fruit apples ÁöÁ¤ÇØ¾ß ÇÔÀ» º¸¿©ÁÖ°í ÀÖ´Ù. $fruit= <-- ÆĶó¸ÞÅÍ¿¡ ¼³Á¤µÈ °ªÀ» Á¦°ÅÇÏ°í ÀÖ´Ù. $veg="" <¦¡¦¤ µÎ°¡Áö ÆĶó¸ÞÅÍ¿¡ null °ªÀ» ¼³Á¤ÇÏ°í $meat='' <¦¡¦¥ ÀÖ´Ù. $echo $fruit $veg $meat $undef $ 2. ÆĶó¸ÞÅÍ °ªÀÇ Á¶°ÇÀû ¼öÁ¤ 1 ÆĶó¸ÞÅÍ °ªÀÇ Á¶°ÇÀû ¼öÁ¤Àº ´ÙÀ½°ú °°Àº ¹æ½ÄÀ¸·Î ¼öÇàÇÒ ¼ö ÀÖ´Ù. ${parameter:-value} if ÆĶó¸ÞÅÍ°¡ ¼³Á¤µÇ¾î ÀÖ°í, nullÀÌ ¾Æ´Ï¸é then ÆĶó¸ÞÅÍ¿¡ ¼³Á¤µÈ °ªÀ» »ç¿ë else ÁöÁ¤ÇÑ value·Î ÆĶó¸ÞÅ͸¦ ´ëÄ¡ÇÑ´Ù. ${parameter:=value} if ÆĶó¸ÞÅÍ°¡ ¼³Á¤µÇ¾î ÀÖ°í, nullÀÌ ¾Æ´Ï¸é then ÆĶó¸ÞÅÍ¿¡ ¼³Á¤µÈ °ªÀ» »ç¿ë else ÁöÁ¤ÇÑ value·Î ÆĶó¸ÞÅ͸¦ ´ëÄ¡ÇÏ°í, ÆĶó¸ÞÅÍ¿¡ value¸¦ ¼³Á¤ÇÑ´Ù. À§ µÎ°¡Áö ¹æ½ÄÀÇ Â÷ÀÌÁ¡À» ÁÖ¸ñÇØ¾ß ÇÑ´Ù. :- Çü½Ä¿¡¼­ ÁöÁ¤ÇÑ value´Â ÀϽÃÀûÀ¸·Î »ç¿ëÇÒ»Ó, ÆĶó¸ÞÅÍ´Â ¹Ì¼³Á¤µÇ¾î ÀÖ´Â »óŸ¦ ±×´ë·Î À¯ÁöÇÑ´Ù. := Çü½Ä¿¡¼­´Â ÁöÁ¤ÇÑ value¸¦ ÂüÁ¶ÇÒ »Ó¸¸¾Æ´Ï¶ó, ±× value¸¦ ÆĶó¸ÞÅÍ¿¡ ¼³Á¤ÇØÁشٴ Â÷ÀÌ°¡ ÀÖ´Ù. ( ÁÖ¸ñ ) Korn Shell¿¡¼­´Â À§ Áö½Ã¹® Çü½Ä¿¡¼­ :À» »ý·« °¡´ÉÇÏ´Ù. ´ÙÀ½Àº ÆĶó¸ÞÅÍ °ªÀÇ Á¶°ÇÀû ¼öÁ¤À» º¸¿©ÁÖ´Â ¿¹Á¦µéÀÌ´Ù. Bourne/Korn ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $echo $VALUE ¦¢<ÆĶó¸ÞÅÍ°¡ ¹Ì¼³Á¤µÇ¾î ÀÖÀ½À» ¦¢ ¦¢ º¸¿©ÁÖ°í ÀÖ´Ù. ¦¢ $echo "Value is ${VALUE:-NEW}" ¦¢<ÆĶó¸ÞÅÍ°¡ ¹Ì¼³Á¤µÇ¾î ÀÖÀ½À¸·Î ¦¢ Value is NEW ¦¢ ÁöÁ¤ÇÑ NEW°¡ ´ëÄ¡µÇ°í ÀÖ´Ù. ¦¢ $echo $VALUE ¦¢<¸í·É ½ÇÇàÈÄ¿¡µµ ÆĶó¸ÞÅÍ°¡ ¦¢ ¦¢ ¹Ì¼³Á¤»óÅ ±×´ë·ÎÀÌ´Ù. ¦¢ $VALUE='junk' ¦¢<ÀÌÈÄÀÇ ¿¹´Â ÆĶó¸ÞÅÍ¿¡ °ªÀ» ¦¢ $echo "Value is ${VALUE:-NEW}" ¦¢ ¼³Á¤ÇÑÈÄ Ã³¸® ÇüŸ¦ º¸¿©ÁÖ°í ¦¢ Value is junk ¦¢ ÀÖ´Ù. ¦¢ ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ Korn ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ KORN> print $TEST ¦¢<´ÙÀ½ ¿¹´Â Korn Shell¿¡¼­ ¦¢ ¦¢ ÆĶó¸ÞÅÍ °ªÀÇ ¼öÁ¤ ¿¹¸¦ º¸¿© ¦¢ KORN> echo ${TEST=/usr/bin/page} ¦¢ ÁÖ°í ÀÖ´Ù. ÁöÁ¤ Çü½Ä¿¡¼­ ¦¢ /usr/bin/page ¦¢ :ÀÌ »ç¿ëµÇÁö ¾Ê¾ÒÀ½À» ÁÖ¸ñ ¦¢ KORN> print $TEST ¦¢ Çϱ⠹ٶõ´Ù. ¦¢ /usr/bin/page ¦¢ ¦¢ KORN> TEST='new value' ¦¢ ¦¢ KORN> print "${TEST:=/usr/bin/page}" ¦¢ ¦¢ newvalue ¦¢ ¦¢ KORN> print $TEST ¦¢ ¦¢ new value ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ 3. ÆĶó¸ÞÅÍ °ªÀÇ Á¶°ÇÀû ¼öÁ¤ 2 ÆĶó¸ÞÅÍ °ªÀÇ Á¶°ÇÀû ¼öÁ¤À» ¼öÇàÇϱâ À§ÇÑ ¶Ç´Ù¸¥ Çü½ÄÀº ´ÙÀ½°ú °°´Ù. ${parameter:?value} if ÆĶó¸ÞÅÍ°¡ ¼³Á¤µÇ¾î ÀÖ°í, nullÀÌ ¾Æ´Ï¸é then ¼³Á¤µÇ¾î ÀÖ´Â °ªÀ» »ç¿ë else value¸¦ Ãâ·ÂÇÏ°í, ¸í·É¾î¸¦ Á¾·áÇÑ´Ù. ÀÌ Çü½Ä¿¡¼­ ¸¸ÀÏ value¸¦ »ý·«Çϸé, ½©Àº ´ÙÀ½ ¸Þ¼¼Áö¸¦ Ç¥½ÃÇÑ´Ù. "parameter null or not set" ÀÌ Çü½ÄÀº ƯÁ¤ ÀÛ¾÷¿¡ ÇÊ¿ä·ÎÇÏ´Â º¯¼ö°¡ ¼³Á¤µÇ¾ú´ÂÁö¸¦ °Ë»çÇϴµ¥ À־ ¸Å¿ì À¯¿ëÇÏ´Ù. ${parameter:+value} if ÆĶó¸ÞÅÍ°¡ ¼³Á¤µÇ¾î ÀÖ°í, nullÀÌ ¾Æ´Ï¸é then ÁöÁ¤ÇÑ value·Î ÆĶó¸ÞÅ͸¦ ´ëÄ¡ else ¾Æ¹«·± ´ëÄ¡¸¦ ¼öÇàÇÏÁö ¾Ê´Â´Ù. ( ÁÖ¸ñ ) Korn Shell¿¡¼­´Â : À» »ý·« °¡´ÉÇÏ´Ù. ´ÙÀ½Àº À§ Çü½Äµé°ú °ü·ÃµÈ ¿¹Á¦ÀÌ´Ù. Bourne/Korn ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $echo $X ¦¢<ÆĶó¸ÞÅÍ°¡ ¹Ì¼³Á¤µÇ¾î ÀÖÀ½À» ¦¢ ¦¢ º¸¿©ÁÖ°í ÀÖ´Ù. ¦¢ $echo ${X:?} ¦¢<ÆĶó¸ÞÅÍ°¡ ¹Ì¼³Á¤µÇ¾î À־ ¦¢ X:Parameter null or not set ¦¢ µðÆúÆ® ¿¡·¯ ¸Þ¼¼Áö°¡ Ç¥½ÃµÈ´Ù. ¦¢ $echo ${X:?Substitute} ¦¢<µðÆúÆ® ¿¡·¯ ¸Þ¼¼Áö¸¦ »ç¿ëÀÚ°¡ ¦¢ X:Substitute ¦¢ ÀçÁ¤ÀÇÇÑ °ÍÀ» º¸¿©ÁÖ°í ÀÖ´Ù. ¦¢ $echo $X ¦¢<¸í·É ½ÇÇàÈÄ¿¡µµ ÆĶó¸ÞÅÍ°¡ ¦¢ ¦¢ ¹Ì¼³Á¤ »óÅ·Π±×´ë·Î ÀÖ´Ù. ¦¢ $X=4 ¦¢<ÆĶó¸ÞÅÍ°¡ ¼³Á¤µÇ¾î ÀÖÀ» ¦¢ $echo ${X:?Substitute} ¦¢ °æ¿ì¿¡´Â ±× °ªÀÌ ±×´ë·Î ¦¢ 4 ¦¢ »ç¿ëµÊÀ» º¸¿©ÁÖ°í ÀÖ´Ù. ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ Korn ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ KORN> echo $X ¦¢< ÆĶó¸ÞÅÍ°¡ ¹Ì¼³Á¤µÇ¾î ÀÖ´Ù. ¦¢ ¦¢ ¦¢ KORN> echo ${X:+NEW_VALUE} ¦¢< ÆĶó¸ÞÅÍ°¡ ¹Ì¼³Á¤µÇ¾î ÀÖ¾î ¦¢ ¦¢ ¾Æ¹« 󸮵µ ÇàÇÏÁö ¾Ê´Â´Ù. ¦¢ KORN> X=SET ¦¢< ÆĶó¸ÞÅ͸¦ ¼³Á¤Çß´Ù. ¦¢ KORN> echo ${X+NEW_VALUE} ¦¢< ÀÌ¹Ì ÆĶó¸ÞÅÍ°¡ ¼³Á¤µÇ¾î ¦¢ NEW_VALUE ¦¢ Àֱ⠶§¹®¿¡, ÁöÁ¤ÇÑ °ªÀ» ¦¢ KORN> echo $X ¦¢ ÆĶó¸ÞÅÍ °ªÀ¸·Î »ç¿ëÇÏ°í ¦¢ SET ¦¢ ÀÖ´Ù. ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ --------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­µµ °è¼ÓÇÏ¿© ½© ÇÁ·Î±×·¥ÀÇ ´Ù¾çÇÑ Á¦¾î¹®µé¿¡ ´ëÇؼ­ ¼³¸íµË´Ï´Ù. --------------------------------------------------------------------------- #116 À¯´Ï½Ã½º (adunis2 ) Shell ProgramÀÇ Á¦¾î¹® I 05/17 14:45 133 line ½© ÇÁ·Î±×·¥ÀÇ Á¦¾î¹® I -------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ»çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. -------------------------------------------------------------------- 1. :(Colon) Null ¸í·É¾î Null ¸í·É¾î´Â ½ÇÁ¦·Î ¾Æ¹«·± 󸮵µ ÇàÇÏÁö¾Ê´Â(?) ½© °íÀ¯ÀÇ ¸í·É¾îÀÌ´Ù. ƯÁ¤ Á¦¾î¹®À» »ç¿ëÇÏ´Â °æ¿ì, ÇØ´ç Á¦¾î¹®À» »ç¿ëÇϱâ À§Çؼ­´Â Á¦¾î¹®¿¡ ºÒÇÊ¿äÇÏ´Ù ÇÏ´õ¶óµµ ¹®¹ý»ó ¹Ýµå½Ã ¸í·É¾î¸¦ ÁöÁ¤Çؾ߸¸ ÇÏ´Â °æ¿ì°¡ ÀÖ´Ù. ¿¹¸¦µé¸é if-then-else-fi Á¦¾î¹®À» »ç¿ëÇÒ¶§, »ç¿ëÀÚ´Â Á¦¾î¹®»óÀÇ °¢°¢ÀÇ ±¸¹® ¸ðµÎ¸¦ ¹Ýµå½Ã ÁöÁ¤Çؾ߸¸ ÇÑ´Ù. ±×·±µ¥ ÀÌ Á¦¾î¹®À» »ç¿ëÇÒ¶§ if ±¸¹®ÀÇ Á¶°Ç ÆÇ´ÜÀÇ °á°ú, °ÅÁþÀÎ °æ¿ìÀÇ Á¦¾î¸¸ÀÌ ÇÊ¿ä·Î ÇÏ´Ù°í °¡Á¤ÇÏÀÚ. ÀÌ °æ¿ì¿¡ then ±¸¹®À» »ý·«ÇÏ´Â °ÍÀº ¹®¹ý»ó Çã¿ëµÇÁö ¾Ê´Â´Ù. ±×·¸´Ù°í then ±¸¹®À» ÁöÁ¤ÇÏ°í ÇÊ¿ä·Î ÇÏÁöµµ ¾Ê´Â ´Ù¸¥ ¸í·É¾î¸¦ then ±¸¹®¿¡ ÁöÁ¤ÇÒ¼öµµ ¾øÀ» °ÍÀÌ´Ù.¹Ù·Î ÀÌ·± °æ¿ì¿¡ Null ¸í·É¾î¸¦ »ç¿ëÇÏ¸é µÈ´Ù. ±×·¸Áö¸¸ : ¸í·É¾î¸¦ »ç¿ëÇÒ¶§ ÁÖÀÇÇÒ °ÍÀÌ ÀÖ´Ù. : ¸í·É¾î´Â À¯´Ð½ºÀÇ ÀÌÀü ¹öÁ¯¿¡¼­ ¿ø·¡ ÁÖ¼® ±âÈ£·Î »ç¿ëµÇ¾úÀ¸³ª, ÇöÀç´Â # ½Éº¼ÀÌ ÁÖ·Î ÁÖ¼® ±âÈ£·Î »ç¿ëµÇ°í ÀÖ´Ù. ±×·¯³ª ¾ÆÁ÷µµ : ±âÈ£µµ ÁÖ¼® ½Éº¼·Î »ç¿ëÇÏ°í ÀÖ´Ù. # ±âÈ£¸¦ »ç¿ëÇÏ¿© ÁÖ¼®À» ÁöÁ¤ÇßÀ» °æ¿ì¿¡´Â, ±× ÀÌÈÄ¿¡ ±â¼úµÇ¾î ÀÖ´Â ¸í·É¾î ¶óÀÎÀ» ½©ÀÌ ºÐ¼®À» ¼öÇàÇÏÁö ¾ÊÁö¸¸, ÀÌ¿Í´Þ¸® : ½Éº¼·Î ÁÖ¼®À» ÁöÁ¤ÇßÀ» °æ¿ì¿¡´Â :ÀÌ ÁöÁ¤µÇ¾î ÀÖ´Â ¸í·É¾î ¶óÀÎÀ» ºÐ¼®ÇÑ´Ù. ±×·¸´Ù°í : ÀÌÈÄ¿¡ ÁöÁ¤µÈ ¸í·É¾îµéÀ» ½ÇÇàÇѴٰųª ¿¡·¯¸¦ »ý¼ºÇÏÁö´Â ¾Ê´Â´Ù. ÀÌ¹Ì °­ÀÇÇß´ø ½©ÀÇ ºÐ¼®°úÁ¤¿¡¼­ ¼öÇàµÇ´Â ÀÛ¾÷ÀÌ ¸ðµÎ ¼öÇàµÇ³ª, ¸í·É¾îÀÇ ½ÇÇàÀº µÇÁö ¾Ê´Â´Ù´Â °ÍÀÌ´Ù. (ÀÚ¼¼ÇÑ ³»¿ëÀº ÀÌÀü¿¡ °­ÀÇÇß´ø ½©ÀÇ ¸í·É¾î ¶óÀÎ ºÐ¼® °úÁ¤À» ÂüÁ¶Çϱ⠹ٶõ´Ù.) ÀÌ·ÎÀÎÇØ :°¡ ÁöÁ¤µÈ ÀÌÈÄÀÇ ¸í·É¾î ¶óÀο¡ ƯÁ¤ È­ÀÏ·ÎÀÇ Ãâ·Â ¹æÇâÀüȯ(Redirection)ÀÌ ÁöÁ¤µÇ¾î ÀÖÀ» °æ¿ì, Ãâ·Â È­ÀÏÀº »ý¼ºµÇ³ª ³»¿ëÀ» °®Áö ¾Ê´Â ºó È­ÀÏ·Î »ý¼ºµÇ°Ô µÈ´Ù. :(colon) ¸í·É¾î°¡ null ¸í·É¾î·Î½á Á¤È®ÇÏ°Ô ¼öÇàµÇ°Ô ÇÏ·Á¸é, : ¸í·É¾î¸¦ ¹Ýµå½Ã ¸í·É¾î ¶óÀÎÀÇ Ã¹¹ø° ¸í·É¾î·Î ÁöÁ¤Çؾ߸¸ ÇÑ´Ù. ( ½©Àº ¸í·É¾î À̸§ ¾Õ¿¡ ÁöÁ¤µÈ °ø¹éµéÀº ¹«½ÃÇÑ´Ù. ) ´ÙÀ½Àº : ¸í·É¾îÀÇ »ç¿ë¿¹¸¦ º¸¿©ÁØ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$ls ¦¢ ¦¢$if test -f f1 ¦¢ null ¸í·É¾î¸¦ »ç¿ëÇßÀ» °æ¿ìÀÇ Ã³¸®°á°ú¸¦ ¦¢>then ¦¢ º¸¿©ÁÖ´Â ¿¹ÀÌ´Ù. ¦¢> : <-----------------ÀÌ °æ¿ì¿¡´Â if¹®ÀÇ ÆÇ´Ü °á°ú°¡ ÂüÀÎ °æ¿ì ¦¢>else ¦¢ ¾Æ¹«·± ÀÛ¾÷µµ ¼öÇàµÇÁö ¾Ê´Â´Ù. ¦¢> echo f1 does not exist ¦¢ ¦¢> : > f2 <-----------------null ¸í·É¾î ÀÌÈÄ¿¡ Ãâ·Â¹æÇâ Àüȯ ½Éº¼ÀÌ ¦¢>f1 ¦¢ ÁöÁ¤µÇ¾î ÀÖ´Ù. ½©ÀÌ ¸í·É¾î ¶óÀÎÀ» ¦¢f1 does not exist ¦¢ ºÐ¼®ÇÏ´Â °úÁ¤¿¡¼­ È­ÀÏÀº »ý¼ºÇϳª ¦¢$ls ¦¢ ºó È­ÀÏ·Î »ý¼ºÇÑ´Ù. ¦¢f2 <-----------------È­ÀÏÀÌ »ý¼ºµÈ°ÍÀ» È®ÀÎÇÒ¼ö ÀÖ´Ù. ¦¢$if [ ! -f f1 ] ¦¢ ¦¢>then ¦¢ ¦¢> : echo hello | tee f1 <-----À̹ø¿¡´Â : ¸í·É¾îÀÇ µÚ¿¡ ¸í·É¾î¿Í ¦¢>fi ¦¢ ¹æÇâÀüȯ ½Éº¼À» ÁöÁ¤Çغ¸¾Ò´Ù. ¦¢$ls ¦¢ ÀÌÈÄÀÇ °úÁ¤À» ÅëÇØ È­ÀÏÀº »ý¼ºµÇ³ª ¦¢f1 f2 ¦¢ echo ¸í·É¾î´Â ½ÇÇàµÇÁö ¾ÊÀ½À» ¦¢$cat f1 ¦¢ È®ÀÎÇÒ ¼ö ÀÖ´Ù. ±×·ÎÀÎÇØ f1 È­ÀÏ¿¡´Â ¦¢$ ¦¢ ¾Æ¹« ³»¿ëµµ µé¾îÀÖÁö ¾Ê°ÔµÈ´Ù. ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ 2. .(Dot) ¸í·É¾î . ¸í·É¾î´Â ÈļӵǴ ½© ÇÁ·Î±×·¥ ¶Ç´Â ½ºÅ©¸³Æ® È­ÀÏÀ» ÇöÀçÀÇ ½©¿¡¼­ ½ÇÇàÇϵµ·Ï ½©¿¡°Ô Áö½ÃÇÏ´Â ¸í·É¾îÀÌ´Ù. À̶§ ½© ÇÁ·Î±×·¥³»ÀÇ °¢°¢ÀÇ ¸í·É¾îµé ¶Ç´Â ½ºÅ©¸³Æ®»ó¿¡ Á¸ÀçÇÏ´Â °¢°¢ÀÇ ¸í·É¾îµéÀº ¸¶Ä¡ ÇÁ·ÒÇÁÆ®¿¡¼­ °³°³·Î ÀÔ·ÂÇÏ¿© ½ÇÇàÇÑ °Íó·³ ÇöÀç ½©¿¡¼­ ½ÇÇàµÇ°Ô µÈ´Ù. µû¶ó¼­ . ¸í·É¾î¸¦ ÀÌ¿ëÇÏ¿© ½ÇÇàÇÑ ½© ÇÁ·Î±×·¥ ¶Ç´Â ½ºÅ©¸³Æ®³»¿¡ ½© ÀÛ¾÷ȯ°æÀ» Á¦¾îÇÏ´Â ½© º¯¼ö¿¡ ´ëÇÑ ÀçÁ¤ÀÇ°¡ ÁöÁ¤µÇ¾î ÀÖÀ» °æ¿ì¿¡ ½ÇÇàÈÄ ÇöÀç ½©ÀÇ ÀÛ¾÷ ȯ°æÀÌ ÀçÁ¤ÀÇµÇ°Ô µÈ´Ù. ÀÌ¿Í°°ÀÌ . ¸í·É¾î´Â ½© ÇÁ·Î±×·¥³»¿¡¼­ ÇöÀçÀÇ ½© ȯ°æÀ» ÀçÁ¤ÀÇÇϱâ À§ÇØ À¯¿ëÇÏ°Ô »ç¿ëÇÒ ¼ö ÀÖ´Ù. ´ÙÀ½Àº . ¸í·É¾î¸¦ ÀÌ¿ëÇÑ ¿¹ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ /mjr/p # ÀÌ È­ÀÏ¿¡´Â PATH º¯¼ö¸¦ ÀçÁ¤ÀÇÇÏ´Â ¸í·ÉÀÌ µé¾îÀÖ´Ù.¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ PATH=/bin:/usr/bin:/etc:/mjr ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ $echo $PATH # ÇöÀç PATH º¯¼ö¿¡ ¼³Á¤µÈ °ªÀ» È®ÀÎÇØ º¸°í ÀÖ´Ù. /bin:/usr/bin:/etc # ¿©±â¼­ ÇöÀçÀÇ µð·ºÅ丮¸¦ ÀǹÌÇÏ´Â .ÀÌ ÁöÁ¤µÇ¾î # ÀÖÁö ¾ÊÀ½À» ÁÖ¸ñÇØ¾ß ÇÑ´Ù. ÀÌ·± °æ¿ì¿¡´Â ÇöÀçÀÇ # µð·ºÅ丮³»¿¡ ÀÖ´Â È­ÀÏÀ» ½ÇÇàÇϱâ À§Çؼ­´Â # ¹Ýµå½Ã Àý´ë °æ·Î¸íÀ» ÁöÁ¤ÇØ¾ß ÇÑ´Ù. $ls mjr # mjr µð·ºÅ丮³»¿¡ p,prog1,prog2¶ó´Â p # 3°³ÀÇ È­ÀÏÀÌ ÀÖÀ½À» È®ÀÎÇØÁÖ°í ÀÖ´Ù. prog1 prog2 $cd mjr # ÀÛ¾÷ µð·ºÅ丮¸¦ º¯°æ $/mjr/p # Àý´ë°æ·Î¸íÀ» ÁöÁ¤ÇÏ¿© p È­ÀÏÀ» ½ÇÇàÇÏ°í ÀÖ´Ù. # PATH¿¡ .ÀÌ ÁöÁ¤µÇ¾î ÀÖÁö ¾Ê±â ¶§¹®¿¡ $prog1 # Á÷Àü¿¡ ½ÇÇà½ÃŲ p È­ÀÏ¿¡ ¼±¾ðµÇ¾î ÀÖ´Â PATH prog1:not found # º¯¼ö¿¡¼­´Â mjr µð·ºÅ丮°¡ µé¾îÀֱ⠶§¹®¿¡ # prog1À̶ó°í¸¸ ÁöÁ¤Çصµ ½ÇÇàµÇ¾î¾ß Çϴµ¥ # ¿¡·¯°¡ ¹ß»ýÇÏ°í ÀÖ´Ù. ¿Ö ±×·²±î? ±× ÀÌÀ¯´Â # p È­ÀÏÀº ÇöÀçÀÇ ½©¿¡¼­ ½ÇÇàµÇÁö ¾Ê°í ¼­ºê ½©¿¡¼­ # ½ÇÇàµÇ¾ú±â ¶§¹®ÀÌ´Ù. À§ÀÇ ¿¹¸¦ ±×¸²À¸·Î ³ªÅ¸³»¸é ´ÙÀ½°ú °°´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ÇöÀçÀÇ ½© ¦¢ login PATH=/bin:/usr/bin:/etc ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¨¦¡¦¥ ¦¢ ¦¢ ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¨¦¡¦ª¦¡¦¡¦¤ ¼­ºê½© ¦¢/mjr/p PATH=/bin:/usr/bin:/etc:/mjr ¦¢ prog1 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¥ $. /mjr/p # À̹ø¿¡´Â . ¸í·É¾î¸¦ ÅëÇØ p È­ÀÏÀ» ½ÇÇàÇØ º¸¾Ò´Ù. $prog1 # ÀÌ È­Àϳ»¿¡ ¼±¾ðµÇ¾î ÀÖ´Â PATH º¯¼öÀÇ ÀçÁ¤ÀÇ°¡ ÇöÀçÀÇ $ # ½©¿¡ ±×´ë·Î ¹Ý¿µµÇ¾ú±â ¶§¹®¿¡ prog1ÀÌ ½ÇÇàµÈ´Ù. À§ÀÇ ¿¹¸¦ ±×¸²À¸·Î ³ªÅ¸³»¸é ´ÙÀ½°ú °°´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢login PATH=/bin:/usr/bin:/etc ¦¢ ¦¢/mjr/p PATH=/bin:/usr/bin:/etc:/mjr ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¦¢ ¦£¦¡¦ª¦¡¦¡¦¤ ¦¢ prog1 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¥ --------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­µµ ½© ÇÁ·Î±×·¡¹Ö Á¦¾î¹®¿¡ ´ëÇؼ­ °è¼ÓÇÏ¿© °­ÀÇÇÕ´Ï´Ù. --------------------------------------------------------------------------- #117 À¯´Ï½Ã½º (adunis2 ) Shell ProgramÀÇ Á¦¾î¹® II 05/17 14:46 77 line ½© ÇÁ·Î±×·¥ÀÇ Á¦¾î¹® II -------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ»çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. -------------------------------------------------------------------- 1. (...)¿Í {...} ¸í·É¾î µÕ±Ù°ýÈ£¿Í Áß°ýÈ£ Á¦¾î¹®Àº ½ÇÇàÀ» À§ÇØ ¸í·É¾îµéÀ» ±×·ìÈ­Çϱâ À§ÇØ »ç¿ëÇÑ´Ù. ±×·¯³ª À̵é Á¦¾î¹®Àº ¸í·É¾î¸¦ ½ÇÇàÇÏ´Â ¹æ½Ä¿¡ À־ ¼­·Î »óÀÌÇÏ°Ô ÀÛ¾÷À» ¼öÇàÇÑ´Ù. µÕ±Ù°ýÈ£ Á¦¾î¹®Àº ÇѽÖÀÇ µÕ±Ù°ýÈ£ ¼Ó¿¡ ÁöÁ¤µÇ¾î ÀÖ´Â ¸í·É¾îµéÀ» ¼­ºê½©¿¡¼­ ½ÇÇàÇÑ´Ù. Áß°ýÈ£ Á¦¾î¹®Àº ÇѽÖÀÇ Áß°ýÈ£ ¼Ó¿¡ ÁöÁ¤µÇ¾î ÀÖ´Â ¸í·É¾îµéÀ» ÇöÀçÀÇ ½©¿¡¼­ ½ÇÇàÇÑ´Ù. ( ÁÖÀÇ ) Áß°ýÈ£¸¦ »ç¿ëÇÒ °æ¿ì¿¡´Â ÁÂÃøÀÇ Áß°ýÈ£ ´ÙÀ½¿¡´Â ¹Ýµå½Ã °ø¹éÀ» ÁöÁ¤ÇØ¾ß ÇÏ°í, ÁöÁ¤ÇÏ´Â ¸¶Áö¸· ¸í·É¾î ´ÙÀ½¿¡´Â ¹Ýµå½Ã ¼¼¹ÌÄÝ·ÐÀ» ÁöÁ¤ÇØ¾ß ÇÑ´Ù. ¿¹> { cd /etc; ls;} ´ÙÀ½Àº µÕ±Ù°ýÈ£, Áß°ýÈ£ Á¦¾î¹®À» »ç¿ëÇÏ´Â ¿¹ÀÌ´Ù. $pwd /usr/acct/user1 $(cd /bin; ls) accterm csh i286 ls rm sort u3b adb date i286emul mail rmail spc u3b15 ... $pwd /usr/acct/user1 À§ÀÇ ¿¹Á¦ ÇÁ·Î±×·¥ÀÌ ½ÇÇàµÇ´Â °úÁ¤À» ±×¸²À¸·Î ±×·Áº¸¸é ´ÙÀ½°ú °°´Ù. Built-in ¸í·É¾îÀÎ pwd ¸í·É¾î´Â ÇöÀçÀÇ ½©¿¡¼­ ½ÇÇàµÇÁö¸¸, µÕ±Ù°ýÈ£·Î µÑ·¯½×ÀÎ Built-in ¸í·É¾îµéÀº ¼­ºê½©¿¡¼­ ½ÇÇàµÇ¾îÁø´Ù. ±×·ÎÀÎÇØ ºñ·Ï µð·ºÅ丮ÀÇ À̵¿ ¸í·ÉÀ» ½ÇÇàÇßÁö¸¸, ½ÇÇàÈÄ µð·ºÅ丮ÀÇ À̵¿Àº ½ÇÁ¦ ¼öÇàµÇÁö ¾ÊÀº°ÍÀ» º¼¼ö ÀÖ´Ù. ¦£¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¤ ÇöÀçÀÇ ½© ¦¢pwd ¦¢ login shell ¦¢pwd ¦¢ ¦¦¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦ª¦¡¦¡¦¥ ¦¢ ¦£¦¡¦ª¦¡¦¡¦¤ ¼­ºê ½© ¦¢cd /bin ¦¢ ¦¢ls ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¥ $pwd /usr/acct/user1 ${ cd /bin; ls;} accterm csh i286 ls rm sort u3b adb date i286emul mail rmail spc u3b15 ... $pwd /bin À§ÀÇ ¿¹Á¦¸¦ ±×¸²À¸·Î ±×·Áº¸¸é ´ÙÀ½°ú °°´Ù. À§¿¡¼­ µÕ±Ù°ýÈ£¼Ó¿¡¼­ ¼öÇàµÈ µð·ºÅ丮ÀÇ À̵¿Àº ½ÇÁ¦·Î ¼öÇàµÇÁö´Â ¾Ê¾ÒÁö¸¸, Áß°ýÈ£¼Ó¿¡¼­ ÁöÁ¤µÈ µð·ºÅ丮 À̵¿Àº ÇöÀçÀÇ µð·ºÅ丮¼Ó¿¡¼­ ¼öÇàµÇ±â ¶§¹®¿¡ ½ÇÁ¦·Î À̵¿ÇÑ °á°ú¸¦ º¸¿©ÁÖ°í ÀÖ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ÇöÀçÀÇ ½© ¦£¦¡¦¡¦¤ ¦¢login shell ¦¢ ¦¢pwd ¦§¦¡¦«¦¡¦¡ ¦¢ ¦¦¦¡¦¡¦¥ ¦¢ cd /bin ¦¢ ¦¢ ls ¦¢ ¦£¦¡¦¡¦¤ ¦¢ ¦¡¦¡¦¡¦«¦¡¦©pwd ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¦¦¦¡¦¡¦¥ --------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­µµ ½© ÇÁ·Î±×·¡¹Ö Á¦¾î¹®¿¡ ´ëÇؼ­ °è¼ÓÇÏ¿© °­ÀÇÇÕ´Ï´Ù. --------------------------------------------------------------------------- #118 À¯´Ï½Ã½º (adunis2 ) Shell ProgramÀÇ Á¦¾î¹®: case 05/18 15:39 144 line ½© ÇÁ·Î±×·¥ÀÇ Á¦¾î¹® : case -------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ»çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. -------------------------------------------------------------------- 1. case Á¦¾î¹® case ¹®ÀåÀº ƯÁ¤°ªÀÇ À¯Çü¿¡ µû¶ó º°µµÀÇ ÀÛ¾÷󸮸¦ ÁöÁ¤ÇÒ¼ö ÀÖµµ·Ï Áö¿øÇÏ´Â Á¦¾î¹®ÀÌ´Ù. if Á¦¾î¹®Àº µÎ°¡Áö Á¶°Ç(Âü°ú °ÅÁþ)¿¡ ´ëÇؼ­ °Ë»ç¸¦ ¼öÇàÇÑÈÄ, ±× °á°ú¿¡ »óÀÀÇÏ´Â ÀÛ¾÷À» ½ÇÇàÇÏ´Â ¹Ý¸é¿¡, case Á¦¾î¹®Àº Á¦¾î¹®»ó¿¡ ³ª¿­µÇ¾î ÀÖ´Â º¹¼ö°³ÀÇ À¯Çü°ú ƯÁ¤°ªÀ» ºñ±³ÇÏ¿© ±×¿¡ ÀÏÄ¡ÇÏ´Â À¯Çü¿¡ ÁöÁ¤µÈ ÀÛ¾÷À» ¼öÇàÇÑ´Ù. case Á¦¾î¹®»ó¿¡¼­ ƯÁ¤ À¯Çüº° º°µµÀÇ ÀÛ¾÷ ³»¿ëÀ» ºÐ±â(branch)¶ó Çϴµ¥, ºÐ±â ÁöÁ¤½Ã¿¡ ÁÖÀÇÇÒ °ÍÀÌ ÀÖ´Ù. ±×°ÍÀº °¢°¢ÀÇ ºÐ±âµéÀº ¼¼¹ÌÄÝ·Ð µÎ°³(;;)¸¦ »ç¿ëÇÏ¿©·Î ±¸º°ÇØ¾ß ÇÑ´Ù´Â °ÍÀÌ´Ù. ( ´Ü, ¸¶Áö¸· ºÐ±â´Â ÀÓÀÇ·Î ÁöÁ¤°¡´ÉÇÏ´Ù. ). ¶ÇÇÑ case ±¸¹®À» »ç¿ëÇÒ °æ¿ì ¹Ýµå½Ã ±¸¹®ÀÇ ¸¶Áö¸·¿¡ esac¸¦ ÁöÁ¤ÇÏ¿© ±¸¹®À» Á¾·áÇØ¾ß ÇÑ´Ù´Â °ÍÀÌ´Ù. ´ÙÀ½Àº case Á¦¾î¹®ÀÇ ±âº» °ñ°ÝÀÌ´Ù. case value in <---- valueÀÇ °ª¿¡ µû¶ó¼­ ¾Æ·¡ÀÇ À¯Çüº°·Î pattern1) º°µµ·Î ÁöÁ¤µÈ ¸í·É¾îµéÀÌ ½ÇÇàµÈ´Ù. command1 command2 ... ;; <---- ÇϳªÀÇ À¯Çü ÁöÁ¤ÀÌ ³¡³¯¶§¸¶´Ù pattern2) ;;À» ÁöÁ¤Çؾ߸¸ ÇÑ´Ù. command3 command4 ... ;; ... patternN) command5 command6 ... ;; <----- ¸¶Áö¸· À¯Çü¿¡¼­ÀÇ ;; ´Â »ý·« °¡´É. esac <------------------ case ¹®ÀÇ Á¾·á¸¦ Ç¥½Ã. ´ÙÀ½Àº case Á¦¾î¹®ÀÇ ½ÇÇà°úÁ¤À» º¸¿©ÁÖ´Â È帧µµÀÌ´Ù. case¹®ÀÇ ½ÇÇà °³½Ã ¦¢ ¦£¦¡¦¡¦ª¦¡¦¡¦¤ ¦¢value= ¦¢ <-- valueÀÇ °ªÀÌ ¹«¾ùÀ̳Ŀ¡ µû¶ó ¦¦¦¡¦¡¦¨¦¡¦¡¦¥ ÀÏÄ¡ÇÏ´Â À¯ÇüÀÌ ¼öÇà. ¦¢ pattern1 ¦¢pattern2 pattern3 ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ ¦¢ ¦¢ ¦£¦¡¦¡¦ª¦¡¦¡¦¡¦¤ ¦£¦¡¦¡¦ª¦¡¦¡¦¡¦¤ ¦£¦¡¦¡¦ª¦¡¦¡¦¡¦¤ ¦¢ command1 ¦¢ ¦¢ command3 ¦¢ ¦¢ command5 ¦¢ ¦¢ command2 ¦¢ ¦¢ command4 ¦¢ ¦¢ command6 ¦¢ ¦¦¦¡¦¡¦¨¦¡¦¡¦¡¦¥ ¦¦¦¡¦¡¦¨¦¡¦¡¦¡¦¥ ¦¦¦¡¦¡¦¨¦¡¦¡¦¡¦¥ ¦¢ ¦¢ ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ÀÏÄ¡µÈ ÆÐÅÏÀÌ ½ÇÇàµÈÈÄ ¦¢ case¹®ÀÌ Á¾·á case¹®ÀÇ ½ÇÇà Á¾·á case ¹®Àå³»ÀÇ ºÐ±âÇÒ À¯ÇüÀÇ ÆÇ´ÜÀÇ ±Ù°Å·Î »ç¿ëÇÏ´Â value´Â ¸í½ÃÀûÀÎ °ªÀ» ÁöÁ¤Çؾ߸¸ ÇÑ´Ù.( Á¤±Ô Ç¥Çö½Ä(Regular expression)À̳ª È­Àϸí È®Àå¹®ÀÚ¸¦ ÁöÁ¤ÇÏ¸é ¾ÊµÈ´Ù.) ¶ÇÇÑ case Á¦¾î¹®»ó¿¡ | ½Éº¼À» ÀÌ¿ëÇÏ¿© ³í¸®Àû OR Á¶°ÇÀ» ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù. case Á¦¾î¹®¿¡¼­ À¯ÇüÀº ÀÌÀü¿¡ °­ÀÇÇÑ Á¤±Ô Ç¥Çö½Ä°ú´Â ´Ù¸£´Ù. À¯Çü ÁöÁ¤½Ã¿¡ ¸ÞŸ¹®ÀÚÀÎ *, ? ±×¸®°í [...]Àº »ç¿ëÇÒ ¼ö ÀÖ´Ù. ±×·¯³ª ÀÌµé ¹®ÀÚµéÀº È­Àϸí È®ÀåÀ̳ª Á¤±Ô Ç¥Çö½ÄÀÇ ¸ÞŸ¹®ÀÚµé°ú µ¿ÀÏÇÏ°Ô ¹ø¿ªµÇÁö ¾Ê°í, ´ÙÀ½°ú °°ÀÌ ´Ù¸¥ Àǹ̷ΠÇؼ®µÈ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢¸ÞŸ¹®ÀÚ ¦¢ case À¯Çü³»¿¡¼­ÀÇ ÀÇ¹Ì ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ * ¦¢0 ¶Ç´Â ±×ÀÌ»óÀÇ ¹Ýº¹¹®ÀÚµé°ú ´ëÄ¡ ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ ? ¦¢ÀÓÀÇÀÇ Çѹ®ÀÚ¿Í ´ëÄ¡ ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ [] ¦¢»ç°¢°ýÈ£³»¿¡ ÁöÁ¤µÇ¾î ÀÖ´Â ¹®ÀÚÁß ÇϳªÀÇ ¹®ÀÚ ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ( ÁÖ¸ñ ) ´Ù½ÃÇѹø ¸»Çϸé, case Á¦¾î¹®¿¡¼­ ÀÌµé ¸ÞŸ¹®ÀÚµéÀº Á¤±Ô Ç¥Çö½Ä¹× È­Àϸí È®Àå±âÈ£·Î »ç¿ëµÇÁö ¾Ê´Â´Ù. ÀÌµé ¹®ÀÚµéÀº case Á¦¾î¹®»ó¿¡¼­ÀÇ µ¶Æ¯ÇÑ Àǹ̸¦ °®´Â´Ù. case ±¸¹®¿¡¼­ ¸ðµç °ª¿¡ ´ëÇØ ¼öÇàÇÒ ºÐ±â¸¦ ÁöÁ¤Çϱâ À§ÇØ À¯ÇüÀ» ¼±¾ðÇÒ¶§ * ¸ÞŸ¹®ÀÚ¸¦ »ç¿ëÇÑ´Ù. ÀÌ ¹®ÀÚ¸¦ Á¦¾î¹®»ó¿¡¼­ Á¤È®ÇÏ°Ô »ç¿ëµÇµµ·Ï Çϱâ À§Çؼ­´Â caseÀÇ Á¦¾î¹®ÀÇ ¸¶Áö¸· ºÐ±â¿¡ ÁöÁ¤ÇØ¾ß ÇÑ´Ù. ¸¶Áö¸· ºÐ±â°¡ ¾Æ´Ñ ´Ù¸¥ ºÐ±â¿¡ ÁöÁ¤ÇßÀ» °æ¿ì ±× ÀÌÈÄÀÇ ºÐ±â¿¡ ÁöÁ¤µÈ À¯ÇüÀÇ ºñ±³´Â ÁöÁ¤ÀÇ Àǹ̰¡ ¾ø±â ¶§¹®ÀÌ´Ù. ´ÙÀ½Àº case ¹®ÀåÀ» »ç¿ëÀ» ÀÌ¿ëÇÏ¿© ÀÛ¼ºÇÑ ÇÁ·Î±×·¥ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢progb ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢if [ $# -ne 1 ] ¦¢ ¦¢then ¦¢ ¦¢ exit ¦¢ ¦¢fi ¦¢ ¦¢echo 'Enter a word: \c' ¦¢ ¦¢read x # ÇÁ·Î±×·¥ ½ÇÇà½Ã »ç¿ëÀÚ°¡ ÀÔ·ÂÇÑ ¦¢ ¦¢case $x in # °ªÀÌ ¹«¾ùÀ̳Ŀ¡ µû¶ó¼­ º°µµÀÇ ¦¢ ¦¢ he??o) echo $x --- bye # ÀÛ¾÷ÀÌ Ã³¸®µÈ´Ù. ¦¢ ¦¢ ;; ¦¢ ¦¢ h[ai] echo $x --- by ¦¢ ¦¢ ;; ¦¢ ¦¢ b*ye | by) echo $x --- hello ¦¢ ¦¢ ;; ¦¢ ¦¢ *) echo $x try again later ¦¢ ¦¢esac ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ $progb Enter a word:heXzo <--- ÀÔ·ÂÇÑ °ªÀÌ case ¹®¿¡ ÁöÁ¤µÈ À¯ÇüÁß heXzo --- bye he??o¿¡ ÇØ´çµÈ´Ù. ¿©±â¼­ ?´Â Çѹ®ÀÚÀÇ $progb ÀÓÀÇÀÇ ¹®ÀÚ¸¦ ÀǹÌÇÑ´Ù. Enter a word:ha <--- ÀԷ°ªÀÌ h[ai]¿¡ ÇØ´çÇÑ´Ù. ha --- by h[ai]´Â ha ¶Ç´Â hi¿¡ »óÀÀÇÑ´Ù. $progb Enter a word:baaaaaaye <--- ÀԷ°ªÀÌ b*ye | by¿¡ ÇØ´çÇÑ´Ù. baaaaaaye --- hello ¿©±â¼­ b*ye´Â ù¹®ÀÚ°¡ bÀÌ°í ³¡ÀÇ µÎ¹®ÀÚ°¡ yeÀÎ ¹®ÀÚ¿­¿¡ ÇØ´çÇÑ´Ù. ´Ü À̵é»çÀÌ¿¡ ¹®ÀÚ°¡ ÀÖÀ» °æ¿ì¿¡´Â µ¿ÀÏÇÑ ¹®ÀÚ À̾î¾ß ÇÑ´Ù. ±×¸®°í |´Â ³í¸®Àû OR Á¶°ÇÀ» ÀǹÌÇÑ´Ù. $progb Enter a word:by by --- hello $progb Enter a word:abcdefg <--- ÀԷ°ªÀÌ Ã³À½ ¼¼°¡ÁöÀÇ ºÐ±âÀÇ À¯Çü¿¡ abcdefg try again later ÇØ´çµÇÁö ¾Ê´Â´Ù. ±×·¡¼­ ¸¶Áö¸· À¯ÇüÀ¸·Î ÁöÁ¤µÈ * Áï ÀÓÀÇÀÇ À¯Çü¿¡ ÇØ´çµÇ¾î ±×¿¡ »óÀÀÇÏ´Â ¸í·É¾î°¡ ½ÇÇàµÇ°í ÀÖ´Ù. --------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­µµ ½© ÇÁ·Î±×·¡¹Ö Á¦¾î¹®¿¡ ´ëÇؼ­ °è¼ÓÇÏ¿© °­ÀÇÇÕ´Ï´Ù. --------------------------------------------------------------------------- #119 À¯´Ï½Ã½º (adunis2 ) Shell ProgramÀÇ Á¦¾î¹®: || ¿Í && 05/19 15:07 93 line ½© ÇÁ·Î±×·¥ÀÇ Á¦¾î¹® : || ¿Í && -------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ»çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. -------------------------------------------------------------------- 1. Å×½ºÆ® Á¦¾î¹® ½©¿¡´Â ||¿Í &&¶ó´Â if ¹®ÀåÀ» Á»´õ °£·«ÇÏ°Ô »ç¿ëÇÒ ¼ö ÀÖµµ·Ï ÇϱâÀ§ÇÑ ´ÜÃàÇü Á¦¾î¹®ÀÌ ÀÖ´Ù. ÀÌµé ¸í·É¾îµéÀº ¾Õ¼­ ÁöÁ¤µÈ ¸í·É¾îÀÇ ½ÇÇàÁ¾·á »óÅ¿¡ µû¶ó º°µµÀÇ ÈÄ¼Ó ¸í·É¾î¸¦ ½ÇÇàÇϵµ·Ï ÀÛ¾÷À» ºÐ±âÇϵµ·Ï ó¸®ÇÒ ¼ö ÀÖ´Â °£ÆíÇÑ ±â´ÉÀ» Á¦°øÇÑ´Ù. && Á¦¾î¹®Àº if-then-fi Á¦¾î¹®ÀÇ ´ÜÃàÇü Á¦¾î¹®ÀÌ´Ù. ÀÌ Á¦¾î¹®ÀÇ Çü½ÄÀº ´ÙÀ½°ú °°´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ command1 && command2 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÀÌ Á¦¾î¹®Àº command1ÀÇ ½ÇÇà Á¾·á»óÅ°¡ 0ÀÏ °æ¿ì Áï, ÂüÀÏ °æ¿ì¿¡ command2°¡ ½ÇÇàµÇ³ª, command1ÀÇ ½ÇÇà Á¾·á»óÅ°¡ 0ÀÌ ¾Æ´Ò°æ¿ì Áï, °ÅÁþÀÏ °æ¿ì¿¡´Â command2°¡ ½ÇÇàÇÏÁö ¾Ê°í Á¦¾î¹®Àº Á¾·áµÈ´Ù. ±âº»ÀûÀÎ if-then-fi Á¦¾î¹®ÀÇ Çü½ÄÀº ´ÙÀ½°ú °°´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ if command1 ¦¢ ¦¢ then ¦¢ ¦¢ command2 ¦¢ ¦¢ fi ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ || Á¦¾î¹®ÀÇ Çü½ÄÀº ´ÙÀ½°ú °°´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ command1 || command2 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÀÌ Á¦¾î¹®Àº command1ÀÇ ½ÇÇà Á¾·á»óÅ°¡ 0ÀÌ ¾Æ´Ò°æ¿ì Áï, °ÅÁþÀÏ °æ¿ì¿¡ command2¸¦ ¼öÇàÇÏ°í, ½ÇÇà Á¾·á»óÅ°¡ 0ÀÎ °æ¿ì¿¡´Â command2¸¦ ½ÇÇàÇÏÁö ¾Ê°í Á¦¾î¹®À» Á¾·áÇÑ´Ù. || Á¦¾î¹®¿¡ »óÀÀÇÏ´Â if-then-else-fi Á¦¾î¹®ÀÇ Çü½ÄÀº ´ÙÀ½°ú °°´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ if command1 ¦¢ ¦¢ then ¦¢ ¦¢ : ¦¢ ¦¢ else ¦¢ ¦¢ command2 ¦¢ ¦¢ fi ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ´ÙÀ½Àº À̵é Á¦¾î¹®ÀÇ »ç¿ë¿¹ÀÌ´Ù. $who <-------------(1) mjr term/22 Oct 31 14:20 $who | grep user1 > /dev/null && echo "user logged on" <---(2) $if who | grep user1 > /dev/null <-------------(3) >then > echo "user logged on " >fi # À§ÀÇ ¿¹¿¡¼­ (1)ÀÇ ½ÇÇà °á°ú¸¦ º¸¸é ÇöÀç ½Ã½ºÅÛ¿¡ user1À̶ó´Â # »ç¿ëÀÚ´Â ·Î±×ÀÎÇÏÁö ¾Ê¾ÒÀ½À» È®ÀÎÇÒ ¼ö ÀÖ´Ù. ±×ÈÄ (2)¿¡¼­ && Á¦¾î¹®À» # »ç¿ëÇÑ ¸í·É¾î ¶óÀÎÀ» ÁöÁ¤ÇÏ°í, ½ÇÇàÇÏ¿´´Ù. ¸í·É¾î ¶óÀÎÀ» ½ÇÇàÇÑÈÄ # Ãâ·ÂÀÌ ¾ø´Â°ÍÀ¸·Î º¸¾Æ echo ¸í·É¾î´Â ½ÇÇàµÇÁö ¾Ê¾ÒÀ½À» ¾Ë¼ö ÀÖ´Ù. # ¿Ö ±×·²±î? # ±×°ÍÀº && Á¦¾î¹®ÀÇ ¾Õ¿¡ ÁöÁ¤µÇ¾î ÀÖ´Â grep ¸í·É¾î°¡ ¿¡·¯ 󸮵Ʊâ # ¶§¹®ÀÌ´Ù. (3) ºÎºÐ¿¡¼­´Â µ¿ÀÏÇÑ ÀÛ¾÷À» ¼öÇàÇϵµ·Ï if ¹®À» »ç¿ëÇÏ´Â # ¿¹¸¦ º¸¿©ÁÖ´Â ¿¹Á¦ÀÌ´Ù. $who | grep user1 > /dev/null || echo "user not logged on" <----- user not logged on $if who | grep user1 > /dev/null >then > : >else > echo "user not logged on" >fi user not logged on # À̹ø¿¡´Â µ¿ÀÏÇÑ ÀÛ¾÷À» &&°¡ ¾Æ´Ñ || Á¦¾î¹®À» »ç¿ëÇؼ­ ÁöÁ¤ÇØ º¸¾Ò´Ù. # ±×·±µ¥ À̹ø¿¡´Â echo ¸í·É¾î°¡ ½ÇÇàµÇ¾î °á°ú°¡ Ãâ·ÂµÇ°í Àִ°ÍÀ» º¼¼ö # ÀÖ´Ù. ±×°ÍÀº || Á¦¾î¹®Àº ¾ÕÀÇ ¸í·ÉÀÇ ½ÇÇà °á°ú°¡ °ÅÁþÀÏ °æ¿ì¿¡ # ÈļӵǴ ¸í·É¾î¸¦ ½ÇÇàÇϱ⠶§¹®ÀÌ´Ù. --------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­µµ ½© ÇÁ·Î±×·¡¹Ö Á¦¾î¹®¿¡ ´ëÇؼ­ °è¼ÓÇÏ¿© °­ÀÇÇÕ´Ï´Ù. --------------------------------------------------------------------------- #120 À¯´Ï½Ã½º (adunis2 ) Shell ProgramÀÇ Á¦¾î¹®: for 05/20 09:09 127 line ½© ÇÁ·Î±×·¥ÀÇ Á¦¾î¹® : for loop -------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ»çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. -------------------------------------------------------------------- 1. for-in-do-done ¹Ýº¹ Á¦¾î¹® for ¸í·É¾î´Â ÁöÁ¤µÈ °¢°¢ÀÇ ¿ä¼Òµé¿¡ ´ëÇØ Æ¯Á¤ ¸í·É¾î ¶Ç´Â ÀÏ·ÃÀÇ ¸í·É¾î¸¦ ¹Ýº¹ ½ÇÇàÇÒ ¼ö ÀÖµµ·Ï Áö¿øÇÏ´Â ¹Ýº¹(loop) Á¦¾î¹®ÀÌ´Ù. for ¸í·É¹®ÀÇ Çü½ÄÀº ´ÙÀ½°ú °°´Ù. for VAR in arg1 arg2 ... argn do command1 command2 ... commandN done for Á¦¾î¹®ÀÇ Ã³¸®´ë»óÀÌ µÇ¾îÁö´Â ÀÎÀÚµéÀº(arg1,arg2,..,argN) ¸í½ÃÀûÀ¸·Î °¢°¢À» Á¦¾î¹®»ó¿¡ ÁöÁ¤Çϰųª ¶Ç´Â ´Ù¸¥ ¸í·É¾îÀÇ °á°ú (¿¹¸¦µé¸é `cat list`ÀÇ Çü½ÄÀ¸·Î) ¶Ç´Â È­ÀÏ¸í º¯È¯¹®ÀÚ(*,?,[..])µéÀ» »ç¿ëÇÏ¿© ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù. for Á¦¾î¹®Àº do¿Í done »çÀÌ¿¡ ÁöÁ¤µÇ¾îÀÖ´Â ¸í·É¾îµéÀ» ÀÎÀÚ·Î ÁöÁ¤µÈ ¿ä¼Òµé¿¡ ´ëÇØ °¢°¢ ½ÇÇàÇÑ´Ù. do¿Í doneÀº C ¾ð¾îÀÇ ÇÔ¼ö¿¡¼­ { ¿Í }¿Í °°ÀÌ °æ°è±¸º°ÀÚ(Delimiter)ÀÇ ±¸½ÇÀ» ÇÑ´Ù. for ±¸¹®ÀÌ ½ÇÇàµÇ´Â °úÁ¤À» ¼³¸íÇÏ¸é ´ÙÀ½°ú °°´Ù. for Á¦¾î¹®ÀÌ ½ÇÇàµÇ¾úÀ»¶§ arg1Àº ±¸¹®»ó¿¡ ÁöÁ¤µÇ¾î ÀÖ´Â º¯¼ö(À§ Çü½ÄÀÇ VAR°¡ ÀÌ¿¡ ÇØ´çÇÑ´Ù.)¿¡ ÇÒ´çµÇ°í, º¯¼ö¿¡ ÇÒ´çµÈ arg1¿¡ ´ëÇØ do¿Í done ±¸¹® »çÀÌ¿¡ ÁöÁ¤µÇ¾î ÀÖ´Â ¸í·É¾îµéÀÌ ¼öÇàµÈ´Ù. ±×ÈÄ arg1¿¡ ´ëÇÑ ¸í·É¾î ¼öÇàÀÌ ¿Ï·áµÈÈÄ, ¿¬À̾î ÁöÁ¤µÇ¾î ÀÖ´Â ÀÎÀڵ鿡 ´ëÇØ ¸í·É¾îµéÀÌ ¹Ýº¹ÀûÀ¸·Î ¼öÇàµÈ´Ù. ( ÁÖÀÇ ) do ±¸¹®ÀÇ ³¡ÀÓÀ» Ç¥½ÃÇϱâ À§ÇØ ¹Ýµå½Ã doneÀ» ÇÔ²² ÁöÁ¤ÇØ¾ß ÇÑ´Ù. ´ÙÀ½Àº for-in-do-done loop Á¦¾î¹®ÀÇ »ç¿ë¿¹ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ setuser # ÀÌ ÇÁ·Î±×·¥Àº ÁßøµÈ for loop »ç¿ë¿¹¸¦ º¸¿©ÁØ´Ù. ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ for name in `cat namelist` # cat ¸í·É¾îÀÇ ½ÇÇà °á°ú°¡ ¼øÂ÷ÀûÀ¸·Î¦¢ ¦¢ do # name º¯¼ö¿¡ ÇÒ´çµÈÈÄ, do ¿Í done ¦¢ ¦¢ cd /local/usrfiles # »çÀÌÀÇ ¸í·É¾îµéÀÌ ¼öÇàµÈ´Ù. ¦¢ ¦¢ mkdir /home/$name ¦¢ ¦¢ chown $name /home/$name ¦¢ ¦¢ for file in * ¦¢ ¦¢ do # ÁßøÇÏ¿© ÁöÁ¤µÈ for ±¸¹® »ç¿ë¿¹ ¦¢ ¦¢ cp $file /home/$name ¦¢ ¦¢ done ¦¢ ¦¢ cd /home/$name ¦¢ ¦¢ for new in .profile .exrc ¦¢ ¦¢ do ¦¢ ¦¢ chmod 755 $new ¦¢ ¦¢ chown $name $new # ¶Ç´Ù¸¥ Áßø »ç¿ë¿¹ ¦¢ ¦¢ chgrp other $new ¦¢ ¦¢ ls -l $new ¦¢ ¦¢ done ¦¢ ¦¢ done ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ 2. ½© Ư¼öº¯¼ö¸¦ ÀÌ¿ëÇÑ for loop ÀÌÀü °­ÀÇ¿¡¼­ $*¿Í $@ °°Àº ½© Ư¼öº¯¼ö¿¡ ´ëÇÑ ¼³¸íÀ» Çß´Ù. À̹ø Àå¿¡¼­´Â ÀÌ·¯ÇÑ ½© Ư¼ö º¯¼ö¸¦ ÀÌ¿ëÇÏ¿© for loop¸¦ Á¦¾îÇÏ´Â ¿¹Á¦¸¦ ¼Ò°³ÇÑ´Ù. $cat prog1 # prog1 ÇÁ·Î±×·¥ÀÇ ³»¿ëÀ» º¸¸é $* Áï, for var in $* # ¸í·É¾î ¶óÀÎÀÇ ÀÎÀÚ °¹¼ö¸¸Å­ÀÇ loop¸¦ do echo $var # ¼öÇàÇϵµ·Ï ÁöÁ¤Çϵµ·Ï µÇ¾î ÀÖ´Ù. done # $*´Â ¸í·É¾î ÀÎÀÚ¸¦ µ¹·ÁÁÖ´Â ½© º¯¼öÀÌ´Ù. $prog1 'John Doe' 'Brad Smith' John # Ãâ·Â °á°ú¸¦ º¸¸é ¸í·É¾î ¶óÀÎÀÇ ÀÎÀÚµéÀÌ Doe # º¸È£¹®ÀÚ ÁöÁ¤¿¡ °ü°è¾øÀÌ ¸ðµÎ °³º°ÀûÀÎ Brad # ÀÎÀÚµé·Î 󸮵Ǿî 4¹øÀÇ ·çÇÁ·Î ó¸®µÈ Smith # °ÍÀ» º¼¼ö ÀÖ´Ù. $cat prog2 # prog2 ÇÁ·Î±×·¥Àº $@¸¦ »ç¿ëÇÏ¿© loop¸¦ for var in $@ # Á¦¾îÇÏ°í ÀÖ´Ù. ½© º¯¼öÀÎ $@´Â ¸í·É¾î do echo $var # ¶óÀγ»ÀÇ ÀÎÀÚµéÀ» µ¹·ÁÁÖ´Â º¯¼öÀÌ´Ù. done $prog2 'John Doe' 'Brad Smith' John # Ãâ·Â °á°ú¸¦ º¸¸é $@µµ $*¿Í µ¿ÀÏÇÑ Ã³¸®¸¦ Doe # ¼öÇàÇÔÀ» ¾Ë¼ö ÀÖ´Ù. Brad Smith # ÀÌ»óÀÇ µÎ°¡Áö ¿¹¸¦º¸¸é ´ÙÀ½°ú °°Àº µÎ°¡Áö Àǹ®Á¡ÀÌ ÀÖÀ» ¼ö ÀÖ´Ù. # ù°´Â ¸í·É¾î ¶óÀο¡¼­´Â ºÐ¸í »ç¶÷ À̸§À» Çϳª·Î ó¸®Çϱâ À§ÇØ # º¸È£¹®ÀÚ¸¦ »ç¿ëÇÏ¿© ¹­¾î ÁÖ¾ú´Âµ¥, ó¸® °á°ú¸¦ º¸¸é º¸È£¹®ÀÚ°¡ ¾Æ¹«·± # ¿µÇâÀ» ¹ÌÄ¡Áö ¾Ê°í ÀÖ´Ù´Â °ÍÀÌ´Ù. ±×°ÍÀº ÀÌÀü¿¡ °­ÀÇÇß´ø # ½©ÀÇ ¸í·É¾î ¶óÀÎ ºÐ¼® °úÁ¤¶§¹®ÀÌ´Ù. ¸í·É¾î ¶óÀο¡ ÁöÁ¤µÇ¾î ÀÖ´Â # º¸È£¹®ÀÚÀÇ Ã³¸®´Â ½©¿¡ ÀÇÇØ ¼öÇàµÈ´Ù. Áï ½©Àº º¸È£¹®ÀÚ·Î µÑ·¯½×¿©ÀÖ´Â # ÀÎÀÚµéÀº ºÐ¼®ÇÏÁö ¾Ê°í, ±×´ë·Î À¯ÁöÇÏ´Ù°¡ ¹ø¿ªÀÌ ³¡³ª´Â ½ËÁ¡¿¡¼­ # º¸È£¹®ÀÚ¸¦ Á¦°ÅÇÏ°í, ÇØ´ç ÇÁ·Î±×·¥¿¡ ÀÎÀÚ¸¦ Àü´ÞÇÑ´Ù. µû¶ó¼­ # ÇÁ·Î±×·¥Àº º¸È£¹®ÀÚ°¡ Á¦°ÅµÈ »óÅ¿¡¼­ ½ÇÇàÀ» ÇϰԵǾî, ÀÌ»ó°ú °°Àº # °á°ú°¡ ³ª¿À°Ô µÈ°ÍÀÌ´Ù. ±×·¯¸é »ç¿ëÀÚ°¡ ÁöÁ¤ÇÑ Çü½Ä ±×´ë·Î # ÇÁ·Î±×·¥¿¡ ÀÎÀÚ¸¦ Á¦°øÇÏ´Â ¹æ¹ýÀº ¾øÀ»±î? # ´ÙÀ½Àº ÀÌ ¹æ½ÄÀ» º¸¿©ÁÖ´Â ¿¹Á¦ÀÌ´Ù. $cat prog3 for var in "$*" # ÀÌ ¿¹¿¡¼­´Â ÇÁ·Î±×·¥³»ÀÇ $* º¯¼ö¸¦ do echo $var # ½Öµû¿ÈÇ¥¸¦ »ç¿ëÇÏ¿© º¸È£Çϵµ·Ï done # ÁöÁ¤ÇÑ ¿¹ÀÌ´Ù. $prog3 'John Doe' 'Brad Smith' John Doe Brad Smith # °á°ú¸¦ º¸¸é ¸í·É¾î ¶óÀο¡ ÁöÁ¤µÈ # ÀÎÀÚ ¸ðµÎ°¡ ÇϳªÀÇ ÀÎÀڷΠ󸮵ǰí # ÀÖÀ½À» º¼¼ö ÀÖ´Ù. $cat prog4 for var in "$@" # À̹ø¿¡´Â $@¸¦ ½Öµû¿ÈÇ¥¸¦ »ç¿ëÇÏ¿© do echo $var # º¸È£ÇÏ°í ÀÖ´Ù. done $prog4 'John Doe' 'Brad Smith' # °á°ú¸¦ º¸¸é »ç¿ëÀÚ°¡ ±Ã±ØÀûÀ¸·Î John Doe # ¿øÇß´ø °á°ú·Î Ç¥½ÃµÇ´Â °ÍÀ» ¾Ë¼ö°¡ Brad Smith # ÀÖ´Ù. # À§ÀÇ µÎÁ¾·ùÀÇ ¿¹Á¦¸¦ º¸¸é ½© Ư¼öº¯¼öÀÎ $*¿Í $@ÀÇ Â÷À̸¦ ¸íÈ®ÇÏ°Ô # ±¸º°ÇÒ ¼ö ÀÖÀ» °ÍÀÌ´Ù. ½© Ư¼öº¯¼ö¿¡ ´ëÇÑ »çÇ×Àº ÀÌÀü °­ÀǸ¦ # ÂüÁ¶Çϱ⠹ٶõ´Ù. --------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­µµ ½© ÇÁ·Î±×·¡¹Ö Á¦¾î¹®¿¡ ´ëÇؼ­ °è¼ÓÇÏ¿© °­ÀÇÇÕ´Ï´Ù. --------------------------------------------------------------------------- #120 À¯´Ï½Ã½º (adunis2 ) Shell ProgramÀÇ Á¦¾î¹®: for 05/20 09:09 127 line ½© ÇÁ·Î±×·¥ÀÇ Á¦¾î¹® : for loop -------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ»çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. -------------------------------------------------------------------- 1. for-in-do-done ¹Ýº¹ Á¦¾î¹® for ¸í·É¾î´Â ÁöÁ¤µÈ °¢°¢ÀÇ ¿ä¼Òµé¿¡ ´ëÇØ Æ¯Á¤ ¸í·É¾î ¶Ç´Â ÀÏ·ÃÀÇ ¸í·É¾î¸¦ ¹Ýº¹ ½ÇÇàÇÒ ¼ö ÀÖµµ·Ï Áö¿øÇÏ´Â ¹Ýº¹(loop) Á¦¾î¹®ÀÌ´Ù. for ¸í·É¹®ÀÇ Çü½ÄÀº ´ÙÀ½°ú °°´Ù. for VAR in arg1 arg2 ... argn do command1 command2 ... commandN done for Á¦¾î¹®ÀÇ Ã³¸®´ë»óÀÌ µÇ¾îÁö´Â ÀÎÀÚµéÀº(arg1,arg2,..,argN) ¸í½ÃÀûÀ¸·Î °¢°¢À» Á¦¾î¹®»ó¿¡ ÁöÁ¤Çϰųª ¶Ç´Â ´Ù¸¥ ¸í·É¾îÀÇ °á°ú (¿¹¸¦µé¸é `cat list`ÀÇ Çü½ÄÀ¸·Î) ¶Ç´Â È­ÀÏ¸í º¯È¯¹®ÀÚ(*,?,[..])µéÀ» »ç¿ëÇÏ¿© ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù. for Á¦¾î¹®Àº do¿Í done »çÀÌ¿¡ ÁöÁ¤µÇ¾îÀÖ´Â ¸í·É¾îµéÀ» ÀÎÀÚ·Î ÁöÁ¤µÈ ¿ä¼Òµé¿¡ ´ëÇØ °¢°¢ ½ÇÇàÇÑ´Ù. do¿Í doneÀº C ¾ð¾îÀÇ ÇÔ¼ö¿¡¼­ { ¿Í }¿Í °°ÀÌ °æ°è±¸º°ÀÚ(Delimiter)ÀÇ ±¸½ÇÀ» ÇÑ´Ù. for ±¸¹®ÀÌ ½ÇÇàµÇ´Â °úÁ¤À» ¼³¸íÇÏ¸é ´ÙÀ½°ú °°´Ù. for Á¦¾î¹®ÀÌ ½ÇÇàµÇ¾úÀ»¶§ arg1Àº ±¸¹®»ó¿¡ ÁöÁ¤µÇ¾î ÀÖ´Â º¯¼ö(À§ Çü½ÄÀÇ VAR°¡ ÀÌ¿¡ ÇØ´çÇÑ´Ù.)¿¡ ÇÒ´çµÇ°í, º¯¼ö¿¡ ÇÒ´çµÈ arg1¿¡ ´ëÇØ do¿Í done ±¸¹® »çÀÌ¿¡ ÁöÁ¤µÇ¾î ÀÖ´Â ¸í·É¾îµéÀÌ ¼öÇàµÈ´Ù. ±×ÈÄ arg1¿¡ ´ëÇÑ ¸í·É¾î ¼öÇàÀÌ ¿Ï·áµÈÈÄ, ¿¬À̾î ÁöÁ¤µÇ¾î ÀÖ´Â ÀÎÀڵ鿡 ´ëÇØ ¸í·É¾îµéÀÌ ¹Ýº¹ÀûÀ¸·Î ¼öÇàµÈ´Ù. ( ÁÖÀÇ ) do ±¸¹®ÀÇ ³¡ÀÓÀ» Ç¥½ÃÇϱâ À§ÇØ ¹Ýµå½Ã doneÀ» ÇÔ²² ÁöÁ¤ÇØ¾ß ÇÑ´Ù. ´ÙÀ½Àº for-in-do-done loop Á¦¾î¹®ÀÇ »ç¿ë¿¹ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ setuser # ÀÌ ÇÁ·Î±×·¥Àº ÁßøµÈ for loop »ç¿ë¿¹¸¦ º¸¿©ÁØ´Ù. ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ for name in `cat namelist` # cat ¸í·É¾îÀÇ ½ÇÇà °á°ú°¡ ¼øÂ÷ÀûÀ¸·Î¦¢ ¦¢ do # name º¯¼ö¿¡ ÇÒ´çµÈÈÄ, do ¿Í done ¦¢ ¦¢ cd /local/usrfiles # »çÀÌÀÇ ¸í·É¾îµéÀÌ ¼öÇàµÈ´Ù. ¦¢ ¦¢ mkdir /home/$name ¦¢ ¦¢ chown $name /home/$name ¦¢ ¦¢ for file in * ¦¢ ¦¢ do # ÁßøÇÏ¿© ÁöÁ¤µÈ for ±¸¹® »ç¿ë¿¹ ¦¢ ¦¢ cp $file /home/$name ¦¢ ¦¢ done ¦¢ ¦¢ cd /home/$name ¦¢ ¦¢ for new in .profile .exrc ¦¢ ¦¢ do ¦¢ ¦¢ chmod 755 $new ¦¢ ¦¢ chown $name $new # ¶Ç´Ù¸¥ Áßø »ç¿ë¿¹ ¦¢ ¦¢ chgrp other $new ¦¢ ¦¢ ls -l $new ¦¢ ¦¢ done ¦¢ ¦¢ done ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ 2. ½© Ư¼öº¯¼ö¸¦ ÀÌ¿ëÇÑ for loop ÀÌÀü °­ÀÇ¿¡¼­ $*¿Í $@ °°Àº ½© Ư¼öº¯¼ö¿¡ ´ëÇÑ ¼³¸íÀ» Çß´Ù. À̹ø Àå¿¡¼­´Â ÀÌ·¯ÇÑ ½© Ư¼ö º¯¼ö¸¦ ÀÌ¿ëÇÏ¿© for loop¸¦ Á¦¾îÇÏ´Â ¿¹Á¦¸¦ ¼Ò°³ÇÑ´Ù. $cat prog1 # prog1 ÇÁ·Î±×·¥ÀÇ ³»¿ëÀ» º¸¸é $* Áï, for var in $* # ¸í·É¾î ¶óÀÎÀÇ ÀÎÀÚ °¹¼ö¸¸Å­ÀÇ loop¸¦ do echo $var # ¼öÇàÇϵµ·Ï ÁöÁ¤Çϵµ·Ï µÇ¾î ÀÖ´Ù. done # $*´Â ¸í·É¾î ÀÎÀÚ¸¦ µ¹·ÁÁÖ´Â ½© º¯¼öÀÌ´Ù. $prog1 'John Doe' 'Brad Smith' John # Ãâ·Â °á°ú¸¦ º¸¸é ¸í·É¾î ¶óÀÎÀÇ ÀÎÀÚµéÀÌ Doe # º¸È£¹®ÀÚ ÁöÁ¤¿¡ °ü°è¾øÀÌ ¸ðµÎ °³º°ÀûÀÎ Brad # ÀÎÀÚµé·Î 󸮵Ǿî 4¹øÀÇ ·çÇÁ·Î ó¸®µÈ Smith # °ÍÀ» º¼¼ö ÀÖ´Ù. $cat prog2 # prog2 ÇÁ·Î±×·¥Àº $@¸¦ »ç¿ëÇÏ¿© loop¸¦ for var in $@ # Á¦¾îÇÏ°í ÀÖ´Ù. ½© º¯¼öÀÎ $@´Â ¸í·É¾î do echo $var # ¶óÀγ»ÀÇ ÀÎÀÚµéÀ» µ¹·ÁÁÖ´Â º¯¼öÀÌ´Ù. done $prog2 'John Doe' 'Brad Smith' John # Ãâ·Â °á°ú¸¦ º¸¸é $@µµ $*¿Í µ¿ÀÏÇÑ Ã³¸®¸¦ Doe # ¼öÇàÇÔÀ» ¾Ë¼ö ÀÖ´Ù. Brad Smith # ÀÌ»óÀÇ µÎ°¡Áö ¿¹¸¦º¸¸é ´ÙÀ½°ú °°Àº µÎ°¡Áö Àǹ®Á¡ÀÌ ÀÖÀ» ¼ö ÀÖ´Ù. # ù°´Â ¸í·É¾î ¶óÀο¡¼­´Â ºÐ¸í »ç¶÷ À̸§À» Çϳª·Î ó¸®Çϱâ À§ÇØ # º¸È£¹®ÀÚ¸¦ »ç¿ëÇÏ¿© ¹­¾î ÁÖ¾ú´Âµ¥, ó¸® °á°ú¸¦ º¸¸é º¸È£¹®ÀÚ°¡ ¾Æ¹«·± # ¿µÇâÀ» ¹ÌÄ¡Áö ¾Ê°í ÀÖ´Ù´Â °ÍÀÌ´Ù. ±×°ÍÀº ÀÌÀü¿¡ °­ÀÇÇß´ø # ½©ÀÇ ¸í·É¾î ¶óÀÎ ºÐ¼® °úÁ¤¶§¹®ÀÌ´Ù. ¸í·É¾î ¶óÀο¡ ÁöÁ¤µÇ¾î ÀÖ´Â # º¸È£¹®ÀÚÀÇ Ã³¸®´Â ½©¿¡ ÀÇÇØ ¼öÇàµÈ´Ù. Áï ½©Àº º¸È£¹®ÀÚ·Î µÑ·¯½×¿©ÀÖ´Â # ÀÎÀÚµéÀº ºÐ¼®ÇÏÁö ¾Ê°í, ±×´ë·Î À¯ÁöÇÏ´Ù°¡ ¹ø¿ªÀÌ ³¡³ª´Â ½ËÁ¡¿¡¼­ # º¸È£¹®ÀÚ¸¦ Á¦°ÅÇÏ°í, ÇØ´ç ÇÁ·Î±×·¥¿¡ ÀÎÀÚ¸¦ Àü´ÞÇÑ´Ù. µû¶ó¼­ # ÇÁ·Î±×·¥Àº º¸È£¹®ÀÚ°¡ Á¦°ÅµÈ »óÅ¿¡¼­ ½ÇÇàÀ» ÇϰԵǾî, ÀÌ»ó°ú °°Àº # °á°ú°¡ ³ª¿À°Ô µÈ°ÍÀÌ´Ù. ±×·¯¸é »ç¿ëÀÚ°¡ ÁöÁ¤ÇÑ Çü½Ä ±×´ë·Î # ÇÁ·Î±×·¥¿¡ ÀÎÀÚ¸¦ Á¦°øÇÏ´Â ¹æ¹ýÀº ¾øÀ»±î? # ´ÙÀ½Àº ÀÌ ¹æ½ÄÀ» º¸¿©ÁÖ´Â ¿¹Á¦ÀÌ´Ù. $cat prog3 for var in "$*" # ÀÌ ¿¹¿¡¼­´Â ÇÁ·Î±×·¥³»ÀÇ $* º¯¼ö¸¦ do echo $var # ½Öµû¿ÈÇ¥¸¦ »ç¿ëÇÏ¿© º¸È£Çϵµ·Ï done # ÁöÁ¤ÇÑ ¿¹ÀÌ´Ù. $prog3 'John Doe' 'Brad Smith' John Doe Brad Smith # °á°ú¸¦ º¸¸é ¸í·É¾î ¶óÀο¡ ÁöÁ¤µÈ # ÀÎÀÚ ¸ðµÎ°¡ ÇϳªÀÇ ÀÎÀڷΠ󸮵ǰí # ÀÖÀ½À» º¼¼ö ÀÖ´Ù. $cat prog4 for var in "$@" # À̹ø¿¡´Â $@¸¦ ½Öµû¿ÈÇ¥¸¦ »ç¿ëÇÏ¿© do echo $var # º¸È£ÇÏ°í ÀÖ´Ù. done $prog4 'John Doe' 'Brad Smith' # °á°ú¸¦ º¸¸é »ç¿ëÀÚ°¡ ±Ã±ØÀûÀ¸·Î John Doe # ¿øÇß´ø °á°ú·Î Ç¥½ÃµÇ´Â °ÍÀ» ¾Ë¼ö°¡ Brad Smith # ÀÖ´Ù. # À§ÀÇ µÎÁ¾·ùÀÇ ¿¹Á¦¸¦ º¸¸é ½© Ư¼öº¯¼öÀÎ $*¿Í $@ÀÇ Â÷À̸¦ ¸íÈ®ÇÏ°Ô # ±¸º°ÇÒ ¼ö ÀÖÀ» °ÍÀÌ´Ù. ½© Ư¼öº¯¼ö¿¡ ´ëÇÑ »çÇ×Àº ÀÌÀü °­ÀǸ¦ # ÂüÁ¶Çϱ⠹ٶõ´Ù. --------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­µµ ½© ÇÁ·Î±×·¡¹Ö Á¦¾î¹®¿¡ ´ëÇؼ­ °è¼ÓÇÏ¿© °­ÀÇÇÕ´Ï´Ù. --------------------------------------------------------------------------- #121 À¯´Ï½Ã½º (adunis2 ) Shell ProgramÀÇ Á¦¾î¹®: select 05/21 09:02 83 line ½© ÇÁ·Î±×·¥ÀÇ Á¦¾î¹® : select -------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ»çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. -------------------------------------------------------------------- 1. select Á¦¾î¹® Korn Shell¿¡¼­´Â Bourne Shell¿¡¼­´Â Á¦°øÇÏÁö ¾Ê´Â ½© ÇÁ·Î±×·¥¿¡¼­ ¿ä±äÇÏ°Ô »ç¿ëÇÒ¼ö ÀÖ´Â ¼±Åø޴º¸¦ ÀÚµ¿ÀûÀ¸·Î ÀÛ¼ºÇÒ¼ö ÀÖµµ·Ï Áö¿øÇÏ´Â ¸í·É¾î¸¦ Á¦°øÇÑ´Ù. ÀÌ ¸í·É¾î°¡ ¹Ù·Î select ÀÌ´Ù. ¶ÇÇÑ Korn ShellÀº select ¸í·É¾îÀÇ ½ÇÇà»óÀÇ Á¦¾î¸¦ À§ÇØ 3°¡ÁöÀÇ ½© º¯¼ö Áï, PS3, COLUMN ±×¸®°í LINES º¯¼ö¸¦ Á¦°øÇÑ´Ù. PS3 º¯¼ö´Â ¼±Åø޴º¿¡¼­ »ç¿ëÇÒ ÇÁ·ÒÇÁÆ®¸¦ ÀçÁ¤ÀÇÇÏ´Â ±â´ÉÀ» Á¦°øÇϸç, COLUMN°ú LINES º¯¼ö´Â È­¸é»ó¿¡ ¸Þ´º¸¦ Ç¥½ÃÇÒ À§Ä¡¸¦ Á¤ÀÇÇÒ ¼ö ÀÖ´Â ±â´ÉÀ» Á¦°øÇÑ´Ù. select ¸í·É¾îÀÇ Çü½ÄÀº for ¸í·É¾î¿Í ´ë´ÜÈ÷ À¯»çÇÏ´Ù. ´ÙÀ½Àº select Á¦¾î¹®ÀÇ Çü½ÄÀÌ´Ù. select VAR in ARG1 ARG2 ... ARGn do command1 command2 ... commandN done select ¸í·É¾î¿Í for ¸í·É¾î´Â select ¸í·É¾î´Â »ç¿ëÀÚ°¡ ¼±Åø޴º»ó¿¡ ³ª¿­µÈ Ç׸ñÁß¿¡¼­ ¼±ÅÃÇÑ ÇϳªÀÇ Ç׸ñ¿¡ ´ëÇØ do¿Í done »çÀÌ¿¡ ÁöÁ¤µÇ¾î ÀÖ´Â ¸í·É¾îµéÀ» ½ÇÇàÇÑ´Ù´Â Á¡À» Á¦¿ÜÇÏ°í´Â ¸Å¿ì À¯»çÇÑ ÀÛ¾÷À» ½ÇÇàÇÑ´Ù. ¶ÇÇÑ select ¸í·É¾î´Â break, exit ¶Ç´Â return ¸í·É¾î¸¦ ¸¸³¯¶§±îÁö ¹Ýº¹ÇÏ¿© »ç¿ëÀÚ ¼±Åÿ¡ ´ëÇÑ ¸í·É¾î ½ÇÇàÀ» °è¼ÓÇÑ´Ù. ´ÙÀ½Àº select ¸í·É¾îÀÇ »ç¿ë¿¹ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢sel ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢PS3="choose one:" # ¼±Åø޴º¿¡¼­ »ç¿ëÇÒ ÇÁ·ÒÇÁÆ®¸¦ ¼±¾ð ¦¢ ¦¢select i in yale harvard oxford ucla penn exit ¦¢ ¦¢do # in ±¸¹®¿¡ ³ª¿­µÈ ÀÎÀÚµé·Î ¸Þ´º°¡ »ý¼ºµÊ ¦¢ ¦¢ case $i in # »ç¿ëÀÚ°¡ ¼±ÅÃÇÑ Ç׸ñÀÇ ¹øÈ£°¡ $i¿¡ ¼³Á¤ ¦¢ ¦¢ yale) echo $i new england ;; ¦¢ ¦¢ harvard) echo $i new england ;; ¦¢ ¦¢ oxford) echo $i england ;; ¦¢ ¦¢ ucla) echo $i west coast ;; ¦¢ ¦¢ penn) echo $i mid-atlantic ;; ¦¢ ¦¢ exit) echo So Long! ¦¢ ¦¢ exit 0 ;; ¦¢ ¦¢ *) echo not a valid choice;; ¦¢ ¦¢ esac ¦¢ ¦¢ read ans?"continue? (y/n)" # »ç¿ëÀÚ¿¡ ÀÛ¾÷ °è¼Ó ¿©ºÎ¸¦ ¹¯´Â´Ù. ¦¢ ¦¢ if [ $ans = 'y' ] ¦¢ ¦¢ then ¦¢ ¦¢ : <----- ´Ù½Ã select ¸í·É¾î¿¡ Á¦¾î°¡ ³Ñ¾î°£´Ù. ¦¢ ¦¢ else # ÀÛ¾÷Á¾·á¸¦ ¼±ÅÃÇÒ °æ¿ì ÀÌ ¹®ÀåÀÌ ½ÇÇà ¦¢ ¦¢ echo education: the investment that pays back more than it costs ! ¦¢ ¦¢ exit 0 # select ¸í·É¹®À» Á¾·á ¦¢ ¦¢ fi ¦¢ ¦¢done ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ KORN> sel ¦¡¦¡¦¡¦¤ 1) yale ¦¢ 2) harvard ¦¢ select ¸í·É¾î¿¡ ÀÇÇØ ÀÚµ¿ÀûÀ¸·Î »ý¼ºµÈ 3) oxford ¦¢ ¼±Åø޴ºÀÌ´Ù. ¸í·É¾î ½ÇÇà Ãʱ⿡ Çѹø¸¸ ÀÛ¼ºµÈ´Ù. 4) ucla ¦¢ ÀÌÈÄ´Â ÇÁ·ÒÇÁÆ®¸¸ÀÌ »õ·Ó°Ô Ç¥½ÃµÈ´Ù. 5) penn ¦¢ 6) exit ¦¡¦¡¦¡¦¥ choose one: 3 <--- »ç¿ëÀÚ°¡ ÀçÁ¤ÀÇÇÑ ¹®ÀÚ¿­À» ÀÌ¿ëÇÏ¿© Ç¥½ÃµÇ´Â oxford england »ç¿ëÀÚÀÇ ¼±ÅÃÀ» ¿ä±¸ÇÏ´Â ÇÁ·ÒÇÁÆ® continue?(y/n) y <--- read ¸í·É¾î·ÎÀÎÇÑ ÀÔ·Â ¿ä±¸ choose one: 5 penn mid-atlantic continue?(y/n) n <--- ÀÛ¾÷Á¾·á ¼±ÅýÃÀÇ ½ÇÇà ³»¿ëÀ» º¸¿©ÁØ´Ù. education: the investment that pays back more than it costs! --------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­µµ ½© ÇÁ·Î±×·¡¹Ö Á¦¾î¹®¿¡ ´ëÇؼ­ °è¼ÓÇÏ¿© °­ÀÇÇÕ´Ï´Ù. --------------------------------------------------------------------------- #122 À¯´Ï½Ã½º (adunis2 ) Shell ProgramÀÇ Á¦¾î¹®: expr 05/22 09:12 162 line ½© ÇÁ·Î±×·¥ÀÇ Á¦¾î¹® : expr -------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ»çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. -------------------------------------------------------------------- 1. expr Á¦¾î¹® Bourne Shell¿¡¼­ ¸ðµç º¯¼öµéÀº ¹®ÀÚ¿­ typeÀ¸·Î 󸮵ȴÙ. µû¶ó¼­ ¹®ÀÚ¿­µéÀÇ ¿¬»êÀº ºÒ°¡´ÉÇϱ⠶§¹®¿¡ º¯¼öµéÀÇ ¿¬»êÀº ºÒ°¡´ÉÇÏ´Ù. ±×·¯³ª Buorne ShellÀº ¼öÇÐÀû µî½ÄÀ» »ç¿ëÇÏ¿© ¹®ÀÚ¿­ÀÇ ¼öÇÐÀû ¿¬»êÀ» ¼öÇàÇÒ ¼ö ÀÖ´Â ¹æ¹ýÀº Á¦°øÇÑ´Ù. ÀÌ·± ¿¬»êÀº Bourne ShellÀÇ expr ¸í·É¾î¸¦ ÀÌ¿ëÇÏ¿© ¼öÇàÇÒ ¼ö ÀÖ´Ù. expr ¸í·É¾î´Â ¼öÇнİú °°ÀÌ ±×µéÀÇ ÀÎÀÚµéÀ» °è»êÇÏ°í, Ç¥ÁØÃâ·Â ÀåÄ¡¿¡ °á°ú¸¦ Ãâ·ÂÇÑ´Ù. ÀÌ expr ¸í·É¾î´Â ½© º¯¼öµéÀÇ ¿¬»êÀ» ¼öÇàÇϱâ À§ÇØ ¾ÆÁÖ ºó¹øÈ÷ »ç¿ëµÈ´Ù. expr ¸í·É¾î¿¡¼­ ÀÌ¿ë °¡´ÉÇÑ ¿¬»êÀÚ´Â ´ÙÀ½°ú °°´Ù. + ´õÇϱâ * °öÇϱâ % ³ª¸ÓÁö ³ª´©±â -»©±â / ³ª´©±â expr ¸í·É¾î»ó¿¡ À§ÀÇ ¿¬»êÀÚµéÀ» »ç¿ëÇÒ °æ¿ì¿¡´Â ¿¬»êÀÚÀÇ ÀüÈÄ¿¡ ¹Ýµå½Ã °ø¹éÀ» ÁöÁ¤ÇØ¾ß ÇÑ´Ù. expr ¸í·É¾î»ó¿¡¼­ ù¹ø° ÀÎÀÚ¿Í µÎ¹ø° ÀÎÀÚ¸¦ ºñ±³ÇÒ¼ö ÀÖ´Â ÀÏÄ¡(match) ¿¬»êÀÚÀÎ :µµ »ç¿ëÇÒ ¼ö ÀÖ´Ù. ±×·¯³ª ÀÌ ¿¬»êÀÚ¸¦ »ç¿ëÇÒ °æ¿ì¿¡, µÎ¹ø° ÀÎÀڷδ ¹Ýµå½Ã Á¤±Ô Ç¥Çö½ÄÀ» ÁöÁ¤Çؾ߸¸ ÇÑ´Ù. : ¿¬»êÀÚÀÇ ¿¬»ê °á°ú·Î Á¤±Ô Ç¥Çö½ÄÀ¸·Î ÁöÁ¤µÈ ¹®ÀÚ¿Í ÀÏÄ¡µÈ ¹®ÀÚ¼ö°¡ µ¹·ÁÁö°Å³ª ¶Ç´Â ÀÏÄ¡ÇÏ´Â °ÍÀÌ ¾øÀ» °æ¿ì¿¡´Â 0 °ªÀÌ µÇµ¹·ÁÁø´Ù. ¸ðµç ¹®ÀÚ¸¦ÀǹÌÇÏ´Â .*¶ó´Â Á¤±Ô Ç¥Çö½ÄÀ» ÀÌ¿ëÇϸéÀº, ÀÏÄ¡ ¿¬»êÀÚ¸¦ »ç¿ëÇÏ¿© ÁöÁ¤µÈ ù¹ø° ÀÎÀÚÀÇ ÀÎÀÚÀÇ ±æÀÌ Áï, ¹®ÀÚ¼ö¸¦ È®ÀÎÇÒ ¼ö ÀÖ´Ù. (ÁÖ¸ñ) ¿ªµû¿ÈÇ¥(`)·Î µÑ·¯½×ÀÎ ¿¬»ê½ÄÀÌ ½ÇÇàµÇ¸é, ¸í·É¾îÀÇ °á°ú°¡ ¸í·É¾î ÀÚü¸¦ ´ëÄ¡ÇÑ´Ù. ±×¸®°í ¿¬»ê½Ä³»¿¡ »ç¿ëµÈ $ ¶Ç´Â * °°Àº ¿¬»êÀÚ´Â expr ¸í·É¾î¿¡ 󸮵DZ⠾ռ­ ½©¿¡ÀÇÇؼ­ ¸ÕÀú ºÐ¼®µÇ±â ¶§¹®¿¡ ¾û¶×ÇÑ °á°ú¸¦ ÃÊ·¡ÇÒ ¼ö ÀÖ´Ù. ÀÌ¿Í°°Àº °æ¿ì »ç¿ëµÈ ¿¬»êÀÚ¸¦ ½©ÀÌ ¹ø¿ªÇÏÁö ¸øÇϵµ·Ï º¸È£¹®ÀÚÀÎ \¸¦ ¿¬»êÀÚ ¾Õ¿¡ ÁöÁ¤ÇØ¾ß ÇÑ´Ù. ´ÙÀ½Àº expr ¸í·É¾î¸¦ »ç¿ëÇÑ ¿¹ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ myprog ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ a=`expr 1 + 2` # expr ¸í·É¾îÀÇ ½ÇÇà °á°ú°¡ º¯¼ö¿¡ ¼³Á¤. ¦¢ ¦¢ b=`expr $a \* 4` # *´Â ½© Ư¼ö¹®ÀÚÀÓÀ¸·Î À̸¦ expr ¸í·É¾îÀÇ ¦¢ ¦¢ echo $a $b # ÀÎÀÚ Áï, ¿¬»êÀÚ·Î Àü´ÞÇϱâ À§ÇØ \¸¦ ÁöÁ¤.¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ $myprog 3 12 $VAR="Now is the time" $expr "$VAR" : '.*' <----(1) 15 (1)¹ø¿¡ ÁöÁ¤µÇ¾î ÀÖ´Â expr ¸í·É¾î¸¦ À¯½ÉÈ÷ °üÂûÇØ¾ß ÇÑ´Ù. ÀÌ ¿¹´Â VAR º¯¼ö¿¡ ¼³ÀåµÈ ¹®ÀÚ¿­ÀÇ ¹®ÀÚ¼ö¸¦ °è»êÇϱâ À§ÇØ expr ¸í·É¾î¸¦ : ¿¬»êÀÚ¸¦ »ç¿ëÇÏ¿© ÁöÁ¤ÇÏ°í ÀÖ´Ù. ±×·±µ¥ º¯¼öÀÇ ÂüÁ¶ÀΠù¹ø° ÀÎÀÚ¿¡ ´ëÇØ ½Öµû¿ÈÇ¥°¡ (") ÁöÁ¤µÇ¾î ÀÖ´Ù. ±×°ÍÀº º¯¼ö VAR¿¡ ¼³Á¤µÇ¾î ÀÖ´Â °ø¹éÀ» ½©ÀÌ Á¦°ÅÇÏÁö ¸øÇϵµ·Ï Çϱâ À§ÇÔÀÌ´Ù. µÎ¹ø° ÀÎÀÚ·Î '.*' ¶ó´Â Á¤±Ô Ç¥Çö½ÄÀ» ÁöÁ¤ÇÔÀ¸·Î½á ù¹ø° ÀÎÀÚ·Î ÁöÁ¤µÈ º¯¼öÀÇ ¹®ÀÚ¼ö(°ø¹é Æ÷ÇÔ)¸¦ °è»êÇϵµ·Ï ÇÏ°í ÀÖ´Ù. 2. Korn Shell¿¡¼­ÀÇ ¿¬»ê expr ¸í·É¾î´Â Bourne Shell¿¡¼­ ¼öÇàµÆ´ø °Íó·³ Korn Shell¿¡¼­µµ µ¿ÀÏÇÑ ±â´ÉÀ» ¼öÇàÇÑ´Ù. ÀÌÀü °­ÀÇ¿¡¼­ Korn Shell¿¡´Â ¹®ÀÚ¿­ typeÀÇ º¯¼ö ÀÌ¿ÜÀÇ º¯¼ö typeÀ» ¼±¾ðÇÒ¼ö ÀÖ´Â typeset ¸í·É¾î¿¡ ´ëÇØ ¼Ò°³Çß´Ù. ÀÌ ±â´É¸»°íµµ Korn Shell¿¡¼­´Â ¿¬»êÀ» ¼öÇàÇÒ¼ö ÀÖ´Â let°ú ((...))¶ó´Â µÎ°¡ÁöÀÇ Ãß°¡ ¸í·É¾î¸¦ Á¦°øÇÑ´Ù. ÀÌµé ¸í·É¾îÀÇ Çü½ÄÀº ´ÙÀ½°ú °°´Ù. let expression ((expression)) ÀÌµé µÎ°¡Áö ¸í·É¾îÀÇ Â÷ÀÌÁ¡À» ¼³¸íÇÏ¸é ´ÙÀ½°ú °°´Ù. ¦£¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ ¦¢ expression»ó¿¡ ƯÁ¤ÇÑ ½© Ư¼ö¹®ÀÚ¸¦ »ç¿ëÇÒ °æ¿ì¿¡´Â ¦¢ ¦¢ ¦¢ º¸È£¹®ÀÚ·Î ¹­¾îÁÖ¾î¾ß ÇÑ´Ù. ¦¢ ¦¢let ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ ¦¢ expression»ó¿¡ º¯¼ö¸¦ ÁöÁ¤½Ã º¯¼ö¸í ¾Õ¿¡ $¸¦ ±â¼úÇÒ ¦¢ ¦¢ ¦¢ ÇÊ¿ä°¡ ¾ø´Ù. ¦¢ ¦§¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ ¦¢ expression»ó¿¡ »ç¿ëµÈ ½©Æ¯¼ö¹®ÀÚ¸¦ º¸È£ÇÒ ÇÊ¿ä°¡ ¾ø´Ù. ¦¢ ¦¢ ¦¢ ¦¢ ¦¢((..))¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ ¦¢ expression»ó¿¡ »ç¿ëµÈ º¯¼ö¿¡ $ ¹®ÀÚ¸¦ ÁöÁ¤ÇÒ ÇÊ¿ä°¡ ¦¢ ¦¢ ¦¢ ¾ø´Ù. ¦¢ ¦¦¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¸í·É¾îÀÇ Çü½Ä¿¡¼­ expressionÀº º¯¼ö, »ó¼ö ¶Ç´Â º¯¼ö Á¦¾î¹®À» ÁöÁ¤ÇÒ ¼ö ÀÖÀ¸¸ç, ¶ÇÇÑ expressionÀº ¼öÇнÄ, Boolean ¿¬»ê½Ä, ºñÆ® ¿¬»ê½ÄµîÀ» ÀÌ¿ëÇÏ¿© ±â¼úÇÒ ¼ö ÀÖ´Ù. ¿¬»ê½Ä¿¡ ÁöÁ¤ °¡´ÉÇÑ ¿¬»êÀÚµéÀº ´ÙÀ½°ú °°´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ ¿¬»êÀÚ ¦¢ ¼öÇà³»¿ë ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ (expression) ¦¢ Override precedence. ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ -expression ¦¢ À½¼ö ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ lexpression ¦¢ ³í¸®Àû ºÎÁ¤ ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ expression * expression ¦¢ ¼öÇÐÀû ¿¬»ê ¦¢ ¦¢ expression / expression ¦¢ ¦¢ ¦¢ expression % expression ¦¢ ¦¢ ¦¢ expression + expression ¦¢ ¦¢ ¦¢ expression - expression ¦¢ ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ expression << expression ¦¢ µÎ¹ø° expression¿¡ ÁöÁ¤µÈ ºñÆ®¼ö¸¸Å­ ¦¢ ¦¢ expression >> expression ¦¢ ÁÂ/¿ìÃøÀ¸·Î ù¹ø° expression¿¡ ÁöÁ¤µÈ ¦¢ ¦¢ ¦¢ °ªÀ» shiftÇÑ´Ù. ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ expression <= expression ¦¢ Boolean expressions (¿ÞÂÊ¿¡¼­ ¿À¸¥ÂÊÀ¸·Î)¦¢ ¦¢ expression >= expression ¦¢ expressionÀÇ °ªÀÌ 0ÀÌ ¾Æ´Ï¸é 1 ¦¢ ¦¢ expression < expression ¦¢ ±×·¸Áö ¾ÊÀ¸¸é 0ÀÌ´Ù. ¦¢ ¦¢ expression > expression ¦¢ ¦¢ ¦¢ expression == expression ¦¢ ¦¢ ¦¢ expression != expression ¦¢ ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ expression && expression ¦¢ ³í¸®Àû AND ¦¢ ¦¢ expression || expression ¦¢ ³í¸®Àû OR ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ identifier = expression ¦¢ ÇÒ´ç ¿¬»êÀÚ ¦¢ ¦¢ identifier = identifier op expression ¦¢ ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ´ÙÀ½Àº let°ú ((..)) ¸í·É¾îÀÇ ¿¹Á¦´Â ´ÙÀ½°ú °°´Ù. KORN> let x=10*3 # 10 * 3 Áï, 30ÀÌ º¯¼ö x¿¡ ¼³Á¤µÈ´Ù. KORN> echo $x 30 KORN> ((z=x/2)) # 30 / 2 Áï, 15°¡ z¿¡ ¼³Á¤µÈ´Ù. KORN> echo $z 15 KORN> let z=x/2 # 30 / 2 Áï, 15°¡ º¯¼ö z¿¡ ¼³Á¤µÈ´Ù. KORN> echo $z 15 KORN> let y=x\ echo $y 1 KORN> if (($x < z)) # x°¡ zº¸´Ù ÀûÀ¸¸é then ¹®À» ±×·¸Áö ¾ÊÀ¸¸é else¹®À» >then # ½ÇÇàÇÑ´Ù. > echo x \> z > echo $x \< $z >else > echo x is not \< z > echo $x \> $z >fi x is not < z 30 > 15 --------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­µµ ½© ÇÁ·Î±×·¡¹Ö Á¦¾î¹®¿¡ ´ëÇؼ­ °è¼ÓÇÏ¿© °­ÀÇÇÕ´Ï´Ù. --------------------------------------------------------------------------- #123 À¯´Ï½Ã½º (adunis2 ) Shell ProgramÀÇ Á¦¾î¹®: while 05/23 09:15 67 line ½© ÇÁ·Î±×·¥ÀÇ Á¦¾î¹® : while -------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ»çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. -------------------------------------------------------------------- 1. while loop while loop´Â ¸í·É¾îÀÇ Á¾·á»óŸ¦ ±âÁØÀ¸·Î ÀÛ¾÷À» Á¦¾îÇÑ´Ù´Â Á¡¿¡¼­ À¯»çÇÏ´Ù. ±×·¯³ª if´Â Á¾·á»óÅ¿¡ µû¶ó ÁöÁ¤µÈ ¸í·É¾î¸¦ Çѹø¸¸¼öÇàÇÏ´Â °Í°ú ´Þ¸® while loop´Â Á¾·á»óÅ°¡ °ÅÁþ(false)ÀÌ µÉ¶§±îÁö ·çÇÁ¾È¿¡ ÁöÁ¤µÈ ¸í·É¾îÀÇ ½ÇÇàÀ» °è¼ÓÇÑ´Ù´Â Â÷ÀÌ°¡ ÀÖ´Ù. while ¸í·É¾îÀÇ Çü½ÄÀº ´ÙÀ½°ú °°´Ù. while cmd_list do command1 command2 ... commandN done À§ ¸í·É¾îÀÇ Çü½Ä¿¡¼­ cmd_list´Â ·çÇÁÀÇ ¼öÇà ¿©ºÎ¸¦ °áÁ¤Çϱâ À§ÇØ °Ë»çµÇ¾î¾ß ÇÒ ¸í·É¾î¸¦ ÁöÁ¤ÇÏ´Â ºÎºÐÀÌ´Ù. cmd_list ºÎºÐ¿¡´Â º¹¼ö°³ÀÇ ¸í·É¾î¸¦ ÁöÁ¤ÇÒ ¼ö Àִµ¥, ¸¸ÀÏ º¹¼ö°³ÀÇ ¸í·É¾î¸¦ ÁöÁ¤ÇßÀ» °æ¿ì ·çÇÁÀÇ ¼öÇà ¿©ºÎ´Â cmd_list¿¡ ÁöÁ¤µÈ ¸¶Áö¸· ¸í·É¾îÀÇ Á¾·á»óÅ·ΠÆǴܵȴÙ. ¸í·É¾îÀÇ Á¾·á»óÅ°¡ ÂüÀÏ °æ¿ì¿¡´Â do¿Í done »çÀÌ¿¡ ÁöÁ¤µÇ¾î ÀÖ´Â ¸í·É¾îµéÀ» ½ÇÇàÇÑ´Ù. °ÅÁþÀÏ °æ¿ì¿¡´Â do¿Í done»çÀÌ¿¡ ÁöÁ¤µÈ ¸í·É¾î¸¦ ½ÇÇàÇÏÁö ¾Ê°í while ·çÇÁ¸¦ Á¾·áÇÑ´Ù. ´ÙÀ½Àº while ·çÇÁÀÇ »ç¿ë¿¹¸¦ º¸¿©ÁØ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ myprog ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ while test -f junkfile # junkfileÀÌ »èÁ¦µÉ °æ¿ì¿¡ °ÅÁþÀÌ ¦¢ ¦¢ do # µÇ¾î while ±¸¹®ÀÌ Á¾·á. ¦¢ ¦¢ echo junkfile still on disk ¦¢ ¦¢ sleep 5 # 5ÃÊ°£ ½ÇÇàÀ» ÁßÁöÇÑ´Ù. ¦¢ ¦¢ done ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ $ls j* junkfile $myprog junkfile still on disk # sleep ¸í·É¾î·Î ÀÎÇØ 5ÃÊ °£°ÝÀ¸·Î Ç¥½Ã. junkfile still on disk junkfile still on disk ... # junkfileÀ̶ó´Â È­ÀÏÀÌ »èÁ¦µÇ¾î¾ß¸¸ # ÇÁ·Î±×·¥ÀÌ Á¾·áÇÑ´Ù. Áö±ÝÀº foreground # ¿¡¼­ ½ÇÇàµÇ°í Àֱ⠶§¹®¿¡ È­ÀÏÀ» »èÁ¦ # ÇÒ ¼ö°¡ ¾ø¾î¼­ »ç¿ëÀÚ°¡ ·Î # ÇÁ·Î±×·¥ ½ÇÇàÀ» ½ÇÇàÁߴܽÃÄ×´Ù. $myprog& # À̹ø¿£ ÇÁ·Î±×·¥À» background¿¡¼­ ½ÇÇà.. 284 $junkfile still on disk # background¿¡¼­ÀÇ ½ÇÇà°á°ú Ç¥½ÃµÇ´Â Ãâ·Â junkfile still on disk rm junkfile # »ç¿ëÀÚ°¡ rm ¸í·É¾î¸¦ ÀÌ¿ë, È­ÀÏÀ» »èÁ¦. $ # ÇÁ·Î±×·¥ÀÌ Á¾·áµÇ¾úÀ½À» È®ÀÎÇÒ ¼ö ÀÖ´Ù. --------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­µµ ½© ÇÁ·Î±×·¡¹Ö Á¦¾î¹®¿¡ ´ëÇؼ­ °è¼ÓÇÏ¿© °­ÀÇÇÕ´Ï´Ù. --------------------------------------------------------------------------- #124 À¯´Ï½Ã½º (adunis2 ) shell ProgramÀÇ Á¦¾î¹®: until 05/27 09:43 68 line ½© ÇÁ·Î±×·¥ÀÇ Á¦¾î¹® : until -------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ»çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. -------------------------------------------------------------------- 1. until loop until loop´Â while loop¿Í ¹Ý´ë Çü½ÄÀÇ ÀÛ¾÷À» ¼öÇàÇÑ´Ù. while loop´Â ¸í·É¾îÀÇ Á¾·á»óÅ°¡ °ÅÁþ(false)ÀÌ µÉ¶§±îÁö ·çÇÁ¾È¿¡ ÁöÁ¤µÈ ¸í·É¾îÀÇ ½ÇÇàÀ» °è¼ÓÇϴµ¥ ¹ÝÇØ, until loop´Â ¸í·É¾îÀÇ Á¾·á»óÅ°¡ Âü(true)ÀÌ µÉ¶§±îÁö ÁöÁ¤µÈ ¸í·É¾î¸¦ ½ÇÇàÇÑ´Ù. until ¸í·É¾îÀÇ Çü½ÄÀº ´ÙÀ½°ú °°´Ù. until cmd_list do command1 command2 ... commandN done À§ ¸í·É¾îÀÇ Çü½Ä¿¡¼­ cmd_list´Â ·çÇÁÀÇ ¼öÇà ¿©ºÎ¸¦ °áÁ¤Çϱâ À§ÇØ °Ë»çµÇ¾î¾ß ÇÒ ¸í·É¾î¸¦ ÁöÁ¤ÇÏ´Â ºÎºÐÀÌ´Ù. cmd_list ºÎºÐ¿¡´Â º¹¼ö°³ÀÇ ¸í·É¾î¸¦ ÁöÁ¤ÇÒ ¼ö Àִµ¥, ÀÌ°æ¿ì ·çÇÁÀÇ ¼öÇà ¿©ºÎ´Â cmd_list¿¡ ÁöÁ¤µÈ ¸¶Áö¸· ¸í·É¾îÀÇ Á¾·á»óÅ·ΠÆǴܵȴÙ. ¸í·É¾îÀÇ Á¾·á»óÅ°¡ °ÅÁþÀÏ °æ¿ì¿¡´Â do¿Í done »çÀÌ¿¡ ÁöÁ¤µÇ¾î ÀÖ´Â ¸í·É¾îµéÀÌ ½ÇÇàµÇ³ª, ÂüÀÏ °æ¿ì¿¡´Â do¿Í done»çÀÌ¿¡ ÁöÁ¤µÈ ¸í·É¾î¸¦ ½ÇÇàÇÏÁö ¾Ê°í until ·çÇÁ¸¦ Á¾·áÇÑ´Ù. ´ÙÀ½Àº until ·çÇÁÀÇ »ç¿ë¿¹¸¦ º¸¿©ÁØ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ myprog ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ until test -f junkfile # junkfileÀ̶ó´Â È­ÀÏÀÌ Á¸ÀçÇÒ °æ¿ì¿¡ ¦¢ ¦¢ do # ÂüÀ̵Ǿî untilÀ» Á¾·áÇÑ´Ù. ¦¢ ¦¢ echo junkfile still on disk ¦¢ ¦¢ sleep 5 # 5ÃÊ°£ ½ÇÇàÀ» ÁßÁöÇÑ´Ù. ¦¢ ¦¢ done ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ $ls j* j*: No such file or directory # È­ÀÏÀÌ ¾ø´Â°ÍÀ» È®ÀÎÇÒ ¼ö ÀÖ´Ù. $myprog junkfile still on disk # sleep ¸í·É¾î·Î ÀÎÇØ 5ÃÊ °£°ÝÀ¸·Î Ç¥½Ã. junkfile still on disk junkfile still on disk ... # junkfileÀ̶ó´Â È­ÀÏÀÌ Á¸ÀçÇؾ߸¸ # ÇÁ·Î±×·¥ÀÌ Á¾·áÇÑ´Ù. Áö±ÝÀº foreground # ¿¡¼­ ½ÇÇàµÇ°í Àֱ⠶§¹®¿¡ È­ÀÏÀ» »ý¼º # ÇÒ ¼ö°¡ ¾ø¾î¼­ »ç¿ëÀÚ°¡ ·Î # ÇÁ·Î±×·¥ ½ÇÇàÀ» ½ÇÇàÁߴܽÃÄ×´Ù. $myprog& # À̹ø¿£ ÇÁ·Î±×·¥À» background¿¡¼­ ½ÇÇà.. 284 $junkfile still on disk # background¿¡¼­ÀÇ ½ÇÇà°á°ú Ç¥½ÃµÇ´Â Ãâ·Â junkfile still on disk cat > junkfile # »ç¿ëÀÚ°¡ cat ¸í·É¾î¸¦ ÀÌ¿ë È­ÀÏÀ» »ý¼º. $ # ÇÁ·Î±×·¥ÀÌ Á¾·áµÇ¾úÀ½À» È®ÀÎÇÒ ¼ö ÀÖ´Ù. --------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­µµ ½© ÇÁ·Î±×·¡¹Ö Á¦¾î¹®¿¡ ´ëÇؼ­ °è¼ÓÇÏ¿© °­ÀÇÇÕ´Ï´Ù. --------------------------------------------------------------------------- #126 À¯´Ï½Ã½º (adunis2 ) Shell ProgramÀÇ Á¦¾î¹®: while,until Á¤¸® 06/05 15:23 69 line ½© ÇÁ·Î±×·¥ÀÇ Á¦¾î¹® : while°ú until -------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ»çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. -------------------------------------------------------------------- while°ú until ¸í·É¾î¿¡¼­´Â cmd_list»ó¿¡ ÁöÁ¤µÇ¾î ÀÖ´Â ¸¶Áö¸· ¸í·É¾îÀÇ Á¾·á»óÅ°¡ whileÀÎ °æ¿ì ÂüÀ϶§±îÁö, untilÀº °ÅÁþÀ϶§±îÁö do¿Í done ¹®Àå»çÀÌÀÇ ¸í·É¾îµéÀÌ ¸Å¹ø ·çÇÁ°¡ ¼öÇàµÉ¶§ ¸¶´Ù ½ÇÇàµÈ´Ù. ±×¸®°í cmd_list³»ÀÇ ¸ðµç ¸í·É¾îµéµµ ¸Å¹ø ·çÇÁÀÇ Ã³À½¿¡¼­ ½ÇÇàµÇ¾îÁø´Ù. ´Ü, cmd_list»ó¿¡ º¹¼ö°³ÀÇ ¸í·É¾î°¡ ÁöÁ¤µÇ¾î ÀÖÀ» °æ¿ì ·çÇÁ ¼öÇà¿©ºÎÀÇ ÆÇ´ÜÀº ¸¶Áö¸· ¸í·É¾îÀÇ Á¾·á»óÅ·Π°áÁ¤µÈ´Ù. ´ÙÀ½Àº À̸¦ È®ÀÎÇϱâ À§ÇÑ ¿¹Á¦ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ Bourne/Korn ¦¢< ÀÌ ¿¹´Â Bourne/Korn Shell ¸ðµÎ¿¡¼­ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ½ÇÇà °¡´ÉÇÑ ÇÁ·Î±×·¥ÀÌ´Ù. ¦¢$x=0 ¦¢ ¦¢$while echo testing ¦¢< while ±¸¹®»óÀÇ cmd_list ºÎºÐ¿¡´Â ¦¢> echo here $x ¦¢ 3°³ÀÇ ¸í·É¾î°¡ ÁöÁ¤µÇ¾î ÀÖ´Ù. ¦¢> test $x -ne 3 ¦¢ ÀÌ °æ¿ì whileÀÇ Á¶°Ç ÆÇ´ÜÀÇ ±âÁØÀº ¦¢>do ¦¢ °¡Àå ¸¶Áö¸·¿¡ ÁöÁ¤µÈ ¸í·ÉÀÌ µÈ´Ù. ¦¢> x=`expr $x + 1` ¦¢< Á¶°ÇÀÌ ÂüÀÏ °æ¿ì¿¡¸¸ ½ÇÇàµÇ´Â ¦¢> echo inside $x ¦¢ ¸í·É¾îµéÀÌ´Ù. ¦¢>done ¦¢ ¦¢testing ¦¢ ¦¢here 0 ¦¢ ¦¢ inside 1 ¦¢ ¦¢testing ¦¢ ¦¢here 1 ¦¢ ¦¢ inside 2 ¦¢ ¦¢testing ¦¢ ¦¢here 2 ¦¢ ¦¢ inside 3 ¦¢ ¦¢testing ¦¢ ¦¢here 3 ¦¢< x º¯¼öÀÇ °ªÀÌ 3ÀÓÀ¸·Î °ÅÁþÀÌµÇ¾î ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÇÁ·Î±×·¥ÀÌ Á¾·áµÈ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ Korn ¦¢< Korn Shell ȯ°æ¿¡¼­¸¸ ¼öÇà°¡´ÉÇÏ´Ù. ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¿Ö³ÄÇϸé (( ¿¬»êÀÚ´Â Korn Shell ¦¢KORN>x=0 ¦¢ ¿¡¼­¸¸ Áö¿øÇϱ⠶§¹®ÀÌ´Ù. ¦¢KORN>until echo testing ¦¢< Á¶°ÇÀÌ ÂüÀ̵ɶ§±îÁö ÁöÁ¤ÇÑ ¸í·É¾îµé ¦¢> echo here $x ¦¢ À» ¹Ýº¹ ¼öÇàÇÑ´Ù. ¦¢> test $x -eq 3 ¦¢ ¦¢>do ¦¢ ¦¢> ((x=x+1)) ¦¢< (( ¿¬»êÀÚ´Â Korn Shell °íÀ¯ÀÇ ¦¢> echo inside $x ¦¢ Math ¿¬»êÀÚÀÌ´Ù. ¦¢>done ¦¢ ¦¢testing ¦¢ ¦¢here 0 ¦¢ ¦¢ inside 1 ¦¢ ¦¢testing ¦¢ ¦¢here 1 ¦¢ ¦¢ inside 2 ¦¢ ¦¢testing ¦¢ ¦¢here 2 ¦¢ ¦¢ inside 3 ¦¢ ¦¢testing ¦¢ ¦¢here 3 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ --------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­µµ ½© ÇÁ·Î±×·¡¹Ö Á¦¾î¹®¿¡ ´ëÇؼ­ °è¼ÓÇÏ¿© °­ÀÇÇÕ´Ï´Ù. --------------------------------------------------------------------------- #127 À¯´Ï½Ã½º (adunis2 ) Shell ProgramÀÇ Á¦¾î¹®: true, false 06/07 14:39 71 line ½© ÇÁ·Î±×·¥ÀÇ Á¦¾î¹® : true¿Í false -------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ»çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. -------------------------------------------------------------------- Áö±Ý±îÁö ¼Ò°³ÇÑ ¸î°³ÀÇ Á¦¾î¹®¿¡¼­´Â, Á¦¾î¹®»ó¿¡ ÁöÁ¤µÈ ¸í·É¾îÀÇ ½ÇÇà °á°ú¿¡ µû¶ó¼­ Âü°ú °ÅÁþ¿¡ µû¸¥ Á¶°Ç ºÐ±â¸¦ ½ÇÇàÇÏ¿´´Ù. ±×·±µ¥ ÇÁ·Î±×·¥ ÀÛ¼º½Ã ¹Ýº¹ Á¦¾î¹®µéÀ» »ç¿ëÇÏ°íÀÚ ÇÒ °æ¿ì¿¡, ÇÑ°¡Áö Á¦¾àÀÌ µû¸£°Ô µÈ´Ù. ±×°ÍÀº ¹Ýº¹ Á¦¾î¹®»ó¿¡ ¹Ýµå½Ã ¹Ýº¹ Á¶°ÇÀ» °áÁ¤Çϱâ À§ÇÑ ¸í·É¾î¸¦ ÁöÁ¤ÇØ¾ß ÇÑ´Ù´Â °ÍÀÌ´Ù. ¿¹¸¦µé¾î while ±¸¹®À» »ìÆ캸ÀÚ. while±¸¹®Àº ¹Ýµå½Ã ´ÙÀ½°ú °°Àº Çü½ÄÀ» °¡Á®¾ß¸¸ ÇÑ´Ù. while Á¶°Ç_ÆÇ´Ü_¸í·É¾î do ¹Ýº¹½ÇÇàÇÒ_¸í·É¹® done ÀÌ¿Í °°Àº °æ¿ì Á¶°Ç_ÆÇ´Ü_¸í·É¾î¸¦ ¹Ýµå½Ã ÁöÁ¤ÇØ¾ß Çϴ°¡? ±×·¸´Ù, while ±¸¹®¿¡¼­´Â ¹Ýµå½Ã Á¶°Ç_ÆÇ´Ü_¸í·É¾î¸¦ ÁöÁ¤Çؾ߸¸ ÇÑ´Ù. ±×·±µ¥ ÇÁ·Î±×·¥ ÀÛ¼º½Ã ¹Ýº¹ÀûÀ¸·Î ¸í·É¾îµéÀ» ½ÇÇàÇϱâ À§ÇØ, while ±¸¹®Àº »ç¿ëÇؾ߸¸ Çϴµ¥, ¸¶¶¥È÷ ÁöÁ¤ÇÒ Á¶°Ç_ÆÇ´Ü_Á¦¾î¹®ÀÌ ¾øÀ» °æ¿ì°¡ ÀÖ´Ù°í ÇÏÀÚ. ÀÌ °æ¿ì while ±¸¹®À» »ç¿ëÇÏÁö ¸øÇÏ°Ô µÉ°ÍÀÌ´Ù. ¹Ù·Î ÀÌ·± °æ¿ì¿¡ ¿ä±äÇÏ°Ô »ç¿ëÇÒ ¼ö ÀÖµµ·Ï, Shell¿¡¼­´Â true¿Í false¶ó´Â µÎ°³ÀÇ Á¦¾î¹®À» Ãß°¡·Î Á¦°øÇÑ´Ù. true Á¦¾î¹®Àº Ç×»ó true(Âü)À̶ó´Â °ªÀ» µ¹·ÁÁÖ¸ç, false Á¦¾î¹®Àº Ç×»ó false(°ÅÁþ)À̶ó´Â °ªÀ» µ¹·ÁÁØ´Ù. ´ÙÀ½Àº if Á¦¾î¹®°ú ÇÔ²² true¿Í false ¸í·É¾î¸¦ »ç¿ëÇÏ´Â ¿¹Á¦ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$if true ¦¢< true ¸í·É¾î·Î ÀÎÇØ, if Á¦¾î¹®ÀÇ ¦¢>then ¦¢ Á¶°Ç ÆÇ´Ü °á°ú°¡ Ç×»ó Âü(true)°¡ µÈ´Ù. ¦¢> date ¦¢ ¦¢>fi ¦¢ ¦¢Tue Oct 23 11:20:31 EDT 1990 ¦¢ ¦¢ ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢$if false ¦¢< false ¸í·É¾î·Î ÀÎÇØ, if Á¦¾î¹®ÀÇ ¦¢>then ¦¢ Á¶°Ç ÆÇ´Ü °á°ú°¡ Ç×»ó °ÅÁþ(false)°¡ ¦¢> date ¦¢ µÈ´Ù. ¦¢>fi ¦¢ ¦¢$ ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ À§ÀÇ ¿¹Á¦¿¡¼­ÀÇ true/false Á¦¾î¹®Àº ¸ð¼ø¾øÀÌ »ç¿ëµÇ°í ÀÖ´Ù. ±×·±µ¥ ´ÙÀ½°ú °°Àº °æ¿ì¿¡´Â ¸ð¼øÀÌ ¹ß»ýÇÑ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢while true ¦¢ < while ±¸¹®Àº Á¶°ÇÀÌ ÂüÀÏ °æ¿ì¿¡´Â °è¼ÓÀûÀ¸·Î ¦¢do ¦¢ ÁöÁ¤ÇÑ ¸í·É¾î(¿©±â¼­´Â ls)¸¦ ¹Ýº¹ÀûÀ¸·Î ¼öÇàÇÑ´Ù. ¦¢ ls ¦¢ ±×·¡¼­ ÀÌ ¿¹ÀÇ °æ¿ì ¹«ÇÑ·çÇÁ¸¦ µ¹°ÍÀÌ´Ù. ¦¢done ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÀÌ¿Í°°Àº °æ¿ì¿¡´Â while Á¦¾î¹®À» Á¾·áÇÏ´Â ½ËÁ¡À» do¿Í done»çÀÌ¿¡¼­ ¼±¾ðÇØ ÁÖ¾î¾ß ÇÑ´Ù. ¹Ù·Î ÀÌ¿Í°°Àº °æ¿ì¸¦ À§ÇØ Shell¿¡¼­ break¹× continue ¸í·É¾î¸¦ Á¦°øÇÑ´Ù. ´ÙÀ½ °­ÀÇ¿¡¼­ break ¹× continue ¸í·É¾î¿¡ ´ëÇØ ÀÚ¼¼È÷ ¼Ò°³ÇÑ´Ù. --------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­µµ ½© ÇÁ·Î±×·¡¹Ö Á¦¾î¹®¿¡ ´ëÇؼ­ °è¼ÓÇÏ¿© °­ÀÇÇÕ´Ï´Ù. --------------------------------------------------------------------------- #128 À¯´Ï½Ã½º (adunis2 ) Shell ProgramÀÇ Á¦¾î¹®: break, continue 06/08 10:54 98 line ½© ÇÁ·Î±×·¥ÀÇ Á¦¾î¹® : break¿Í continue -------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ»çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. -------------------------------------------------------------------- ÀÌÀü °­ÀÇ¿¡¼­ while ±¸¹®»ó¿¡ true ¶Ç´Â false ¸í·É¾î¸¦ »ç¿ëÇßÀ» °æ¿ì, ¹«ÇÑ ·çÇÁ°¡ ¼öÇàµÉ °¡´É¼ºÀÌ ÀÖÀ½À» ¼³¸íÇß´Ù. ±×¸®°í ÀÌ·± °æ¿ì ¹Ýº¹ ¼öÇàµÇ´Â ¸í·É¾î»ó¿¡ ·çÇÁ¸¦ Á¾·áÇϱâ À§ÇÑ ¸í·É¾î¸¦ ÁöÁ¤ÇØ¾ß ÇÑ´Ù. ÀÌ·± °æ¿ì ÀÌÀü¿¡ ¼³¸íÇß´ø exit ¸í·É¾î¸¦ ÁöÁ¤ÇÑ´Ù¸é ¾î¶»°Ô µÉ±î? exit ¸í·É¾î´Â ½© ÇÁ·Î±×·¥ ÀÚü¸¦ Á¾·áÇÏ´Â ¸í·É¾îÀ̱⠶§¹®¿¡ ÇÁ·Î±×·¥ ÀÚü°¡ Á¾·áÇϰԵȴÙ. ±×·¸±â¶§¹®¿¡ ½© ÇÁ·Î±×·¥¿¡¼­ ·çÇÁ Á¦¾î¹® ÀÌÈÄ¿¡ ±â¼úµÈ ¸í·É¾îµéÀº ½ÇÇàµÇÁö ¾Ê°ÔµÈ´Ù. ¹Ù·Î ÀÌ¿Í°°Àº °æ¿ì, ½© ÇÁ·Î±×·¥Àº Á¾·áÇÏÁö ¾Ê°í, ·çÇÁ¸¸À» Á¾·áÇÒ ¼ö ÀÖµµ·Ï Á¦°øµÇ´Â ¸í·ÉÀÌ ¹Ù·Î break ¸í·É¾îÀÌ´Ù. 1. break ¸í·É¾î break ¸í·É¾î´Â ·çÇÁ Á¦¾î¹®¿¡¼­ À¯¿ëÇÏ°Ô »ç¿ëµÈ´Ù. break¸í·É¾î´Â ·çÇÁ Á¦¾î¹® ÀÌÈÄ¿¡ ÁöÁ¤µÈ ¸í·É¾îµéÀÇ ½ÇÇàÀ» °è¼ÓÇϱâ À§ÇÏ¿©, ·çÇÁ¸¦ Á¾·áÇÒ ¼ö ÀÖ°Ô ÇØÁØ´Ù. break ¸í·É¾î´Â ¸ðµç ·çÇÁ Á¦¾î¹®µé¿¡¼­ »ç¿ë °¡´ÉÇÏ´Ù. break ¸í·É¾îÀÇ Çü½ÄÀº ´ÙÀ½°ú °°´Ù. break [n] À§ Çü½Ä¿¡¼­ nÀº Á¾·áÇÒ ·çÇÁÀÇ °¹¼ö¸¦ ³ªÅ¸³»´Â ÀÎÀڷμ­, ÇÊ¿ä½Ã ÁöÁ¤ÇÑ´Ù. ¿¹¸¦µé¸é, ÇϳªÀÇ ·çÇÁ Á¦¾î¹®³»¿¡ ¶ÇÇϳªÀÇ ·çÇÁ¹®ÀÌ ÁöÁ¤µÇ¾î ÀÖÀ» °æ¿ì, 1À» ÁöÁ¤ÇÏ¸é ¾ÈÂÊ ·çÇÁ¸¸À» Á¾·áÇÑ ÈÄ ¹Ù±ùÂÊ ·çÇÁ¸¦ °è¼ÓÇÏ¿© ¼öÇàÇÑ´Ù. ±×·¯³ª nÀ¸·Î 2¸¦ ÁöÁ¤ÇÒ °æ¿ì¿¡´Â ¾ÈÂÊ¹× ¹Ù±ùÂÊ ·çÇÁ ¸ðµÎ¸¦ ÇÔ²²Á¾·áÇÑÈÄ, ÀÌÈÄ ÁöÁ¤µÈ ¸í·É¾îµéÀ» ¼öÇàÇÑ´Ù. ´ÙÀ½Àº break ¸í·É¾îÀÇ »ç¿ë¿¹ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢while.ex ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢while true ¦¢ ÀÌ ¿¹¿¡ ÁöÁ¤µÈ commandµéÀÌ ¼öÇàµÇ´Â ¦¢do ¦¢ ¼ø¼­¸¦ »ìÆ캸ÀÚ. ¦¢ command1 ¦¢ 1) junkfileÀÌ Á¸ÀçÇÏ°í ÀÖ´Â °æ¿ì ¦¢ if [-f junkfile] ¦¢ command1 ¦¢ then ¦¢ rm junkfile ¦¢ rm junkfile ¦¢ command2 ¦¢ else ¦¢ command1 ¦¢ break ¦¢ break ¦¢ fi ¦¢ command3 ¦¢ command2 ¦¢2)junkfileÀÌ ±âÁ¸¿¡ ¾ø¾ú´ø °æ¿ì ¦¢done ¦¢ command1 ¦¢command3 ¦¢ break ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ command3 À§¿¡¼­ ¼³¸íÇѳ»¿ëÀ» Àß»ìÆ캸¸é, break ¸í·É¾îÀÇ »ç¿ë¿¹¸¦ Àß ÀÌÇØÇÒ¼ö ÀÖÀ» °ÍÀÌ´Ù. µ¶ÀÚ ½º½º·Î ±íÀÌ »ý°¢Çغ¸±â¸¦ ¹Ù¶õ´Ù. 2. breakÀÇ ¸í·É¾îÀÇ ´ëüÇü½Ä ºñ·Ï break ¸í·É¾î°¡ ·çÇÁÀÇ ¿ÜºÎ·Î ºüÁ®³ª¿Ã¼ö ÀÖ´Ù Çصµ, ¸¹Àº ÇÁ·Î±×·¡¸ÓµéÀº ·çÇÁÀÇ ¿ÜºÎ·Î ºüÁ®³ª¿À´Âµ¥ À־ ºó¾àÇÑ ÇÁ·Î±×·¡¹Ö Çü½ÄÀ¸·Î ¿©±ä´Ù. ±¸Á¶Àû ÇÁ·Î±×·¡¹Ö ¹æ½ÄÀ¸·Î ÇÁ·Î±×·¥ ÀÛ¼º½Ã¿¡´Â, ·çÇÁ¿¡ ÇϳªÀÇ ÀÔ±¸ ¹× ÇϳªÀÇ Ãⱸ°¡ ¼±¾ðµÇ¾î¾ß Çϴµ¥, break ¸í·É¾î¸¦ ÀÌ¿ëÇÑ ÇÁ·Î±×·¥¿¡¼­´Â ÀÌ¿Í°°Àº ÇÁ·Î±×·¥ ÀÛ¼ºÀÌ °ï¶õÇÏ´Ù. ÀÌ¿Í °°Àº °æ¿ì ·çÇÁÁ¶°ÇÀ» º¯°æÇÔ¿¡ ÀÇÇؼ­ break ¸í·É¾î¸¦ »ç¿ëÇÏÁö ¾Ê°íµµ, ·çÇÁ¸¦ ¹þ¾î³ªµµ·Ï ÇÁ·Î±×·¥À» ÀÛ¼ºÇÒ ¼ö ÀÖ´Ù. ´ÙÀ½Àº break ¸í·É¾î¸¦ »ç¿ëÇÏÁö ¾Ê°í, ·çÇÁ¸¦ ¹þ¾î³ª´Â ¹æ½Ä¿¡ ´ëÇÑ ¿¹ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢break.alt ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢command1 ¦¢ ¦¢while [-f junkfile] ¦¢< while ·çÇÁ´Â junkfileÀ̶ó´Â È­ÀÏÀÌ ¦¢ do ¦¢ Á¸ÀçÇÏÁö ¾ÊÀ»¶§±îÁö ¹Ýº¹ ¼öÇàµÈ´Ù. ¦¢ rm junkfile ¦¢< ·çÇÁ ¹Ýº¹¹®»ó¿¡ ÁöÁ¤µÇ¾î ÀÖ´Â rm ¸í·É¾î¿¡ ¦¢ command2 ¦¢ ÀÇÇØ, while Á¶°ÇÀÌ °ÅÁþÀÌµÇ¾î ·çÇÁ¸¦ ¦¢ command1 ¦¢ ¹þ¾î³ª°Ô ÇÑ´Ù. Áï, rm ¸í·É¾î°¡ break ¦¢ done ¦¢ ¸í·É¾îÀÇ ´ëü Çü½ÄÀ¸·Î »ç¿ëµÇ°í ÀÖ´Ù. ¦¢command3 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ 3. continue ¸í·É¾î continue ¸í·É¾î´Â ·çÇÁ»ó¿¡ ÁöÁ¤µÇ¾î ÀÖ´Â ÈÄ¼ÓµÈ ¸í·É¾î¸¦ ¼öÇàÇÏÁö ¾Ê°í, ·çÇÁÀÇ ½ÃÀۺκÐÀ¸·Î Á¦¾î¸¦ ¿Å±â±â À§Çؼ­ »ç¿ëÇÏ´Â ·çÇÁ Á¦¾î¹®°ú ÇÔ²² ºó¹øÇÏ°Ô »ç¿ëÇÏ´Â Á¦¾î¹®ÀÌ´Ù. continue ¸í·É¾îÀÇ Çü½ÄÀº ´ÙÀ½°ú °°´Ù. continue [n] ¿©±â¿¡¼­ nÀº °è¼Ó ¼öÇàÇÒ ·çÇÁ¸¦ ÁöÁ¤Çϱâ À§ÇØ, ÇÊ¿ä½Ã »ç¿ëÇÏ´Â ÀÎÀÚÀÌ´Ù. ¿¹¸¦µé¾î ÇϳªÀÇ ·çÇÁ¾È¿¡ ¶ÇÇϳªÀÇ ³»ºÎ ·çÇÁ ±×¸®°í ±×¾È¿¡ ¶Ç ÇϳªÀÇ ·çÇÁ°¡ ¼±¾ðµÇ¾î ÀÖ´Ù°í ÇßÀ»¶§, °¡Àå ³»ºÎ ·çÇÁ¾È¿¡ continue 2¶ó°í ÁöÁ¤µÇ¾î ÀÖÀ¸¸é, ÀÛ¾÷Àº °¡Àå ¿ÜºÎÀÇ ·çÇÁ·ÎºÎÅÍ °è¼Ó ¼öÇàµÈ´Ù. ÀÎÀÚ¾øÀÌ continue ¹®À» ¼öÇàÇßÀ» °æ¿ì¿¡´Â 1ÀÌ °¡Á¤µÈ´Ù. --------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­µµ ½© ÇÁ·Î±×·¡¹Ö Á¦¾î¹®¿¡ ´ëÇؼ­ °è¼ÓÇÏ¿© °­ÀÇÇÕ´Ï´Ù. --------------------------------------------------------------------------- #129 À¯´Ï½Ã½º (adunis2 ) Shell ProgrammingÀÇ Ãß°¡»çÇ×: signal 06/09 13:42 130 line Shell ProgrammingÀÇ Ãß°¡»çÇ× : signal -------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ»çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. -------------------------------------------------------------------- ½Ã±×³ÎÀº ºñµ¿±âÀûÀÎ »ç°ÇµéÀÇ ¹ß»ýÀ» ÇÁ·Î¼¼½º¿¡°Ô ¾Ë·ÁÁÖ±â À§ÇÑ ¼ö´ÜÀ¸·Î »ç¿ëµÈ´Ù. ÇÁ·Î¼¼½ºµéÀº ½Ã½ºÅÛ È£Ãâ(´ëÇ¥ÀûÀ¸·Î kill)À» ÅëÇØ ¼­·Î°£¿¡ ½Ã±×³ÎÀ» º¸³¾ ¼öµµ ÀÖ°í, ¶Ç´Â Ä¿³ÎÀÌ ³»ºÎÀûÀ¸·Î ½Ã±×³ÎÀ» º¸³¾ ¼öµµ ÀÖ´Ù. SVR 4.0 À¯´Ð½º´Â ÇÁ·Î¼¼½º¿¡ º¸³¾¼ö ÀÖ´Â ¾Æ·¡ µµÇ¥¿Í °°Àº 31°³ÀÇ ½Ã±×³ÎÀ» Á¦°øÇÑ´Ù. ´ÙÀ½Àº SVR 4.0 À¯´Ð½º¿¡¼­ »ç¿ëÇÏ´Â ½Ã±×³ÎµéÀ» Á¤¸®ÇÑ °ÍÀÌ´Ù. ¦£¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¤ ¦¢ ¹øÈ£ ¦¢ ÀÌ ¸§ ¦¢ ¿ë µµ ¦¢Action¦¢ ¦§¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦© ¦¢ 0 ¦¢ EXIT ¦¢Exit from the shell ¦¢Exit ¦¢ ¦§¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦© ¦¢ 1 ¦¢ HUP ¦¢Hang-up ¦¢Exit ¦¢ ¦§¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦© ¦¢ 2 ¦¢ INT ¦¢Interrupt( or ) ¦¢Exit ¦¢ ¦§¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦© ¦¢ 3 ¦¢ QUIT ¦¢Quit(-l;core dump)(ASCII FS) ¦¢Core ¦¢ ¦§¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦© ¦¢ 4 ¦¢ ILL ¦¢Illegal instruction(not reset when caught) ¦¢Core ¦¢ ¦§¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦© ¦¢ 5 ¦¢ TRAP ¦¢Trace trap(not reset when caught) ¦¢Core ¦¢ ¦§¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦© ¦¢ 6 ¦¢ IOT ¦¢Used by Abort ¦¢Core ¦¢ ¦§¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦© ¦¢ 7 ¦¢ EMT ¦¢Emulation Trap ¦¢Core ¦¢ ¦§¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦© ¦¢ 8 ¦¢ FPE ¦¢Floating point exception ¦¢Core ¦¢ ¦§¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦© ¦¢ 9 ¦¢ KILL ¦¢Kill(cannot be caught or ignored) ¦¢Core ¦¢ ¦§¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦© ¦¢ 10 ¦¢ BUS ¦¢Bus error ¦¢Core ¦¢ ¦§¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦© ¦¢ 11 ¦¢ SEGV ¦¢Segmentation violation ¦¢Core ¦¢ ¦§¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦© ¦¢ 12 ¦¢ SYS ¦¢Bad argument to a system call ¦¢Core ¦¢ ¦§¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦© ¦¢ 13 ¦¢ PIPE ¦¢Write to pipe without a process to read it ¦¢Exit ¦¢ ¦§¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦© ¦¢ 14 ¦¢ ALRM ¦¢Alarm time-out ¦¢Exit ¦¢ ¦§¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦© ¦¢ 15 ¦¢ TERM ¦¢Software termination signal(sent by kill by default ¦¢ ¦¢ ¦¢ ¦¢ ¦¢Exit ¦¢ ¦§¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦© ¦¢ 16 ¦¢ USR1 ¦¢User defined signal 1 ¦¢Exit ¦¢ ¦§¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦© ¦¢ 17 ¦¢ USR2 ¦¢User defined signal 2 ¦¢Exit ¦¢ ¦§¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦© ¦¢ 18 ¦¢ CHLD ¦¢Death of child ¦¢Ignore¦¢ ¦§¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦© ¦¢ 19 ¦¢ PWR ¦¢Power-fail reset ¦¢Ignore¦¢ ¦§¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦© ¦¢ 20 ¦¢ WINCH ¦¢Window size change ¦¢Ignore¦¢ ¦§¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦© ¦¢ 21 ¦¢ URG ¦¢Urgent socket condition ¦¢Ignore¦¢ ¦§¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦© ¦¢ 22 ¦¢ IO ¦¢Socket I/O possible ¦¢Ignore¦¢ ¦§¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦© ¦¢ 23 ¦¢ STOP ¦¢Stopped signal (cannot be caught or ignored) ¦¢Stop ¦¢ ¦§¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦© ¦¢ 24 ¦¢ STP ¦¢Stopped user ¦¢Stop ¦¢ ¦§¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦© ¦¢ 25 ¦¢ CONT ¦¢Continued ¦¢Ignore¦¢ ¦§¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦© ¦¢ 26 ¦¢ TTIN ¦¢Stopped tty input ¦¢Stop ¦¢ ¦§¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦© ¦¢ 27 ¦¢ TTOU ¦¢Stopped tty output ¦¢Stop ¦¢ ¦§¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦© ¦¢ 28 ¦¢ ALRM ¦¢Virtual timer expired ¦¢Exit ¦¢ ¦§¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦© ¦¢ 29 ¦¢ PROF ¦¢Profiling timer expired ¦¢Exit ¦¢ ¦§¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦© ¦¢ 30 ¦¢ XCPU ¦¢CPU time limit exceeded ¦¢Core ¦¢ ¦§¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦© ¦¢ 31 ¦¢ XFSZ ¦¢File size limit exceeded ¦¢Core ¦¢ ¦¦¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¥ ¼öÇàÁßÀÎ ÇÁ·Î¼¼½º°¡ ½Ã±×³ÎÀ» ¹Þ¾ÒÀ» °æ¿ì, ±× ½Ã±×³Î¿¡ »óÀÀÇÏ´Â µ¿ÀÛ(Action)ÀÌ ¼öÇàµÇ´Âµ¥, ´ë·«ÀûÀ¸·Î ½Ã±×³Î¿¡ ÀÇÇØ ¼öÇàµÇ´Â µ¿ÀÛÀ¸·Î´Â ÇÁ·Î¼¼½ºÀÇ Á¾·á(exit), ½Ã±×³ÎÀÇ ¹«½Ã(Ignore) ±×¸®°í ƯÁ¤ÀÇ »ç¿ëÀÚ¹× ½Ã½ºÅÛ ÇÔ¼ö(Function)ÀÇ ½ÇÇàµîÀÌ ÀÖ´Ù. ½Ã±×³Îº°·Î °¢°¢ ¼öÇàµÇ´Â µ¿ÀÛÀº ½Ã±×³ÎÀ» ¹ß»ýÇÏ´Â ÇÁ·Î¼¼½ºº°·Î ÁöÁ¤µÇ¾î ÀÖ´Ù. ±×¸®°í À§ÀÇ 31°¡Áö ½Ã±×³ÎÀ» ±× ¿ëµµ¿¡ µû¶ó¼­ ºÐ·ùÇÏ¸é ´ÙÀ½°ú °°ÀÌ ºÐ·ùÇÒ ¼ö ÀÖ´Ù. 1) ÇÑ ÇÁ·Î¼¼½ºÀÇ Á¾·á¿Í ¿¬°üµÈ ½Ã±×³Îµé 2) ÇÁ·Î¼¼½º¿¡ ÀÇÇØ À¯¹ßµÈ ¿¹¿Ü(exception)¿Í ¿¬°üµÈ ½Ã±×³Îµé 3) ½Ã½ºÅÛ È£Ãâ ¼öÇàÁßÀÇ º¹±¸ÇÒ ¼ö ¾ø´Â »óÅÂ¿Í °ü·ÃµÈ ½Ã±×³Îµé 4) ½Ã½ºÅÛ È£Ãâ ¼öÇàÁß ¿¹±âÄ¡ ¾Ê´Â ¿¡·¯»óÅ¿¡ ÀÇÇÑ ½Ã±×³Îµé 5) »ç¿ëÀÚ ¸ðµåÀÇ ÇÁ·Î¼¼½º°¡ À¯¹ßÇÏ´Â ½Ã±×³Îµé 6) Å͹̳ÎÀÇ ÀÛ¾÷°ú °ü·ÃµÈ ½Ã±×³Îµî 7) ÇÑ ÇÁ·Î¼¼½ºÀÇ ½ÇÇàÀ» ÃßÀûÇϱâ À§ÇÑ ½Ã±×³Îµî °¢°¢ÀÇ ½Ã±×³ÎÀº ½Ã½ºÅÛ¿¡ Ưº°ÇÑ Àǹ̸¦ °®°í Àִµ¥, Åë»ó ½Ã±×³ÎÀº ¿¡·¯ ¹ß»ý Á¶°Çµé°ú °ü·ÃµÈ´Ù. À§ÀÇ µµÇ¥¿¡ ³ª¿ÍÀÖ´Â ½Ã±×³ÎµéÀº ¹øÈ£ ¶Ç´Â À̸§Áß Çϳª¸¦ ÅëÇØ ÂüÁ¶ÇÒ ¼ö ÀÖ´Ù. °¡Àå ÀϹÝÀûÀ¸·Î »ç¿ëÀÚ°¡ »ç¿ëÇÏ´Â ½Ã±×³Î Á¦¾î ¸í·ÉÀº kill ¸í·É¾îÀε¥, kill ¸í·É¾î »ç¿ë½Ã, »ç¿ëÀÚ´Â kill ¸í·É¾î¿¡ ÀÇÇØ ¹ß»ý½Ãų ½Ã±×³ÎÀ» ÀÎÀÚ·Î ÁöÁ¤ÇØ¾ß ÇÑ´Ù. À̶§ ½Ã±×³ÎÀ» ÁöÁ¤ÇÏ´Â ¹æ½ÄÀº µÎ°¡Áö°¡ Àִµ¥, ±× Çü½ÄÀº ´ÙÀ½°ú °°´Ù. 1) kill -signal_name PID 2) kill -signal_number PID »ç¿ëÀÚ°¡ ÀÛ¼ºÇÑ ½© ÇÁ·Î±×·¥ÀÌ ½ÇÇà ¿ä±¸µÇ¸é, ÇϳªÀÇ ÇÁ·Î¼¼½º·Î¼­ ½Ã½ºÅÛ¿¡ ÀÇÇØ ½ÇÇàµÈ´Ù. ±×·¸±â¶§¹®¿¡ ´Ù¸¥ ÇÁ·Î¼¼½º·ÎºÎÅÍ ½Ã±×³ÎÀÌ Àü´ÞµÉ ¼öµµ ÀÖÀ» °ÍÀÌ´Ù. ÀÌ·±°æ¿ì °¢°¢ÀÇ ½Ã±×³Îµé¿¡ Á¤ÀǵǾî ÀÖ´Â µ¿ÀÛ(¿¹¸¦µé¾î Á¾·áµî)µéÀÌ ¼öÇàµÈ´Ù. ±×·±µ¥ ¿¹¸¦ Çϳª µé¾îº¸ÀÚ. »ç¿ëÀÚ°¡ ½© ÇÁ·Î±×·¥¿¡¼­ ¿©·¯ È­ÀÏÀ» »ý¼ºÇÏ¿©, ±× È­ÀÏ¿¡ µ¥ÀÌŸµéÀ» ÀúÀåÇÏ´Â ÀÛ¾÷À» ÇÏ°í ÀÖ´Ù°í ÇÏÀÚ. ±×·±µ¥ ÀÌ ÀÛ¾÷ÀÌ ¹Ìó ³¡³ª±âµµ Àü¿¡ Á¾·á ½Ã±×³ÎÀÌ ¹ß»ýÇϸé, ÀÌ ÇÁ·Î±×·¥ÀÇ ½ÇÇàÈÄ¿¡´Â ¿©·¯°¡Áö ¾²·¹±âó·³ ÇÊ¿ä¾ø´Â È­ÀϵéÀÌ »ý±æ¼ö ÀÖÀ» °ÍÀÌ´Ù. ÀÌ·± °æ¿ì¸¦ ´ëºñÇϱâ À§ÇØ »ç¿ëÀڴ ƯÁ¤ ½Ã±×³ÎÀÌ Àü´ÞµÇ¾úÀ»¶§, ½Ã±×³Î¿¡ Á¤ÀǵǾî ÀÖ´Â µ¿ÀÛÀ» ÃëÇϱ⠾ռ­¼­, ¼öÇàÇÒ ÀÛ¾÷µéÀ» trap ¸í·É¾î¸¦ ÀÌ¿ëÇÏ¿© ¼±¾ðÇÒ ¼ö ÀÖ´Ù. À̵é trap ¸í·É¾î¿¡ ´ëÇؼ­´Â ´ÙÀ½ °­ÀÇ¿¡¼­ ÀÚ¼¼È÷ ¼Ò°³ÇÑ´Ù. --------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­µµ Shell ProgrammingÀÇ Ãß°¡»çÇ׿¡ ´ëÇؼ­ °è¼ÓÇÏ¿© °­ÀÇÇÕ´Ï´Ù. --------------------------------------------------------------------------- #130 À¯´Ï½Ã½º (adunis2 ) Shell ProgrammingÀÇ Ãß°¡»çÇ×: trap 06/10 09:42 85 line Shell ProgrammingÀÇ Ãß°¡»çÇ× : trap -------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ»çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. -------------------------------------------------------------------- ÀÌÀü °­ÀÇ¿¡¼­ trap ¸í·É¾î´Â ½© ÇÁ·Î±×·¥ÀÌ ÇÁ·Î¼¼½º·Î½á ½ÇÇ൵Áß, ´Ù¸¥ ÇÁ·Î¼¼½º¿¡ ÀÇÇØ Àü´ÞµÈ ƯÁ¤ ½Ã±×³Î¿¡ ´ëÇÑ »ç¿ëÀÚ ÁöÁ¤ µ¿ÀÛÀ» ¼±¾ðÇϱâ À§ÇØ»ç¿ëÇÑ´Ù°í ¼³¸íÇß´Ù. À̹ø °­ÀÇ¿¡¼­´Â trap ¸í·É¾î¿¡ ´ëÇÑ È°¿ë ¹æ½Ä¿¡ ´ëÇØ ¼³¸íÇϱâ·Î ÇÑ´Ù. 1. trap ¸í·É¾î trap ¸í·É¾î´Â ÇÁ·Î¼¼½º°¡ ½Ã±×³ÎÀ» Àü´Þ¹Þ¾ÒÀ»¶§, ±× ½Ã±×³Î¿¡ Á¤ÀǵǾî ÀÖ´Â µ¿ÀÛÀ» ¼öÇàÇϱ⠾ռ­¼­(¶Ç´Â ´ë½ÅÇؼ­), »ç¿ëÀÚ°¡ ÁöÁ¤Çϴ ƯÁ¤ µ¿ÀÛÀ» ¼öÇàÇϵµ·Ï ÇÒ¼ö ÀÖ´Â ±â´ÉÀ» Á¦°øÇÏ´Â ¸í·É¾îÀÌ´Ù. trap ¸í·É¾î¿¡´Â ´ÙÀ½°ú °°Àº 3°¡Áö »ç¿ë Çü½ÄÀÌ ÀÖ´Ù. 1) ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ trap "command1; command2; ...; commandN" signal ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ -. ÁöÁ¤ÇÑ ½Ã±×³ÎÀÌ Àü´ÞµÇ¾úÀ» °æ¿ì, ±× ½Ã±×³ÎÀÇ µðÆúÆ® µ¿ÀÛÀ» ¼öÇàÇϱ⠾ռ­¼­(¶Ç´Â ´ë½ÅÇؼ­) , " "¼Ó¿¡ ³ª¿­µÇ¾î ÀÖ´Â ¸í·É¾îµéÀ» ¼øÂ÷ÀûÀ¸·Î ¼öÇàÇÑ´Ù. 2) ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ trap '' signal ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ -. ÁöÁ¤ÇÑ ½Ã±×³ÎÀ» ¹«½ÃÇÑ´Ù. 3) ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ trap signal ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ -. ÁöÁ¤ÇÑ ½Ã±×³Î¿¡ ´ëÇÑ trapÀ» ÇØÁ¦ÇÑ´Ù. Åë»óÀÇ trap ¸í·É¾îÀÇ »ç¿ë ¿ëµµ´Â ´ÙÀ½°ú °°´Ù. 1) ÀÛ¾÷À» ³¡³»±â Àü¿¡ ÇÁ·Î±×·¥ÀÇ ¼öÇ൵Áß »ý¼ºÇß´ø ÀϽÃÀû È­ÀϵéÀ» Á¦°ÅÇϱâ À§Çؼ­ 2) ÇÁ·Î¼¼½ºÀÇ °¡·Îä±â¸¦ ÇÇÇϱâ À§ÇØ ½©·Î º¸³»Áø ½Ã±×³ÎÀ» ¹«½ÃÇϱâ À§Çؼ­ (ÁÖÀÇ) trap ¸í·É¾î³»¿¡ º¯¼ö°¡ ÁöÁ¤µÇ¾î ÀÖ´Â °æ¿ì, º¯¼öÀÇ ¿Ã¹Ù¸¥ ´ëÄ¡°¡ ¼öÇàµÇµµ·Ï Çϱâ À§Çؼ­´Â '(µû¿ÈÇ¥)·Î ¹­¾î ÁÖ¾î¾ß ÇÑ´Ù. ¿¹¸¦µé¾î EXIT ½Ã±×³ÎÀÌ Àü´Þ µÇ¾úÀ»¶§, »ç¿ëÀÚÀÇ È¨ µð·ºÅ丮¼Ó¿¡ ÀÖ´Â logout ½ºÅ©¸³Æ®¸¦ ¼öÇàÇϵµ·Ï Çϱâ À§Çؼ­´Â ´ÙÀ½°ú °°ÀÌ ÁöÁ¤ÇÑ´Ù. trap '$HOME/logout' EXIT ´ÙÀ½Àº trap ¸í·É¾îÀÇ »ç¿ë¿¹ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ trapex ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ trap "rm -f junkfile;echo good-bye world;exit" 1 2 15 ¦¢ ¦¢ while test -f junkfile ¦¢ ¦¢ do ¦¢ ¦¢ echo junkfile still on disk ¦¢ ¦¢ sleep 5 ¦¢ ¦¢ done ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ $trapes junkfile still on disk < ÇÁ·Î±×·¥ÀÇ while ·çÇÁ¿¡ ÁöÁ¤µÇ¾î ÀÖ´Â junkfile still on disk echo ¸í·É¿¡ ÀÇÇÑ ½ÇÇà °á°ú. sleep junkfile still on disk ¸í·É¾î·Î ÀÎÇØ 5Ãʸ¶´Ù Çѹø¾¿ Ç¥½ÃµÈ´Ù. ... < »ç¿ëÀÚ°¡ Å°¸¦ ÀÔ·ÂÇϸé,EXIT good-bye world ½Ã±×³ÎÀÌ Àü´ÞµÇ´Âµ¥, À̶§ trap ¸í·É¾î·Î ÀÎÇؼ­ junkfileÀÌ »èÁ¦µÈÈÄ, good-bye world¶ó´Â ¸Þ¼¼Áö°¡ Ç¥½ÃµÈ´Ù. $ls junkfile < ÇÁ·Î±×·¥ ½ÇÇàÈÄ ½ÇÁ¦ junkfileÀÇ Á¸Àç¿©ºÎ¸¦ junkfile:No such file or directory È®ÀÎÇÏ°í ÀÖ´Ù. --------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­µµ Shell ProgrammingÀÇ Ãß°¡»çÇ׿¡ ´ëÇؼ­ °è¼ÓÇÏ¿© °­ÀÇÇÕ´Ï´Ù. --------------------------------------------------------------------------- #131 À¯´Ï½Ã½º (adunis2 ) Shell ProgrammingÀÇ Ãß°¡»çÇ×: getopts 06/11 09:03 134 line Shell ProgrammingÀÇ Ãß°¡»çÇ× : getopts -------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ»çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. -------------------------------------------------------------------- ´ëºÎºÐÀÇ À¯´Ð½º ¸í·É¾îµéÀº ¸í·É¾îÀÇ ±âº»ÀûÀÎ Ãâ·Â Çü½ÄÀÇ º¯ÇüÀ» ¾òÀ»¼ö ÀÖµµ·Ï ÇϱâÀ§ÇØ ¸î°¡Áö ¿É¼ÇµéÀ» Á¦°øÇÑ´Ù. »ç¿ëÀÚµéÀº ÀÌ ¿É¼ÇÀ» »ç¿ëÇÏ¿© º¸´Ù ÀÚ½ÅÀÇ ÀÛ¾÷ ¸ñÀû¿¡ ¸Â´Â Çü½ÄÀ¸·Î, ¸í·É¾îÀÇ Ãâ·ÂÀ» ¾òÀ» ¼ö ÀְԵȴÙ. ¹°·Ð »ç¿ëÀÚ°¡ ÀÛ¼ºÇÑ ½© ÇÁ·Î±×·¥¿¡¼­µµ ¿É¼ÇÀ» ÀÔ·Â¹Þ¾Æ Ã³¸®ÇÒ ¼ö ÀÖ´Ù. ¶ÇÇÑ ¸í·É¾î ¶óÀÎ»ó¿¡ ÁöÁ¤µÈ ½© ÇÁ·Î±×·¥ÀÇ ÀÎÀÚ¿Í ¿É¼Ç¹× ¿É¼Ç¿¡ ´ëÇÑ ÀÎÀÚµéÀ» ±¸º°ÇÏ¿© ó¸®Çϵµ·Ï Á¦¾î¸¦ ÇàÇÒ ¼ö ÀÖ´Ù. À̵é Á¦¾î´Â getopts ¸í·É¾î¸¦ »ç¿ëÇÏ¿© ¼öÇàÇÑ´Ù. getopts ¸í·É¾î¸¦ »ç¿ëÇÏ¿© ¿É¼Ç¹× ¿É¼Ç ÀÎÀÚ¸¦ ó¸®Çϱâ À§ÇÑ Çü½ÄÀº´ÙÀ½°ú °°´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ while getopts opts name ¦¢ ¦¢ do ¦¢ ¦¢ case $name in ¦¢ ¦¢ opt1). ¦¢ ¦¢ . ¦¢ ¦¢ ;; ¦¢ ¦¢ optN). ¦¢ ¦¢ . ¦¢ ¦¢ ;; ¦¢ ¦¢ *)echo $USAGE ¦¢ ¦¢ exit 2;; ¦¢ ¦¢ esac ¦¢ ¦¢ done ¦¢ ¦¢ shift `expr $OPTIND - 1` ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ÀÌ ¿¹¿¡¼­ opts´Â ¸í·É¾î¿¡ À¯È¿ÇÑ ¿É¼ÇÀ» ÀǹÌÇÑ´Ù. À̶§ ÀÎÀÚ°¡ ¼ö¹ÝµÇ´Â ¿É¼Çµé¿¡ ´ëÇؼ­´Â ¿É¼Ç¹®ÀÚÀÇ µÚ¿¡ :À» ÁöÁ¤ÇÑ´Ù. À̵é 󸮵Ǵ ¿É¼Ç ÀÎÀÚµéÀº º¯¼ö OPTARG¿¡ ÇÒ´çµÇ°í, ±×¸®°í ó¸®µÈ ¿É¼Ç¹× ¿É¼Ç ÀÎÀÚÀÇ °¹¼ö°¡ OPTIND º¯¼ö¿¡ ÇÒ´çµÈ´Ù. ½ÇÇà½Ã¿¡, ¸¸ÀÏ opts ºÎºÐ¿¡ ¼±¾ðµÇ¾î ÀÖÁö ¾ÊÀº ¿É¼ÇÀÌ ÁÖ¾îÁö¸é, º¯¼ö USAGE°¡ getopts ¸í·É¾î¿¡ ÀÇÇؼ­ Ç¥½ÃµÈ´Ù. nameÀº while ·çÇÁ°¡ ¸Å¹ø ¼öÇàµÉ ¶§¸¶´Ù, ¸í·É¾î ¶óÀÎ»ó¿¡ ÁöÁ¤µÈ ¿É¼ÇÀÌ ÀúÀåµÇ´Â º¯¼öÀÇ À̸§ÀÌ´Ù. while ·çÇÁ´Â °¢°¢ÀÇ ÀÎÀڵ鿡 ´ëÇØ Çѹø¾¿ ½ÇÇàµÈ´Ù. while ·çÇÁ³»¿¡¼­, °¢°¢ÀÇ ÀÎÀÚµéÀº ÁöÁ¤µÈ¹Ù¿¡ µû¶ó¼­ º¯¼ö¸¦ ÇÒ´çÇϰųª, ¿É¼ÇÀÌ Áö½ÃÇÏ´Â ´Ù¸¥ ¸í·É¾î¸¦ ½ÇÇàÇÏ´Â °ÍÀ¸·Î 󸮵ȴÙ. ¿É¼ÇÀÇ ÀÎÀÚµéÀº ÀÌÈÄ¿¡ ´Ù½Ã »ç¿ëÇÏ·Á¸é ´Ù¸¥ º¯¼ö¿¡ ÀúÀåÇÏ¿©¾ß ÇÑ´Ù. ±×¸®°í while ·çÇÁ¿¡¼­ ¸ðµç ¿É¼Ç ÀÎÀÚµéÀ» ó¸®ÇÑ ÈÄ¿¡, ¾ÆÁ÷ 󸮵ÇÁö ¾ÊÀº ¸í·É¾î ¶óÀÎ ÀÎÀÚµéÀ» (¿É¼Ç°ú ¿É¼Ç ÀÎÀÚµéÀ» Á¦¿ÜÇÑ ³ª¸ÓÁö ÀÎÀÚµé) ó¸®Çϱâ À§Çؼ­ shift¸¦ ÇàÇÑ´Ù. shift ÇÑÈÄ, Æ÷Áö¼Å³Î ÆĶó¸ÞÅÍ $1¿¡´Â ¾ÆÁ÷ 󸮵ÇÁö ¾ÊÀº ù¹ø° ¸í·É¾î ¶óÀÎ ÀÎÀÚ°¡ ¼³Á¤µÈ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢geto ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢USAGE='Usage: geto [-s] -h formalname] -g nickname] car [car...]' ¦¢ ¦¢# USAGE º¯¼ö´Â geto ÇÁ·Î±×·¥ ±âµ¿½Ã ºÎÀûÇÕÇÑ ¿É¼ÇÀ» ÁöÁ¤ÇßÀ»¶§¦¢ ¦¢# Ç¥½ÃÇÒ ¸Þ¼¼Áö¸¦ Á¤ÀÇÇÑ º¯¼öÀÌ´Ù. ¦¢ ¦¢while getopts h:g:s o ¦¢ ¦¢# getopts ¸í·É¿¡ µÎ°³ÀÇ ÀÎÀÚ°¡ ÁöÁ¤µÇ¾î ÀÖ´Ù. ù°´Â ¦¢ ¦¢# ÇÁ·Î±×·¥¿¡ À¯È¿ÇÑ ¿É¼ÇÀ» Á¤ÀÇÇϱâ À§ÇÑ ÀÎÀÚÀÌ°í, µÎ¹ø° ¦¢ ¦¢# ÀÎÀÚ´Â ¸í·É¾î ¶óÀÎ»ó¿¡ ÁöÁ¤µÈ, -·Î ±¸º°µÇ´Â ¿É¼ÇµéÀÌ ¦¢ ¦¢# ¼øÂ÷ÀûÀ¸·Î ¼³Á¤µÇ´Â º¯¼öÀÌ´Ù. ÀÌ º¯¼ö´Â while ·çÇÁ Á¦¾î¹®ÀÇ ¦¢ ¦¢# ¸Å¹ø ·çÇÁ½Ã¿¡ case¹®¿¡ ÀÇÇØ Ã³¸®µÈ´Ù. ¦¢ ¦¢do ¦¢ ¦¢ case $o in ¦¢ ¦¢ h)formal=$OPTARG; echo HELLO $formal ;; ¦¢ ¦¢# ¿©±â¼­ ´«¿©°Ü º¼°ÍÀÌ ÀÖ´Ù. OPTARG º¯¼ö¿¡´Â ÇöÀçÀÇ ·çÇÁ¿¡¼­ ¦¢ ¦¢# 󸮵ǰí ÀÖ´Â ¿É¼ÇÀÇ ÀÎÀÚ°¡ ¼³Á¤µÇ´Âµ¥, ÇöÀç 󸮵ǰí ÀÖ´Â ¦¢ ¦¢# ¿É¼ÇÀÇ ÀÎÀÚ´Â, ÇöÀçÀÇ ·çÇÁ¿¡¼­¸¸ OPTARG º¯¼ö¿¡ À¯ÁöµÈ´Ù. ¦¢ ¦¢# ÀÌ ¿É¼Ç ÀÎÀÚ¸¦ ´Ù½Ã ÂüÁ¶Çϱâ À§Çؼ­´Â, ÀÌ ¿¹¿Í°°ÀÌ ´Ù¸¥ ¦¢ ¦¢# º¯¼ö¿¡ ÀúÀåÇØ µÎ¾î¾ßÇÑ´Ù. ¦¢ ¦¢ g)aka=$OPTARG; echo GOOD BYE $aka ;; ¦¢ ¦¢ s)echo you are working on `uname` ;; ¦¢ ¦¢ *)echo $USAGE ;; exit 3 ;; ¦¢ ¦¢# ÀÌ ºÎºÐ¿¡¼­, ¸í·É¾î ¶óÀÎ»ó¿¡ À¯È¿ÇÏÁö ¾ÊÀº ¿É¼ÇÀÌ Ã³¸®µÈ´Ù. ¦¢ ¦¢# ÀÌ·ÎÀÎÇØ À߸øµÈ ¿É¼Ç ÁöÁ¤½Ã, ¿À·ù ¸Þ¼¼Áö°¡ Ç¥ÁØ¿¡·¯(stderr) ¦¢ ¦¢# °¡ ¾Æ´Ñ Ç¥ÁØÃâ·Â(stdout)À¸·Î 󸮵ȴÙ. ¦¢ ¦¢ esac ¦¢ ¦¢done 2> /dev/null ¦¢ ¦¢# 2>´Â Ç¥ÁØ¿¡·¯(stderr)ÀÇ Ãâ·ÂÀ» null È­ÀϷΠó¸®Çϱâ À§ÇÑ ¦¢ ¦¢# ÁöÁ¤ÀÌ´Ù. ÀÌ ÁöÁ¤¿¡ ÀÇÇØ ½©¿¡ ÀÇÇØ µ¹·ÁÁö´Â Ç¥ÁØ¿¡·¯ ¦¢ ¦¢# ¸Þ¼¼Áö´Â È­¸é»ó¿¡ Ç¥½ÃµÇÁö ¾Ê´Â´Ù. ¦¢ ¦¢echo before the shift there were $# arguments ¦¢ ¦¢# $#Àº ÇÁ·Î±×·¥ ½ÇÇàÀ» ¿ä±¸ÇÑ ¸í·É¾î ¶óÀÎ»ó¿¡ ÁöÁ¤µÈ ÀÎÀÚÀÇ ¦¢ ¦¢# ÃÑ °¹¼ö°¡ ¼³Á¤µÈ´Ù. ¦¢ ¦¢shift `expr $OPTIND - 1` ¦¢ ¦¢# OPTIND º¯¼ö¿¡´Â ó¸®µÈ ¿É¼Ç¹× ¿É¼Ç ÀÎÀÚÀÇ °¹¼ö°¡ ÀúÀåµÈ´Ù. ¦¢ ¦¢# shift°¡ ¼öÇàµÇ¸é, ¸í·É¾î ¶óÀλ󿡼­ 󸮵ÇÁö ¾ÊÀº ÀÎÀڵ鸸À̦¢ ¦¢# ¸í·É¾î ¶óÀÎ ÀÎÀÚ·Î ³²°ÔµÈ´Ù. ¦¢ ¦¢echo after the shift there are $# arguments¦¢ ¦¢# shiftÇÑÈÄ ÀÎÀÚÀÇ °¹¼ö¸¦ Ç¥½ÃÇÑ´Ù. ¦¢ ¦¢if [ $# -lt 1 ] ¦¢ ¦¢# ÀÎÀÚÀÇ °¹¼ö°¡ 1º¸´Ù ÀûÀº °æ¿ì¿¡´Â ¸í·É¾î ¶óÀÎ»ó¿¡ ¦¢ ¦¢# ¸í·É¾î ¶óÀÎ ÀÎÀÚ°¡ Çϳªµµ ÁöÁ¤µÇÁö ¾Ê¾ÒÀ½À» ÀǹÌÇÑ´Ù. ¦¢ ¦¢then ¦¢ ¦¢ echo $USAGE; echo "argument expected";exit 2 ¦¢ ¦¢# ¸í·É¾î ¶óÀÎ ÀÎÀÚ¸¦ ÁöÁ¤ÇÏÁö ¾Ê¾Ò´Ù´Â ¿À·ù ¸Þ¼¼Áö¸¦ Ç¥½ÃÇÑÈÄ,¦¢ ¦¢# ÇÁ·Î±×·¥ÀÌ Á¾·áµÈ´Ù. ¦¢ ¦¢fi ¦¢ ¦¢if test -n "$formal" -a -n "$aka" ¦¢ ¦¢# ¿É¼Ç ÀÎÀÚ¸¦ ÇÊ¿ä·Î ÇÏ´Â ¿É¼Ç¿¡ ÀÎÀÚ¸¦ ÁöÁ¤Çߴ°¡¸¦ °Ë»çÇÑ´Ù.¦¢ ¦¢then ¦¢ ¦¢ echo $formal is also known as $aka ¦¢ ¦¢# ¿É¼Ç ÀÎÀڵ鿡 ´ëÇÑ Ã³¸®¸¦ ÇàÇÏ°í ÀÖ´Ù. ¦¢ ¦¢fi ¦¢ ¦¢echo "$1 was entered as your dream car" ¦¢ ¦¢# ¸í·É¾î ¶óÀÎ ÀÎÀÚ¸¦ È­¸é»ó¿¡ Ç¥½ÃÇϱâ À§ÇÑ ÁöÁ¤ÀÌ´Ù. ¦¢ ¦¢if [ $# -gt 1 ] ¦¢ ¦¢# ¸í·É¾î ¶óÀÎ»ó¿¡ ¾ÆÁ÷ 󸮵ÇÁö ¾ÊÀº ÀÎÀÚ°¡ Àִ°¡¸¦ °Ë»çÇÑ´Ù.¦¢ ¦¢then ¦¢ ¦¢shift ¦¢ ¦¢echo "you also wouldn't mind being seen in any of the following:$*" ¦¢ ¦¢fi ¦¢ ¦¢exit 0 ¦¢ ¦¢# ÇÁ·Î±×·¥ÀÌ Á¤»ó Á¾·áµÈ´Ù. ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ KORN>geto -sh nicholas -g nick jaguar masarstl lamborginl you are working on bbp6k50a HELLO nicholas GOOD BYE nick before the shift there were 7 arguments after the shift there are 3 arguments nicholas is also known as nick jaguar was entered as your dream car you also wouldn't mind being seen in any of the following: masarati lamborgini À§ÀÇ ¿¹Á¦¸¦ ½ÇÇàÇßÀ»¶§, À§¿Í°°Àº °á°ú°¡ ³ª¿À°Ô µÇ´Â °úÁ¤Àº µ¶ÀÚ ½º½º·Î Çѹø ºÐ¼®ÇØ º¸±â¸¦ ¹Ù¶õ´Ù. --------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­µµ Shell ProgrammingÀÇ Ãß°¡»çÇ׿¡ ´ëÇؼ­ °è¼ÓÇÏ¿© °­ÀÇÇÕ´Ï´Ù. --------------------------------------------------------------------------- #132 À¯´Ï½Ã½º (adunis2 ) Shell ProgrammingÀÇ Ãß°¡»çÇ×: wait,lines 06/12 08:50 108 line Shell ProgrammingÀÇ Ãß°¡»çÇ× : wait,line -------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ»çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. -------------------------------------------------------------------- 1) wait ¸í·É¾î wait ¸í·É¾î´Â ½© ÇÁ·Î±×·¥³»¿¡¼­ Á÷Àü¿¡ ¼öÇà½ÃŲ Backgound JobÀÌ Á¾·áµÉ¶§±îÁö, ½© ÇÁ·Î±×·¥ÀÇ ½ÇÇàÀ» Á¤ÁöÇÒ¼ö ÀÖ´Â ±â´ÉÀ» Á¦°øÇÏ´Â ¸í·É¾îÀÌ´Ù. ´ÙÀ½Àº wait ¸í·É¾îÀÇ »ç¿ë¿¹ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢myprog ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢echo first list ¦¢ ¦¢ls ¦¢ ¦¢cat f1 f2 f3 f4 f5 f6 f7 | tee final& <-- Background JobÀ» ½ÇÇà. ¦¢wait <-- Á÷ÀüÀÇ Background JobÀÌ ¦¢rm f1 f2 f3 f4 f5 f6 f7 ³¡³¯¶§±îÁö ½ÇÇàÀ» ÁßÁöÇÑ´Ù. ¦¢echo second list ¦¢ ¦¢ls ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ $myprog first list f1 f2 f3 f4 f5 f6 f7 <-- ls ¸í·ÉÀÇ ½ÇÇà °á°ú·Î, ±âÁ¸¿¡ f1ºÎÅÍ second list f7±îÁöÀÇ È­ÀÏÀÌ ÀÖÀ½À» ¾Ë¼ö ÀÖ´Ù. final <-- À̸¦ º¸°í Background ÀÛ¾÷ÀÌ Á¤»óÀûÀ¸·Î ¼öÇàµÈ°ÍÀ» ¾Ë¼ö ÀÖ´Ù. 2. line ¸í·É¾î line ¸í·É¾î´Â Ç¥ÁØÀÔ·Â(stdin)À¸·ÎºÎÅÍ ÇÑ ¶óÀÎÀÇ µ¥ÀÌŸ¸¦ ¹Þ¾Æµé¿©, ÀÌ ÀÔ·ÂÀ» Ç¥ÁØÃâ·Â(stdout)¿¡ À§Ä¡½ÃŲ´Ù. ¾î¶»°Ô º¸¸é, line ¸í·É¾î´Â read ¸í·É¾î¿Í À¯»çÇϳª, line ¸í·É¾î´Â ÀÔÃâ·Â ¹æÇâÀüȯÀÌ ¿ä±¸µÉ¶§ ÁÖ·Î »ç¿ëµÈ´Ù. line ¸í·É¾î´Â È­ÀϷκÎÅÍ ÇѶóÀÎÀÇ ÅؽºÆ®¸¦ Àаí, º¯¼ö¿¡ ±× ¶óÀÎÀ» ÀúÀåÇÒ¶§ ¾ÆÁÖ ¿ä±äÇÏ°Ô »ç¿ëÇÒ¼ö ÀÖ´Ù. read ¸í·É¾î¸¦ »ç¿ëÇÒ °æ¿ì¿¡´Â ÀԷ¿¡ ´ëÇÑ ¹æÇâÀüȯÀÌ Çã¿ëµÇÁö ¾Ê´Â´Ù. Áï; Ç¥ÁØ ÀԷ¿¡¼­¸¸ ÀÔ·ÂÀ» ¹ÞÀ»¼ö ÀÖ´Ù. ´ÙÀ½Àº read ¸í·É¾î¿Í line ¸í·É¾î¸¦ ºñ±³Çϱâ À§ÇÑ ¿¹ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ $read storeline ¦¢ read ¸í·É¾î´Â Ç¥ÁØÀÔ·ÂÀ¸·Î ÇÑ ¶óÀÎÀÇ ¦¢ "Welcome to UNIX" ¦¢ µ¥ÀÌŸ¸¦ ¹Þ¾Æµé¿©, ±×¸¦ ÁöÁ¤ÇÑ º¯¼ö¿¡ ¦¢ $echo $storeline ¦¢ ÀúÀåÇÑ´Ù. ¦¢ "Welcome to UNIX" ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ $storeline=`line` ¦¢ line ¸í·É¾î´Â Ç¥ÁØÀÔ·ÂÀ¸·Î ÇÑ ¶óÀÎÀÇ ¦¢ "Welcome to UNIX" ¦¢ µ¥ÀÌŸ¸¦ ¹Þ¾Æµé¿©, ±×¸¦ Ç¥ÁØÃâ·ÂÀ¸·Î ¦¢ $echo $storeline ¦¢ º¸³»´Âµ¥, ÀÌ ¿¹¿¡¼­´Â ±× Ç¥ÁØÃâ·ÂÀÌ ¦¢ Welcome to UNIX ¦¢ º¯¼ö¿¡ ÀúÀåµÈ´Ù. ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢lines ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢c=`wc -l names | cut -c1 -8` ¦¢ ¦¢# names È­ÀÏÀÇ ¶óÀμö°¡ c º¯¼ö¿¡ ÀúÀåµÈ´Ù. ¦¢ ¦¢i=1 ¦¢ ¦¢# ·çÇÁÀÇ ¹Ýº¹ Ƚ¼ö¸¦ °è»êÇϱâ À§ÇÑ º¯¼öÀÇ ÃʱⰪÀ» 1·Î ¼³Á¤ ¦¢ ¦¢while [ $i -le $c ] ¦¢ ¦¢# ·çÇÁ¸¦ names È­ÀÏÀÇ ¶óÀμö¸¸Å­¸¸ ¼öÇàÇϱâ À§ÇÑ ÁöÁ¤ÀÌ´Ù. ¦¢ ¦¢do ¦¢ ¦¢ eval store$i='`tail +$i names | line`' ¦¢ ¦¢# name È­ÀÏÀÇ i¹ø° ¶óÀÎÀ» Àоî, ±× ¶óÀÎÀ» store$i º¯¼ö¿¡ ÀúÀå. ¦¢ ¦¢# ÁöÁ¤µÈ store$i º¯¼öÀÇ $i´Â ·çÇÁÀÇ ¹Ýº¹È½¼ö·Î ´ëÄ¡µÈ´Ù. ¦¢ ¦¢ i=`expr $i + 1` ¦¢ ¦¢# ·çÇÁÀÇ ¹Ýº¹ Ƚ¼ö°¡ ¼³Á¤µÈ º¯¼öÀÇ °ªÀ» 1 Áõ°¡½ÃŲ´Ù. ¦¢ ¦¢done ¦¢ ¦¢# ·çÇÁ°¡ Á¾·áÇϸé,names È­ÀÏÀÇ °¢ ¶óÀÎÀÌ º¯¼ö¿¡ °¢°¢ ÀúÀåµÈ´Ù. ¦¢ ¦¢i=`expr $c` ¦¢ ¦¢# ·çÇÁ ¹Ýº¹ Ƚ¼ö¸¦ i º¯¼ö¿¡ ÀúÀåÇÑ´Ù. À̶§ÀÇ ¹Ýº¹ Ƚ¼ö´Â ¦¢ ¦¢# names È­ÀÏÀÇ ÃÑ ¶óÀμö°¡ µÈ´Ù. ¦¢ ¦¢while [ $i -ge 0 ] ¦¢ ¦¢do ¦¢ ¦¢ eval echo $"store$i" ¦¢ ¦¢ i=`expr $i - 1` ¦¢ ¦¢# °¢°¢ÀÇ º¯¼ö¿¡ ÀúÀåµÈ ³»¿ëÀ» È­¸é¿¡ Ç¥½ÃÇÏ´Â ÁöÁ¤Àε¥, ¦¢ ¦¢# ÀÌÀüÀÇ while ·çÇÁ¿Í´Â ¹Ý´ë·Î °¡Àå ¸¶Áö¸· º¯¼ö¿¡ ÀúÀåµÈ ¦¢ ¦¢# ³»¿ëÀÌ ¸ÕÀú Ãâ·ÂµÈ´Ù. ¦¢ ¦¢done ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ $cat names Robert Ludlum Philadelphia Agatha Christie London Bradford Taylor Atlanta Jeffery Archer Seattle Tom Clancy Washington $lines <--- lines ÇÁ·Î±×·¥ÀÇ ÁöÁ¤¿¡µû¶ó, Tom Clancy Washington º»·¡ ÀúÀåµÇ¾î ÀÖ´Â ¼ø¼­¿Í Jeffery Archer Seattle ¹Ý´ë·Î Ãâ·ÂÀÌ ¼öÇàµÈ´Ù. Bradford Taylor Atlanta Agatha Christie London Robert Ludlum Philadelphia --------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­µµ Shell ProgrammingÀÇ Ãß°¡»çÇ׿¡ ´ëÇؼ­ °è¼ÓÇÏ¿© °­ÀÇÇÕ´Ï´Ù. --------------------------------------------------------------------------- #133 À¯´Ï½Ã½º (adunis2 ) Shell ProgrammingÀÇ Ãß°¡»çÇ×: |& 06/20 12:02 66 line Shell ProgrammingÀÇ Ãß°¡»çÇ× : |& -------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ»çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. -------------------------------------------------------------------- 1) Korn ShellÀÇ Co-processing line ¸í·É¾î´Â È­Àϳ»ÀÇ ¶óÀÎÀ» µ¥ÀÌŸ·Î º¯¼ö³»¿¡ ÀоîµéÀ̱â À§ÇØ À¯¿ëÇÏ°Ô »ç¿ëÇÒ¼ö ÀÖ´Ù. ±×·¯³ª line ¸í·É¾î¸¦ »ç¿ëÇÒ °æ¿ì¿¡, ƯÁ¤ È­Àϳ»ÀÇ ¸ðµç ¶óÀÎÀ» ó¸®Çϱâ À§Çؼ­´Â ÀÌÀü °­ÀÇ¿¡¼­ ¼Ò°³ÇÑ ¿¹Á¦Ã³·³ ·çÇÁ Á¦¾î¹®°ú °°Àº º¹ÀâÇÑ Á¦¾î¹®À» »ç¿ëÇÏ¿© ÇÁ·Î±×·¥À» ÀÛ¼ºÇØ¾ß ÇÑ´Ù. ÀÌ·± °æ¿ì¿¡ Korn Shell¿¡¼­ Á¦°øÇÏ´Â Co-processing ±â´ÉÀ» ÀÌ¿ëÇÑ´Ù. Korn ShellÀº µÎ°³ÀÇ ÇÁ·Î¼¼½º°£¿¡ »ó´ë ÇÁ·Î¼¼½º¿Í Åë½ÅÇÒ¼ö ÀÖµµ·Ï ÇØÁÖ´Â Co-processing ±â´ÉÀ» Á¦°øÇÑ´Ù. »ç¿ëÀÚ´Â Co-processing ±â´ÉÀ» »ç¿ëÇÔÀ¸·Î½á ù¹ø° ÇÁ·Î¼¼½º·Î ºÎÅÍÀÇ ¶óÀδÜÀ§ÀÇ Ãâ·ÂÀ» ¼øÂ÷ÀûÀ¸·Î µÎ¹ø° ÇÁ·Î¼¼½º·ÎÀÇ ¶óÀδÜÀ§ ÀÔ·ÂÀ¸·Î ó¸®ÇÒ¼ö ÀÖ´Ù. Co-processingÀ» »ç¿ëÇϱâ À§Çؼ­´Â, ´ÙÀ½°ú °°ÀÌ Ã¹¹ø° ÇÁ·Î¼¼½º¿¡ µÚÀ̾î |& ½Éº¼À» ÁöÁ¤ÇÑ´Ù. first_process |& second_process ( first,second_process°¡ ½ÇÇà½Ã Co-processing µÇ¾îÁø´Ù.) À§ÀÇ Çü½Ä¿¡¼­ ÇÁ·Î¼¼½º ÁöÁ¤½Ã Ç¥ÁØÀÔ·ÂÀ¸·Î ºÎÅÍ ¶óÀÎÀ» Àбâ À§Çؼ­´Â read -p ¸í·É¾î¸¦ »ç¿ëÇÏ°í, ¶óÀÎÀ» Ç¥ÁØ Ãâ·Â¿¡ ÀúÀåÇϱâ À§Çؼ­´Â print -p ¸í·É¾î¸¦ »ç¿ëÇÑ´Ù. ´ÙÀ½Àº Co-processing ±â´ÉÀ» »ç¿ëÇÑ »ç¿ë¿¹ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢coproc # Korn shellÀÇ Coprocessing ## ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢cat names |& # cat ¸í·É¾îÀÇ ½ÇÇà °á°ú°¡ ¶óÀÎ ´ÜÀ§·Î¦¢ ¦¢while true # ¼øÂ÷ÀûÀ¸·Î ÈÄ¼ÓµÈ while ¸í·É¾îÀÇ ¦¢ ¦¢do # Ç¥ÁØ ÀÔ·ÂÀ¸·Î 󸮵ȴÙ. ¦¢ ¦¢ # Áï, µÎ ÇÁ·Î¼¼½º°¡ °øÁ¶ÇÏ¿© 󸮵ȴÙ.¦¢ ¦¢ read -p first last town ¦¢ ¦¢ # Ç¥ÁØÀÔ·ÂÀ¸·ÎºÎÅÍ ¶óÀÎÀ» ÀоîµéÀδÙ. ¦¢ ¦¢ if [ $? -ne 0 ] ; then exit 0 ; fi ¦¢ ¦¢ echo $last $first $town >> authors ¦¢ ¦¢done ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ KORN> cat names Robert Ludium Philadelphia Agatha Christie London Bradford Taylor Atlanta Jeffery Archer Seattle Tom Clancy Washington KORN> coproc KORN> cat authors # À§¿¡¼­ È®ÀÎÇÑ names È­ÀÏÀÇ ³»¿ëÀÌ Ludlum Robert Philadelphia # À§ÀÇ ÇÁ·Î±×·¥ ½ÇÇà¿¡ ÀÇÇØ ¼ø¼­°¡ Christie Agatha London # ¹Ù²î¾î Ãâ·ÂµÇ°í ÀÖ´Ù. Taylor Bradford Atlanta Archer Jeffery Seattle Clancy Tom Washington --------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­µµ Shell ProgrammingÀÇ Ãß°¡»çÇ׿¡ ´ëÇؼ­ °è¼ÓÇÏ¿© °­ÀÇÇÕ´Ï´Ù. --------------------------------------------------------------------------- #134 À¯´Ï½Ã½º (adunis2 ) Shell ProgrammingÀÇ Ãß°¡»çÇ×: exec 06/24 22:18 118 line Shell ProgrammingÀÇ Ãß°¡»çÇ× : exec -------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ»çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. -------------------------------------------------------------------- 1) File Descriptor(È­ÀÏ ±â¼úÀÚ) ½© ÇÁ·Î±×·¥¿¡¼­ ƯÁ¤ È­ÀÏÀ» »ç¿ëÇÒ °æ¿ì, »ç¿ëÇÒ È­ÀÏÀ» »çÀü¿¡ È­ÀÏ ±â¼úÀÚ Å×À̺í(File Descritor Table)»ó¿¡ ÇϳªÀÇ ¿£Æ®¸®(entry)·Î µî·ÏÇÑÈÄ, È­ÀϸíÀ» ´ë½ÅÇÏ¿© È­ÀÏ ±â¼úÀÚ Å×À̺íÀÇ ¿£Æ®¸® ½Äº°ÀÚ¸¦ ÀÌ¿ë, È­ÀÏÀ» ÂüÁ¶ÇÒ ¼ö ÀÖ´Ù. ÀÌµé ¿£Æ®¸® ½Äº°ÀÚµéÀ» È­ÀÏ ±â¼úÀÚ¶ó ÇÑ´Ù. °¢°¢ÀÇ È­ÀÏ ±â¼úÀÚµéÀº 0,1,2,3µîÀÇ ¼ýÀÚ·Î ½Äº°µÈ´Ù. ±×·±µ¥ ÇÁ·Î±×·¥ ½ÇÇà½Ã¿¡ ²À ÇÊ¿ä·Î Çϴ ǥÁØÀÔ·Â, Ç¥ÁØÃâ·Â ±×¸®°í Ç¥ÁØ¿¡·¯¸¦ ó¸®Çϱâ À§ÇÑ È­ÀϵéÀº ½©¿¡ ÀÇÇؼ­ ÀÚµ¿ÀûÀ¸·Î È­ÀÏ ±â¼úÀÚ 0, 1, 2·Î ÇÒ´çµÇ¾î Àֱ⠶§¹®¿¡, »ç¿ëÀÚ´Â À̵é È­ÀÏ¿¡ ´ëÇØ º°µµ·Î µî·Ï ÀÛ¾÷À» ¼öÇàÇÏÁö ¾Ê°íµµ »ç¿ë °¡´ÉÇÏ´Ù. ´ÙÀ½Àº ½©¿¡ ÀÇÇØ ÀÚµ¿ÀûÀ¸·Î ÇÒ´çµÇ´Â È­ÀÏ ±â¼úÀÚ¹× »ç¿ë¿¹¸¦ º¸¿©ÁØ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢È­ÀÏ ±â¼úÀÚ ¦¢ ÀÇ¹Ì ¦¢»ç¿ë¿¹ ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ 0 ¦¢ Ç¥ÁØÀÔ·Â ¦¢0<,0<<,<,<< ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ 1 ¦¢ Ç¥ÁØÃâ·Â ¦¢1>,1>>,>,>> ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ 2 ¦¢ Ç¥ÁØ¿¡·¯ ¦¢2>,2>> ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ( Âü°í·Î À¯´Ð½º¿¡¼­´Â ¸ð´ÏÅÍ, Å°º¸µå, ÇÁ¸°ÅÍµî ¸ðµç ½Ã½ºÅÛ ÁÖº¯ÀåÄ¡µéÀ» ÇϳªÀÇ È­ÀÏ·Î Ãë±ÞÇÑ´Ù. À̵鿡 ´ëÇÑ ÀÚ¼¼ÇÑ »çÇ×Àº Â÷ÈÄ¿¡ °­ÀÇµÉ À¯´Ð½º °ü¸®ÀÚ °úÁ¤¿¡¼­ ÀÚ¼¼È÷ ¼Ò°³ÇÑ´Ù. ) »ç¿ëÀÚ´Â ½© ÇÁ·Î±×·¥¿¡¼­ Ãß°¡ÀÇ È­ÀϵéÀ» È­ÀÏ ±â¼úÀÚ Å×À̺í»ó¿¡ (FDT) µî·ÏÇÏ¿© »ç¿ëÇÒ ¼ö°¡ ÀÖ´Ù. ÀÌ °æ¿ì »ç¿ëÀÚ´Â 3¿¡¼­ 20±îÁöÀÇ È­ÀÏ Áö½ÃÀÚ¸¦ exec ¸í·É¾î¸¦ ÀÌ¿ëÇÏ¿©, °¢°¢ÀÇ È­ÀÏ¿¡ ´ëÀÀ½Ãų¼ö ÀÖ´Ù. ÀÌ·³À¸·Î½á »ç¿ëÀÚ´Â ½© ÇÁ·Î±×·¥¿¡¼­ ƯÁ¤ È­ÀÏÀÇ È­ÀϸíÀ» ÁöÁ¤ÇÏ¿© »ç¿ëÇÏ´Â ´ë½Å¿¡, ±×¿¡ »óÀÀÇÏ´Â È­ÀÏ ±â¼úÀÚ ¹øÈ£¸¦ ÀÌ¿ëÇÏ¿© È­ÀÏÀ» ¾ï¼¼½ºÇÒ ¼ö ÀÖ°Ô µÈ´Ù. »Ó¸¸¾Æ´Ï¶ó È­ÀÏ ±â¼úÀÚ ÁöÁ¤°ú ÇÔ²² & ½Éº¼À» ÀÌ¿ëÇÔÀ¸·Î½á ´ë»óÈ­ÀϵéÀ» ¿¬°á(link)ÇÏ¿© ÀÛ¾÷Çϵµ·Ï ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù. ¿¹¸¦µé¸é ´ÙÀ½°ú °°´Ù. $cat fileA fileB nofile> allfile 2>&1 ÀÌ °æ¿ì Ç¥ÁØ¿¡·¯¸¦ Ç¥ÁØÃâ·Â¿¡ ¿¬°á(link)ÇÑ´Ù. Áï, nofile·Î ÀÎÇÑ ¿¡·¯ ¸Þ¼¼Áö°¡, Ç¥ÁØÃâ·Â È­ÀÏ·Î ¼³Á¤µÈ allfileÀ̶ó´Â È­ÀÏ¿¡ Ç¥ÁØÃâ·Â ³»¿ë°ú ÇÔ²² ÀúÀåµÈ´Ù. ´ÙÀ½Àº È­ÀÏ ±â¼úÀÚ¸¦ ÀÌ¿ëÇÑ ÀÛ¾÷ È­ÀÏÀÇ »ç¿ë¿¹¸¦ º¸¿©ÁØ´Ù. $command < filename $command 0< filename ¦£¦¡¦¡¦¡¦¡¦¤ ¦£¦¡¦¡¦¤ ¦¢Command ¦§< ¦¡¦¡¦¡¦©File¦¢ Ç¥ÁØÀÔ·ÂÀÇ ¦¦¦¡¦¡¦¡¦¡¦¥ stdin ¦¢ ¦¢ ¹æÇâÀüȯ ¦¦¦¡¦¡¦¥ $command > filename $command 1> filename ¦£¦¡¦¡¦¡¦¡¦¤ ¦£¦¡¦¡¦¤ ¦¢Command ¦§¦¡¦¡¦¡¦¡> File¦¢ Ç¥ÁØÃâ·ÂÀÇ ¦¦¦¡¦¡¦¡¦¡¦¥ stdout¦¢ ¦¢ ¹æÇâÀüȯ ¦¦¦¡¦¡¦¥ $command 2> filename ¦£¦¡¦¡¦¡¦¡¦¤ ¦£¦¡¦¡¦¤ ¦¢Command ¦§¦¡¦¡¦¡¦¡> File¦¢ Ç¥ÁØ¿¡·¯ÀÇ ¦¦¦¡¦¡¦¡¦¡¦¥ stderr¦¢ ¦¢ ¹æÇâÀüȯ ¦¦¦¡¦¡¦¥ $command > filename 2>&1 ¦£¦¡¦¡¦¡¦¡¦¤ ¦£¦¡¦¡¦¤ ¦¢Command ¦§¦¡¦¡¦¡¦¡> File¦¢ Ç¥ÁØÃâ·Â¹× ¦¦¦¡¦¡¦¡¦¡¦¥ stderr¦¢ ¦¢ Ç¥ÁØ¿¡·¯ÀÇ stdout¦¦¦¡¦¡¦¥ ¿¬°á(link) ( Áï, Ç¥ÁØ¿¡·¯ÀÇ Ãâ·Â ³»¿ëÀ» Ç¥ÁØÃâ·ÂÀ¸·Î ÁöÁ¤ÇÑ È­ÀÏ¿¡ ÇÔ²² ÀúÀåÇÑ´Ù. ) 2) È­ÀÏ ±â¼úÀÚ¸¦ ÁöÁ¤ÇÑ exec ¸í·É¾î ÀÌ¹Ì ¼³¸íÇÑ´ë·Î exec ¸í·É¾î´Â ÇöÀçÀÇ ½©³»¿¡¼­ ÇÁ·Î±×·¥À» ½ÇÇàÇϱâ À§Çؼ­ »ç¿ëÇÑ´Ù. ±×¿Ü¿¡µµ exec´Â È­ÀÏ ±â¼úÀÚ¸¦ È®¸³Çϱâ À§Çؼ­µµ »ç¿ëÇÑ´Ù. exec ¸í·É¾î¸¦ »ç¿ëÇÏ¿© È­ÀÏÀ» ƯÁ¤ È­ÀÏ ±â¼úÀÚ·Î È®¸³ÇÔÀ¸·Î½á, Ç¥ÁØÀÔ·Â ¶Ç´Â Ç¥ÁØÃâ·ÂÀ» µ¿ÀûÀ¸·Î ¹æÇâÀüȯ(Redirect)ÇÒ¼ö ÀÖ´Ù. <&-¿Í >&-¸¦ »ç¿ëÇÏ¿©, openµÈ È­ÀÏÀ» closeÇÒ ¼ö ÀÖ´Ù. ´ÙÀ½Àº È­ÀÏ ±â¼úÀÚ¸¦ »ç¿ëÇÏ´Â ¿¹Á¦¸¦ º¸¿©ÁØ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢myprog ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢exec 3>myout # 3¹ø È­ÀÏ ±â¼úÀÚ·Î myout È­ÀÏÀ» Ãâ·Â¿ëÀ¸·Î ¦¢ ¦¢ ÇÒ´çÇÑ´Ù. ¦¢ ¦¢exec 4&3 ¦¢ ¦¢ # À§ Ãâ·ÂÀº myout È­ÀÏ¿¡ ÀúÀåµÈ´Ù. ¦¢ ¦¢echo This should go to the terminal ¦¢ ¦¢ # À§ Ãâ·ÂÀº Ç¥ÁØÃâ·Â 󸮵ȴÙ. ¦¢ ¦¢cat <&4 ¦¢ ¦¢ # catÀÇ ÀÔ·ÂÀº 4¹ø È­ÀÏ ±â¼úÀÚ·Î µî·ÏµÈ ¦¢ ¦¢ # myfileÀÇ ³»¿ëÀÌ µÈ´Ù. ¦¢ ¦¢echo Later we add this line to the end of the file >&4 ¦¢ ¦¢ # Ãâ·ÂÀÌ myout È­ÀÏ¿¡ Ãß°¡µÈ´Ù. ¦¢ ¦¢3>&- ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ $myprog This should go to the terminal This should go to myout $cat myout This should go to myout Later we add this line to the end of the file --------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­µµ Shell ProgrammingÀÇ Ãß°¡»çÇ׿¡ ´ëÇؼ­ °è¼ÓÇÏ¿© °­ÀÇÇÕ´Ï´Ù. --------------------------------------------------------------------------- #135 À¯´Ï½Ã½º (adunis2 ) Shell ProgrammingÀÇ Ãß°¡»çÇ×: Line 06/28 09:32 94 line Shell ProgrammingÀÇ Ãß°¡»çÇ× : Inline -------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ»çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. -------------------------------------------------------------------- 1) Inline ÀÔ·Â ¹æÇâÀüȯ Inline ÀÔ·Â ¹æÇâÀüȯÀÇ Çü½ÄÀº ´ÙÀ½°ú °°´Ù. command <Line 1 # THATSALLÀÏ ¶§±îÁöÀÇ ÈÄ¼Ó ¶óÀεéÀ» >Line 2 # Ç¥ÁØÀԷ ó¸®ÇÑ´Ù. >THATSALL # (wc -l ¸í·É¾î´Â ¶óÀμö¸¦ °è»êÇÏ´Â ¸í·É) 2 $ ´ÙÀ½Àº ½© ÇÁ·Î±×·¥¿¡¼­ Inline ÀÔ·Â ±â´ÉÀ» »ç¿ëÇÏ´Â ¿¹Á¦ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢myprog ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢while read n1 n2 # ¼ýÀÚ µÎ°³¸¦ ÀÔ·Â¹Þ¾Æ ·çÇÁ¸¦ ¼öÇàÇÑ´Ù. ¦¢ ¦¢do ¦¢ ¦¢ echo `expr $n1 + $n2` # ÀԷ¹ÞÀº µÎ ¼ýÀÚ¸¦ ´õÇÑ´Ù. ¦¢ ¦¢done < 5% pq prog1 prog2 prog3 prog4 ¦¢ ¦¢´Ü¾î -> 0 1 2 3 4 ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ history ¸í·É¾î ¦¢ ÀÇ ¹Ì ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ cat !5:* ¦¢ cat prog1 prog2 prog3 prog4 ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ 5¹ø ¸í·É¾îÀÇ 1¹ø° ´Ü¾îºÎÅÍ ¸¶Áö¸· ´Ü¾î±îÁö¸¦ ÂüÁ¶ ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ cat !5:1 ¦¢ cat prog1 ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ 5¹ø ¸í·É¾îÀÇ 1¹ø° ´Ü¾î¸¦ ÂüÁ¶ ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ cat !5:^ ¦¢ cat prog1 ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ 5¹ø ¸í·É¾îÀÇ Ã¹¹ø° ´Ü¾î¸¦ ÂüÁ¶ ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ cat !5:2-4 ¦¢ cat prog2 prog3 prog4 ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ 5¹ø ¸í·É¾îÀÇ 2¹øºÎÅÍ 4¹ø±îÁöÀÇ ´Ü¾î¸¦ ÂüÁ¶ ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ cat !5:1- ¦¢ cat prog1 prog2 prog3 ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ 5¹ø ¸í·É¾îÀÇ ³¡¿¡¼­ ÇÑ ´Ü¾î¸¦ Á¦¿ÜÇÑ ³ª¸ÓÁö ´Ü¾î¸¦ ÂüÁ¶ ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ !5:-2 ¦¢ pg prog1 prog2 ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ 5¹ø ¸í·É¾îÀÇ 0¹ø ´Ü¾îºÎÅÍ 2¹ø ´Ü¾î±îÁö¸¦ ÂüÁ¶(ÀÌ °æ¿ì ÃÑ 3°³ÀÌ´Ù.) ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ cat !5:$ ¦¢ cat prog4 ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ 5¹ø ¸í·É¾îÀÇ ¸¶Áö¸· ´Ü¾î¸¦ ÂüÁ¶ ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ --------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­µµ C ShellÀÇ History ±â´É¿¡ ´ëÇØ °è¼ÓÇÏ¿© °­ÀÇÇÕ´Ï´Ù. --------------------------------------------------------------------------- #143 À¯´Ï½Ã½º (adunis2 ) C ShellÀÇ history log ¹× alias 07/06 14:03 137 line C ShellÀÇ History ¸í·É¾î -------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ»çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. -------------------------------------------------------------------- 1. History ¸í·É¾îÀÇ ·Î±×(Log) »ý¼º ÀÌÀü °­ÀÇ¿¡¼­ savehist º¯¼ö ¼³Á¤À» ÅëÇØ ÇöÀçÀÇ history list»ó¿¡ º¸Á¸µÈ ¸í·É¾îµéÀ» ´ÙÀ½¹ø ·Î±×Àνÿ¡µµ °è¼ÓÇÏ¿©ÂüÁ¶Çϱâ À§ÇÏ¿© È­ÀÏ¿¡ ÀúÀåÇØ µÎ¾ú´Ù°¡, ·Î±×Àνà ½©¿¡ÀÇÇØ ÀÚµ¿ÀûÀ¸·Î history list»ó¿¡ º¹»çµÊÀ¸·Î½á °è¼ÓµÈ ÂüÁ¶°¡ °¡´ÉÇÏ´Ù°í ¼³¸íÇß´Ù. (À̶§ µðÆúÆ® È­ÀϸíÀº »ç¿ëÀÚÀÇ È¨ µð·ºÅ丮ÀÇ .historyÀÌ´Ù.) À̹ø °­ÀÇ¿¡¼­´Â »ç¿ëÀÚ°¡ history list»ó¿¡ º¸Á¸µÈ ¸í·É¾î ¶óÀεéÀ» ÀÓÀÇÀÇ È­ÀÏ¿¡ ÀúÀåÇصξú´Ù°¡ ÇÊ¿ä½Ã, ÀúÀåµÈ ÀÏ·ÃÀÇ ¸í·É¾îµéÀ» Çѹø¿¡ ½ÇÇàÇÒ¼ö ÀÖ´Â ¹æ½Ä¿¡ ´ëÇØ ¼³¸íÇÑ´Ù. ÀÌ·¸°Ô ÀÌÀü¿¡ ½ÇÇàÇß´ø ¸í·É¾î ¶óÀεéÀ» Àç½ÇÇàÇϱâ À§ÇØ È­ÀÏ¿¡ ÀúÀåÇصаÍÀ» "history ¸í·É¾îÀÇ ·Î±×(Log)" ¶ó°í ÇÑ´Ù. ÀÌ·± history ¸í·É¾î ·Î±×´Â ÀÌ·±°æ¿ì history ¸í·É¾î¿Í Ãâ·Â¹æÇâÀüȯ ±â´ÉÀ» »ç¿ëÇÏ¿© »ý¼ºÇÒ ¼ö ÀÖ´Ù. (»ç¿ë¿¹´Â ¾Æ·¡ÀÇ ¿¹¸¦ ÂüÁ¶Çϱ⠹ٶõ´Ù. ) ÀÌ·¸°Ô »ý¼ºÇÑ history ¸í·É¾î ·Î±×»ó¿¡ ÀúÀåµÈ ¸í·É¾îµéÀº csh ¸í·É¾î¸¦ »ç¿ëÇÏ¿© ÇѲ¨¹ø¿¡ ½ÇÇàÇÒ ¼ö ÀÖ´Ù. ±×·¯³ª È­ÀÏ¿¡ ÀúÀåµÈ ¸í·É¾î¿¡´Â ¸í·É¾î ½Äº°¹øÈ£°¡ ÇÔ²² ÀúÀåµÇ¾î Àֱ⠶§¹®¿¡, À̸¦ csh ¸í·É¾î¿¡ Àü´ÞÇϱâ Àü¿¡ cut°ú °°Àº ÇÊÅÍ ±â´ÉÀ» ¼öÇàÇÏ´Â ¸í·É¾î¸¦ »ç¿ëÇϰųª history ¸í·É¾îÀÇ -h ¿É¼ÇÀ» »ç¿ëÇÏ¿© ½Äº°¹øÈ£¸¦ Á¦°ÅÇÑÈÄ csh ¸í·É¿¡ Àü´ÞÇÏ¿©¾ß¸¸ ½ÇÇà °¡´ÉÇÏ´Ù. ( ÀÚ¼¼ÇÑ ³»¿ëÀº ¾Æ·¡ÀÇ ¿¹¸¦ ÂüÁ¶ ) ´ÙÀ½Àº history log¸¦ »ý¼ºÇÏ¿© »ç¿ëÇÏ´Â »ç¿ë¿¹¸¦ º¸¿©ÁØ´Ù. % set prompt='\!%' <---- ÇÁ·ÒÇÁÆ®¸¦ ¼±¾ðÇÏ°í ÀÖ´Ù. '\!' ÁöÁ¤¿¡ ÀÇÇØ history list»ó¿¡ ÀúÀåµÉ ¸í·É¾î ¶óÀÎÀÇ ½Äº°¹øÈ£°¡ ÇÁ·ÒÇÁÆ®·Î Ç¥½ÃµÈ´Ù. 2% set history=20 <---- history list»ó¿¡ º¸Á¸ÇÒ ¸í·É¾î ¶óÀÎÀÇ °¹¼ö¸¦ 20À¸·Î ÇÒ´çÇÏ°í ÀÖ´Ù. 3% ls file1 file2 file3 4% pwd /work/acct/user1 5% echo This is line number 5 This is line number 5 6% history <---- history list»ó¿¡ ÀúÀåµÈ Á÷Àü¿¡ ½ÇÇàÇß´ø 2 set history=20 ¸í·É¾îµéÀ» history ¸í·É¾î¸¦ »ç¿ëÇÏ¿© 3 ls È®ÀÎÇÏ°í ÀÖ´Ù. 4 pwd 5 echo This is line number 5 6 history 7% history 3 > logfile <-- Ãâ·Â¹æÇâ Àüȯ ±â´ÉÀ» ÀÌ¿ëÇÏ¿© history ¸í·É¾îÀÇ ½ÇÇà °á°ú¸¦ logfileÀ̶ó´Â È­ÀÏ¿¡ ÀúÀåÇÏ°í ÀÖ´Ù. 8% cat logfile <-- È­ÀÏ¿¡ ÀúÀå»óȲÀ» È®ÀÎÇÏ°í ÀÖ´Ù. 5 echo This is line number 5 6 history 7 history 3 > logfile 9% cut -f2- logfile | csh <-- logfile¿¡ ÀúÀåµÈ ¸í·É¾îµéÀ» csh ¸í·É¾î¸¦ »ç¿ëÇÏ¿© ½ÇÇàÇÏ°í ÀÖ´Ù. ±×·¯³ª logfileÀÇ °¢¶óÀο¡´Â ¸í·É¾î ¶óÀÎ ½Äº°¹øÈ£°¡ Æ÷ÇԵǾî Àֱ⠶§¹®¿¡ csh ¸í·É¾î¸¦ »ç¿ëÇÏ¿© ¸í·É¾î¸¦ ½ÇÇàÇϱâ À§ÇØ ¸ÕÀú cut ¸í·ÉÀ» »ç¿ëÇØ ½Äº°¹øÈ£¸¦ »èÁ¦ÇÑÈÄ À̸¦ ÆÄÀÌÇÁ¸¦ ÀÌ¿ë csh ¸í·É¿¡ Àü´ÞÇÏ°í ÀÖ´Ù. This is line number 5 logfile: File exists. <-- ÀÌ °á°ú´Â logfile¿¡ ÀúÀåµÈ ¸í·É¾îÁß history 3 > logfileÀÇ ½ÇÇà °á°úÀÌ´Ù. ±×·±µ¥ ¿¡·¯ ¸Þ¼¼Áö¿¡ À¯ÀÇÇØ¾ß ÇÑ´Ù. "È­ÀÏÀÌ Á¸ÀçÇÑ´Ù"¶ó´Â ¿¡·¯¸Þ¼¼ÁöÀε¥ ÀÌ·± ÇüÅÂÀÇ ¿¡·¯´Â C ShellÀÇ ¿¹¾àº¯¼öÀÎ noclobber º¯¼ö°¡ setµÈ °æ¿ì¿¡ ¹ß»ýÇÑ´Ù. noclobber º¯¼ö¿¡ ´ëÇؼ­´Â ÀÌÀü °­ÀǸ¦ ÂüÁ¶Çϱ⠹ٶõ´Ù. 10% cat logfile 5 echo This is line number 5 6 history 7 history 3 > logfile 2. C ShellÀÇ Alias ±â´É C Shell¿¡¼­µµ ¸í·É¾î ¶Ç´Â ¸í·É¾î ±×·ì¿¡ ´ëÇØ ÇϳªÀÇ º°Äª(Alias)¸¦ ºÎ¿©ÇÏ´Â ±â´ÉÀ» Á¦°øÇÑ´Ù. »ç¿ëÀÚ´Â Alias¸¦ »ç¿ëÇÏ¿© °£´ÜÇÏ°Ô ¸í·É¾î ¶Ç´Â ¸í·É¾î ±×·ìÀ» ½ÇÇàÇÒ ¼ö ÀÖ´Ù. Alias¸¦ Á¤ÀÇÇÏ´Â Çü½ÄÀº ´ÙÀ½°ú °°´Ù. alias name definition AliasÀÇ definition ºÎºÐ¿¡´Â ÆÄÀÌÇÁ ±âÈ£, ¹æÇâÀüȯ ±âÈ£ ±×¸®°í ¹é±×¶ó¿îµå ½ÇÇàÁöÁ¤µîÀ» ÇÔ²² ÁöÁ¤ÇÒ¼ö ÀÖ´Ù. ¶ÇÇÑ ½© º¯¼ö·ÎÀÇ ÂüÁ¶, ¸í·É¾î ´ëÄ¡ ±×¸®°í ´Ù¸¥AliasÀÇ ÂüÁ¶µîµµ ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù. (ÁÖÀÇ) ¸¸ÀÏ definition ºÎºÐ¿¡ Ư¼ö¹®ÀÚ°¡ ÁöÁ¤µÉ °æ¿ì¿¡´Â ¹Ýµå½Ã µû¿ÈÇ¥¸¦ ÁöÁ¤ÇØ¾ß ÇÑ´Ù. alias ¸í·É¾î¿¡ ÀÎÀÚ¸¦ ÁöÁ¤ÇÏÁö ¾Ê°í ½ÇÇàÇϸé, ÇöÀçÀÇ È¯°æ¿¡ Á¤ÀǵǾî ÀÖ´Â aliasµéÀ» Ç¥½ÃÇØÁØ´Ù. ¶ÇÇÑ Á¤ÀÇµÈ alias¸¦ ÇØÁ¦Çϱâ À§Çؼ­´Â unalias ¸í·É¾î¸¦ »ç¿ëÇÑ´Ù. alias ±â´ÉÀº º¹ÀâÇÑ ¸í·É¾î¸¦ »ç¿ëÀÚ°¡ ´Ü¼øÇÏ°Ô ½ÇÇàÇÒ ¼ö ÀÖ´Ù´Â ÀåÁ¡µµ ÀÖÀ¸³ª, ½ÇÇà½ÃÀÇ ³¶ºñ¸¦ (½ÇÁ¦ ¸í·É¾î·Î º¯È¯ÇÏ´Â ½Ã°£¹× ¸Þ¸ð¸® °ø°£ÀÇ Ãß°¡ ¼Ò¿äµî) ÃÊ·¡ÇÒ¼ö Àֱ⠶§¹®¿¡ ÀÚÁÖ ½ÇÇàÇÏÁö ¾Ê´Â ¸í·É¾î ¶Ç´Â ¸í·É¾î ±×·ì¿¡´Â Àû¿ëÇÏÁö ¾Ê´Â°Ô À¯¸®ÇÏ´Ù. ´ÙÀ½Àº Alias¸¦ »ç¿ëÇÏ´Â ¿¹Á¦ÀÌ´Ù. 20% alias h history # µÎ°³ÀÇ alias¸¦ Á¤ÀÇÇÏ°í ÀÖ´Ù. 21% alias cm chmod 755 22% ls -l file* # ÇöÀçÀÇ µð·ºÅ丮³»¿¡ ÀÖ´Â È­ÀϵéÀ» È®ÀÎÇÏ°í ÀÖ´Ù. Á¢±ÙÇã°¡ ºÎºÐÀ» À¯Àǹٶõ´Ù. -rw-r--r-- 1 hpt 200 14 Dec 6 09:19 fileA -rw-r--r-- 1 hpt 200 14 Dec 6 09:19 fileB -rw-r--r-- 1 hpt 200 14 Dec 6 09:20 fileC 23% cm fileA fileB # cm alias¸¦ ½ÇÇàÇÏ°í ÀÖ´Ù. 24% ls -l file* # À§ ¶óÀο¡¼­ ÁöÁ¤Çß´ø µÎ°³ÀÇ È­ÀÏÀÇ Á¢±Ù Çã°¡°¡ º¯°æµÊÀ» È®ÀÎÇÏ°í ÀÖ´Ù. -rwxr-xr-x 1 hpt 200 14 Dec 6 09:19 fileA -rwxr-xr-x 1 hpt 200 14 Dec 6 09:19 fileB -rw-r--r-- 1 hpt 200 14 Dec 6 09:20 fileC 25% alias # ÇöÀç ȯ°æ¿¡¼­ Á¤ÀÇµÈ alias¸¦ È®ÀÎÇÏ°í cm (chmod 755) # ÀÖ´Ù. h history 26% unalias cm # cm alias¸¦ ÇØÁ¦ÇÏ°í ÀÖ´Ù. 27% cm fileA fileB # ½ÇÁ¦ ÇØÁ¦µÇ¾ú´Â°¡¸¦ cm ½ÇÇàÀ» ÅëÇØ cm: Command not found. # È®ÀÎÇÏ°í ÀÖ´Ù. 28% h 5 # h alias´Â °è¼Ó Á¸ÀçÇÏ°í ÀÖ´Ù´Â °ÍÀ» 24 ls -l file* # È®ÀÎÇÏ°í ÀÖ´Ù. 25 alias 26 unalias cm 27 cm fileA fileB 28 h 5 --------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­´Â C ShellÀÇ ¸í·É¾î ¶óÀΠ󸮰úÁ¤À» °­ÀÇÇÕ´Ï´Ù. --------------------------------------------------------------------------- #144 À¯´Ï½Ã½º (adunis2 ) C ShellÀÇ ¸í·É¾î ¶óÀΠ󸮰úÁ¤ 07/07 11:14 69 line C ShellÀÇ ¸í·É¾î ¶óÀΠ󸮰úÁ¤ -------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ»çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. -------------------------------------------------------------------- À̹ø °­ÀÇ¿¡¼­´Â »ç¿ëÀÚ°¡ ½© ÇÁ·ÒÇÁÆ®¿¡¼­ ÀÔ·ÂÇÑ ¸í·É¾î ¶óÀÎÀ» C ShellÀÌ Ã³¸®ÇÏ´Â(°ð ¹ø¿ªÇÏ´Â) °úÁ¤¿¡ ´ëÇØ °£·«È÷ ¼Ò°³ÇÑ´Ù. °¢ ´Ü°è¿¡ ´ëÇÑÀÚ¼¼ÇÑ ¼³¸íÀº ÀÌÀü¿¡ °­ÀÇÇß´ø Bourne/ Korn ShellÀÇ ¸í·É¾î ¶óÀΠ󸮰úÁ¤À» Âü°íÇϱ⠹ٶõ´Ù. ¦£¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢´Ü°è¦¢ ¼³ ¸í ¦¢ ¦§¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ ¦¢History substitution (! ^) ¦¢ ¦¢ 1 ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ ¦¢¸í·É¾î ¶óÀο¡ ´ëÇÑ C ShellÀÇ Ã¹¹ø° 󸮴 history ´ëÄ¡¹®ÀÚÀÇ ¦¢ ¦¢ ¦¢Ã³¸®ÀÌ´Ù. Áï; ¸í·É¾î ¶óÀο¡ ÁöÁ¤µÈ !¿Í ^À¸·Î ÁöÁ¤µÈ ¹®ÀÚµéÀ» ¦¢ ¦¢ ¦¢history list»ó¿¡ º¸Á¸µÈ »óÀÀÇÑ ¸í·É¾î·Î º¯È¯ÇÑ´Ù. ¦¢ ¦§¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ ¦¢Finding words (& | ; > < ( ) && || >> <<) ¦¢ ¦¢ 2 ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ ¦¢¸í·É¾î ¶óÀÎÀ» ´Ü¾îº°·Î ³ª´©´Â ÀÛ¾÷À» ¼öÇàÇÑ´Ù. ¸í·É¾î ¶óÀÎÀ» ¦¢ ¦¢ ¦¢´Ü¾î·Î ºÐ·ùÇÒ¶§ ´Ü¾îº° ºÐ·ù ±âÁØÀº °ø¹éÀ̳ª Åǹ®ÀÚ°¡ »ç¿ëµÈ´Ù. ¦¢ ¦¢ ¦¢¸í·É¾î ¶óÀο¡ ÁöÁ¤µÇ¾î Àִ Ư¼ö¹®ÀÚµµ ÇϳªÀÇ ´Ü¾î·Î Ãë±ÞµÈ´Ù. ¦¢ ¦§¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ ¦¢Update history list ¦¢ ¦¢ 3 ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ ¦¢ÇöÀç ó¸®ÁßÀÎ ¸í·É¾î ¶óÀÎÀ» history list¿¡ ÀúÀåÇÑ´Ù. ¦¢ ¦§¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ ¦¢Parse quotes ('' "") ¦¢ ¦¢ 4 ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ ¦¢µû¿ÈÇ¥·Î(µû¿ÈÇ¥,½Öµû¿ÈÇ¥) ¹­¿©ÀÖ´Â ¸í·É¾î¸¦ ºÐ¼®ÇÏ°í, ó¸®ÇÑ´Ù. ¦¢ ¦§¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ ¦¢Alias substitution ¦¢ ¦¢ 5 ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ ¦¢¸í·É¾î ¶óÀο¡ ÁöÁ¤µÇ¾î ÀÖ´Â alias¸¦ ó¸®ÇÑ´Ù. ¦¢ ¦§¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ ¦¢I/O redirection, background execution and pipes recognized ¦¢ ¦¢ 6 ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ ¦¢¸í·É¾î ¶óÀο¡ ÀÔÃâ·Â ¹æÇâÀüȯ, ¹é±×¶ó¿îµå¿Í ÆÄÀÌÇÁ°¡ ÁöÁ¤µÇ¾î Àִ¦¢ ¦¢ ¦¢°æ¿ì À̵éÀ» ó¸®Çϱâ À§ÇÑ È¯°æÀ» ¼³Á¤ÇÑ´Ù. (ÀÌ ´Ü°è´Â ½ÇÇàÀ» À§ÇØ ¦¢ ¦¢ ¦¢Áغñ¸¦ ÇÏ´Â °ÍÀÌÁö, ½ÇÇàÀ» °³½ÃÇÏ´Â °ÍÀº ¾Æ´Ï´Ù.) ¦¢ ¦§¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ ¦¢Variable substitution ¦¢ ¦¢ 7 ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ ¦¢¸í·É¾î ¶óÀÎ»ó¿¡ ÁöÁ¤µÇ¾î ÀÖ´Â º¯¼ö·ÎÀÇ ÂüÁ¶¸¦ ó¸®ÇÑ´Ù. Áï; ÁöÁ¤µÈ¦¢ ¦¢ ¦¢º¯¼ö¿¡ ¼³Á¤µÈ °ªÀ¸·Î ´ëÄ¡ÇÑ´Ù. ¦¢ ¦§¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ ¦¢Command substitution (``) ¦¢ ¦¢ 8 ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ ¦¢¸í·É¾î ´ëÄ¡¸¦ ¼öÇàÇÑ´Ù. ¸í·É¾î ´ëÄ¡¶õ ¿ªµû¿ÈÇ¥(``)·Î µÑ·¯½×¿©ÀÖ´Â ¦¢ ¦¢ ¦¢¸í·É¾îµéÀ» ½ÇÇàÇÑ ÈÄ, ½ÇÇà °á°ú·Î ¸í·É¾î ºÎºÐÀ» ´ëÄ¡ÇÑ´Ù. ¦¢ ¦§¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ ¦¢Filename expansion (* ? [...] !) ¦¢ ¦¢ 9 ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ ¦¢¸í·É¾î ¶óÀÎ»ó¿¡ ÁöÁ¤µÈ Wild card ¹®ÀÚ¸¦ ó¸®ÇÑ´Ù. ¦¢ ¦¢ ¦¢Wild card ¹®ÀÚ¿¡´Â *, ?, [] µîÀÌ ÀÖ´Ù. ¦¢ ¦§¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ 10 ¦¢Command execution ¦¢ ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ ¦¢Ä¿³Î¿¡ ¸í·É¾î ¶óÀÎÀ» Àü´ÞÇÏ¿© ½ÇÇàÇÑ´Ù. ¦¢ ¦¦¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ --------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­´Â C ShellÀÇ ÀÔÃâ·Â ¹æÇâÀüȯ ÁöÁ¤¹æ½Ä¿¡ ´ëÇØ °­ÀÇÇÕ´Ï´Ù. --------------------------------------------------------------------------- #145 À¯´Ï½Ã½º (adunis2 ) C ShellÀÇ ÀÔÃâ·Â ¹æÇâÀüȯ 07/08 07:07 70 line C ShellÀÇ ÀÔÃâ·Â ¹æÇâÀüȯ -------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ»çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. -------------------------------------------------------------------- 1. ÀÔÃâ·Â ¹æÇâÀüȯ ±âº»ÀûÀ¸·Î C ShellÀº Bourne Shell°ú °°Àº ÀÔÃâ·Â ¹æÇâÀüȯ ±â´É Áï; >, >> ±×¸®°í < À» Áö¿øÇϳª, Bourne Shell¿¡¼­´Â Áö¿øµÇ´Â Ç¥ÁØ¿¡·¯ÀÇ ¹æÇâÀüȯ ±â´É Áï; 2>Àº C Shell¿¡¼­´Â Áö¿øÇÏÁö ¾Ê´Â´Ù. ±×·¸Áö¸¸ Ç¥ÁØ¿¡·¯¿Í Ç¥ÁØÃâ·ÂÀ» µ¿ÀÏÇÑ È­ÀÏ·Î ¹æÇâÀüȯÇÏ´Â >&¸¦ Á¦°øÇϱ⠶§¹®¿¡, »ç¿ëÀÚ´Â À̸¦ ÀÌ¿ëÇØ Ç¥ÁØ¿¡·¯¸¦ È­ÀÏ¿¡ ÀúÀåÇÒ ¼ö ÀÖ´Ù. ºñ·Ï C Shell¿¡¼­´Â Ç¥ÁØÃâ·Â°ú Ç¥ÁØ¿¡·¯¸¦ º°µµÀÇ È­ÀÏ·Î ¹æÇâÀüȯÇÏ´Â ½Éº¼Àº Á¦°øÇÏÁö´Â ¾ÊÁö¸¸, ´ÙÀ½ ¿¹Á¦¿¡ ¼Ò°³µÈ ¹æ½ÄÀ» »ç¿ëÇÏ¿© Ç¥ÁØ¿¡·¯¸¦ º°µµÀÇ È­ÀÏ¿¡ ÀúÀåÇÒ ¼ö ÀÖ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢prog ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ÀÌ ½© ÇÁ·Î±×·¥¿¡¼­´Â ¹æÇâÀüȯÀÇ ¦¢# C Shell program ¦¢ ó¸® ¿¹¸¦ È®ÀÎÇϱâ À§ÇØ µÎ°³ÀÇ ¦¢ls core ¦¢ ls ¸í·É¾î¸¦ ÁöÁ¤ÇÏ°í ÀÖ´Ù. ¦¢ls * ¦¢ core¶ó´Â È­ÀÏÀº ±âÁ¸¿¡ ¾ø´Â ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ È­ÀÏÀ̱⠶§¹®¿¡ ÇØ´ç ls ¸í·ÉÀº ¿¡·¯Ã³¸®µÉ °ÍÀÌ´Ù. % ls <--- core ¶ó´Â È­ÀÏÀÌ ÇöÀçÀÇ µð·ºÅ丮¿¡ ¾øÀ½À» file1 È®ÀÎÇÏ°í ÀÖ´Ù. file2 file3 prog % prog > std_file <---- Ç¥ÁØÃâ·Â¿¡ ´ëÇÑ ¹æÇâÀüȯÀ» ÁöÁ¤ÇÏ°í ÀÖ´Ù. core: No such file or directory <---- core È­ÀÏÀÌ ¾ø±â ¶§¹®¿¡ ¹ß»ýÇÑ Ç¥ÁØ¿¡·¯ ¸Þ¼¼ÁöÀÌ´Ù. % cat std_file <---- Ç¥ÁØÃâ·ÂÀº std_file¿¡ file1 ÀúÀåµÇ¾úÀ½À» È®ÀÎÇÏ°í ÀÖ´Ù. file2 ±×·±µ¥ ÁÖÀÇÇÒ °ÍÀÌ ÀÖ´Ù. file3 ¸í·É¾î ½ÇÇàÀÌ Á¾·áµÇ±âµµ Àü¿¡ prog std_fileÀÌ »ý¼ºµÇ¾ú´Ù´Â °ÍÀÌ´Ù. std_file ÀÌÀ¯´Â ¸í·É¾î ¶óÀΠ󸮰úÁ¤ ¶§¹®ÀÌ´Ù.(Çѹø ºÐ¼®Çϱ⠹ٶõ´Ù.) % prog >& std_file <---- À̹ø¿¡´Â ¹æÇâÀüȯ ½Éº¼·Î >&¸¦ »ç¿ëÇÏ°í ÀÖ´Ù. À̹ø¿¡´Â Ç¥ÁØ¿¡·¯°¡ Ç¥½ÃµÇÁö¾Ê°í ÀÖ´Ù. % cat std_file <---- Ç¥½ÃµÇÁö ¾ÊÀº Ç¥ÁØ¿¡·¯°¡ core: No such file or directory ¹æÇâÀüȯ½Ã ÁöÁ¤ÇÑ std_file¿¡ file1 ÀúÀåµÇ¾î ÀÖÀ½À» È®ÀÎÇÏ°í ÀÖ´Ù. file2 Áï; >&·Î ÁöÁ¤ÇÒ °æ¿ì¿¡´Â file3 Ç¥ÁØÃâ·Â°ú Ç¥ÁØ¿¡·¯°¡ µ¿ÀÏ prog È­ÀÏ¿¡ ÀúÀåµÈ´Ù. std_file % (prog > std_file) >& err_file <---- À̹ø¿¡´Â Ç¥ÁØÃâ·Â ¹æÇâÀüȯ ÁöÁ¤½Ã % cat std_file ±×·ìÈ­ ¸í·ÉÀÎ µÕ±Ù°ýÈ£¸¦ ÁöÁ¤ÇÏ°í file1 ÀÖ´Ù. ÀÌ·¯¸é ÁöÁ¤ ¸í·É¾î´Â file2 ÇÏÀ§ ½©¿¡¼­ ½ÇÇàµÇ¸ç, Ç¥ÁØÃâ·ÂÀ» file3 ó¸®ÇÏ°í Ç¥ÁØ¿¡·¯´Â »óÀ§ ½©¿¡ prog Àü´ÞµÇ¾î 󸮵DZ⠶§¹®¿¡ >& ÁöÁ¤¿¡ std_file ÀÇÇØ err_file¿¡ ÀúÀåµÈ´Ù. %cat err_file # »ç¿ëÀÚ´Â ÀÌ ¹æ½Ä¿¡ »ç¿ëÇÏ¿© # core: No such file or directory # C Shell¿¡¼­ Ç¥ÁØÃâ·Â°ú Ç¥ÁØ¿¡·¯¸¦ # # º°µµÀÇ È­ÀÏ·Î ¹æÇâÀüȯÇÒ ¼ö ÀÖ´Ù. # --------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­µµ C Shell¿¡¼­ÀÇ ¸í·É¾î ¶óÀÎ ÀÎÀÚ Ã³¸®¹æ½Ä¿¡ ´ëÇØ °­ÀÇÇÕ´Ï´Ù. --------------------------------------------------------------------------- #146 À¯´Ï½Ã½º (adunis2 ) C ShellÀÇ ½© ÇÁ·Î±×·¥ ÀÎÀÚ Ã³¸® 07/09 12:46 93 line C ShellÀÇ ½© ÇÁ·Î±×·¥ ÀÎÀÚ Ã³¸® -------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ»çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. -------------------------------------------------------------------- 1. C Shell¿¡¼­ÀÇ ½© ÇÁ·Î±×·¥ ÀÎÀÚ Ã³¸® C Shell ȯ°æ¿¡¼­ ¼öÇàÇϱâ À§ÇÑ ½© ÇÁ·Î±×·¥ ÀÛ¼º½Ã¿¡µµ ½© ÇÁ·Î±×·¥ ½ÇÇà¿ä±¸½Ã ¸í·É¾î ¶óÀο¡¼­ ÇÔ²² Á¦°øÇÑ ÀÎÀÚµéÀ» ÇÁ·Î±×·¥³»¿¡¼­ ¹Þ¾Æµé¿© ó¸®ÇÒ ¼ö ÀÖ´Ù. C Shell¿¡¼­´Â argv¶ó´Â ½© º¯¼ö¸¦ ÀÌ¿ëÇÏ¿© ´Ù¾çÇÑ Çü½ÄÀ¸·Î ÀÎÀÚµéÀ» ó¸®ÇÒ ¼ö ÀÖ´Ù. (¾Æ·¡ÀÇ argv º¯¼öÀÇ ÀÎÀÚ ÂüÁ¶ Çü½ÄÀ» Âü°íÇÑ´Ù.) ¶ÇÇÑ ¸í·É¾î ¶óÀÎÀ¸·ÎºÎÅÍ ¹Þ¾ÆµéÀÎ ÀÎÀÚµéÀ» º¯°æÇϱâ À§ÇØ set°ú unset ¸í·É¾î¸¦ »ç¿ëÇÒ¼öµµ ÀÖ´Ù.(ÀÚ¼¼ÇÑ ³»¿ëÀº Bourne/Korn Shell ºÎºÐÀ» ÂüÁ¶Çϱ⠹ٶõ´Ù.) ¶ÇÇÑ º¯¼ö¿¡ ¼³Á¤µÈ ÀÎÀÚÀÇ Æ¯Á¤ ºÎºÐ¸¸À» ÂüÁ¶Çϱâ À§ÇØ ÀÌÀü °­ÀÇ¿¡¼­ ¼Ò°³Çß´ø :h,:t,:q,:x¿Í °°Àº Áö½ÃÀÚ¸¦ »ç¿ëÇÒ¼öµµ ÀÖ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢¿¹¸¦µé¾î ls -l $1:r.o¶ó ÁöÁ¤Çϸé, ¸í·É¾î ¶óÀÎÀÇ Ã¹¹ø° ÀÎÀÚ·Î ¦¢ ¦¢prog³ª prog.c¶ó ÁöÁ¤Çß´ø°£¿¡ ls -l prog.o¶ó´Â Çü½ÄÀ¸·Î º¯È¯ÇÑ´Ù.¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ argv º¯¼ö¸¦ ÀÌ¿ëÇÑ ÀÎÀÚÀÇ ÂüÁ¶ ¹æ½ÄÀº ´ÙÀ½°ú °°´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ Symbol ¦¢ Meaning ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ $#argv ¦¢ÀÎÀÚÀÇ °¹¼ö ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ $argv[*] ¦¢Àüü ÀÎÀÚÀÇ ÂüÁ¶ ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ $argv ¦¢Àüü ÀÎÀÚÀÇ ÂüÁ¶ ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ $* ¦¢Àüü ÀÎÀÚÀÇ ÂüÁ¶ ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ $argv[1-n] ¦¢1 ¹øºÎÅÍ n ¹ø±îÁöÀÇ ÀÎÀÚ¸¦ ÂüÁ¶ ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ $0 ¦¢ÇÁ·Î±×·¥ À̸§ ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ $argv[0] ¦¢À߸øµÈ ÁöÁ¤; ¸í·É¾î À̸§À» ÂüÁ¶Çϱâ À§ÇØ $0¸¦ ¦¢ ¦¢ ¦¢»ç¿ëÇØ¾ß ÇÑ´Ù. ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ $1 $2 ... $9 ¦¢ÁöÁ¤µÈ ¼ýÀÚÀÇ »óÀÀÇÏ´Â ÀÎÀÚ¸¦ ÂüÁ¶. ¦¢ ¦¢ ¦¢$argv[1]ºÎÅÍ $argv[9]ÁöÁ¤°ú µ¿ÀÏÇÏ´Ù. ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ $argv[$#argv]¦¢¸¶Áö¸· ÀÎÀÚ¸¦ ÂüÁ¶ ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ´ÙÀ½Àº ¸í·É¾î ¶óÀÎÀ¸·ÎºÎÅÍ Á¦°øµÇ´Â ÀÎÀÚ¸¦ ó¸®ÇÏ°í ÀÖ´Â ¿¹Á¦ ÇÁ·Î±×·¥ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢myprog ¦¢ Âü°í »çÇ× ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢# C shell script ¦¢$0 : ¸í·É¾î À̸§ ¦¢ ¦¢ ¦¢$#argv : ÀÎÀÚÀÇ °¹¼ö¦¢ ¦¢echo $0 was called with $#argv arguments¦¢$* : ÀüüÀÎÀÚ¸¦ ÂüÁ¶¦¢ ¦¢echo The arguments were $* ¦¢$argv[3],$3 ¦¢ ¦¢echo Arguments 3 is $argv[3] or $3 ¦¢ 3¹ø° ÀÎÀÚ¸¦ ÂüÁ¶¦¢ ¦¢echo Middle arguments are argv[3-4] ¦¢argv[3-4] : 3¹ø°, ¦¢ ¦¢ ¦¢ 4¹ø° ÀÎÀÚ¸¦ ÂüÁ¶¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ % myprog myprog was called with 0 arguments The arguments were Subscript out of range À§ ¿¹¿¡¼­´Â ÇÁ·Î±×·¥ ½ÇÇà½Ã ÀÎÀÚ¸¦ Á¦°øÇÏÁö ¾Ê°í ÀÖ´Ù. ±×·¡¼­ Ãâ·Â °á°ú¸¦ º¸¸é ÀÎÀÚ·ÎÀÇ ÂüÁ¶°¡ 0 ¶Ç´Â °ø¹é 󸮵ǰí ÀÖ´Ù. ±×·¯³ª ¸¶Áö¸· Ãâ·Â ¶óÀο¡ ÁÖÀÇÇØ¾ß ÇÑ´Ù. ±× ¶óÀÎÀº ÇÁ·Î±×·¥»ó¿¡ ÁöÁ¤µÇ¾î ÀÖ´Â Ãâ·Â¶óÀÎÀÌ ¾Æ´Ï¶ó, argvº¯¼ö¿¡ ´ëÇÑ ÂüÁ¶ÀÇ ½ÇÆзΠÀÎÇÑ ¿¡·¯ ¸Þ¼¼ÁöÀÌ´Ù. Áï, argv º¯¼ö¸¦ ÀÌ¿ëÇÑ ÀÎÀÚÀÇ ÂüÁ¶½Ã À߸øµÈ ÂüÁ¶¸¦ ¼öÇàÇÏ¸é ¿¡·¯ ó¸®ÇÑ´Ù´Â °ÍÀ» ÁÖ¸ñÇØ¾ß ÇÑ´Ù. % myprog Now is the time for myprog was called with 5 arguments The arguments were Now is the time for Argument 3 is the or the Middle arguments are the time À§ ¿¹¿¡¼­´Â ¸í·É¾î ¶óÀο¡¼­ 5°³ÀÇ ÀÎÀÚ°¡ Á¦°øµÇ°í ÀÖ´Ù. µû¶ó¼­ Ãâ·Â °á°ú»ó¿¡ ÀÎÀÚµéÀÌ Á¤È®ÇÏ°Ô ÂüÁ¶µÇ°í ÀÖ´Ù. --------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­µµ C Shell¿¡¼­ÀÇ ¸í·É¾î ¶óÀÎ ÀÎÀÚ Ã³¸®¹æ½Ä¿¡ ´ëÇØ °­ÀÇÇÕ´Ï´Ù. --------------------------------------------------------------------------- #147 À¯´Ï½Ã½º (adunis2 ) C ShellÀÇ ¿¬»êÀÚ(Operators) 07/09 12:49 128 line C ShellÀÇ ¿¬»êÀÚ(Operators) -------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ»çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. -------------------------------------------------------------------- 1. »ê¼ú ¿¬»êÀÚ(Arithmetic Operators) C Shell¿¡¼­ Á¦°øÇÏ´Â »ê¼ú ¿¬»êÀÚµéÀº ´ÙÀ½°ú °°´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ ¿¬»êÀÚ ¦¢ ÀÇ¹Ì ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ - ¦¢ »©±â ¦¢ ¦¢ + ¦¢ ´õÇϱ⠦¢ ¦¢ * ¦¢ °öÇϱ⠦¢ ¦¢ / ¦¢ ³ª´©±â ¦¢ ¦¢ % ¦¢ Á¤¼ö ³ª´©±â ¦¢ ¦¢ -- ¦¢ °¨¼Ò ¿¬»êÀÚ ¦¢ ¦¢ ++ ¦¢ Áõ°¡ ¿¬»êÀÚ ¦¢ ¦¢ = ¦¢ ÇÒ´ç ¿¬»êÀÚ ¦¢ ¦¢ ! ¦¢ Not ¦¢ ¦¢ & ¦¢ AND ¦¢ ¦¢ | ¦¢ OR ¦¢ ¦¢ ^ ¦¢ XOR(exclusive or) ¦¢ ¦¢ ~ ¦¢ 1ÀÇ º¸¼ö ¦¢ ¦¢ >> ¦¢ Bit shift right ¦¢ ¦¢ << ¦¢ Bit shift left ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ C Shell¿¡¼­, »ê¼ú ¿¬»êÀÇ °á°ú¸¦ º¯¼ö¿¡ ¼³Á¤Çϱâ À§Çؼ­´Â @ ¸í·É¾î¸¦ »ç¿ëÇÑ´Ù. ¸¸ÀÏ ÇÁ·Î±×·¥¿¡¼­ ´ÙÀ½°ú °°Àº ¸í·É¾î¸¦ ÁöÁ¤Çß´Ù°í ÇÏÀÚ. set x = 2 + 7 ÀÌ °æ¿ì ¹®¹ý¿¡·¯ 󸮵ȴÙ. ¸¸ÀÏ 2 + 7 ÁöÁ¤À» µû¿ÈÇ¥·Î µÑ·¯½×¾Ò´Ù¸é, º¯¼ö x¿¡´Â 2¿Í 7À» ´õÇÑ°ªÀÎ 9°¡ ¾Æ´Ñ 2 + 7À̶ó´Â ¹®ÀÚ¿­ÀÌ ÇÒ´çµÉ °ÍÀÌ´Ù. ¸¸ÀÏ »ç¿ëÀÚ°¡ 2¿Í 7À» ´õÇÑ °ªÀÎ 9¸¦ º¯¼ö x¿¡ ÀúÀåÇÏ°íÀÚ ÇÑ´Ù¸é, ´ÙÀ½ ¿¹¿Í °°ÀÌ @ ¸í·É¾î¸¦ ÁöÁ¤ÇØ¾ß ÇÑ´Ù. % @ x = 2 + 7 # 2¿Í 7À» ´õÇÑ °ªÀ» x º¯¼ö¿¡ ÀúÀåÇÑ´Ù. % echo $x # ÀúÀå °á°ú¸¦ È®ÀÎÇÏ°í ÀÖ´Ù. 9 % @ z = 23 % 7 # Á¤¼ö ³ª´©±â ¿¬»êÀ» ¼öÇàÇÑ´Ù. % echo $z 2 % echo $a 5 % @ a++ # Áõ°¡ ¿¬»êÀÚ¸¦ ÀÌ¿ëÇÏ¿© a º¯¼öÀÇ °ªÀ» Çϳª Áõ°¡ÇÏ°í % echo $a # ÀÖ´Ù. 6 2. ³í¸® ºñ±³ ¿¬»êÀÚ(Logical Comparison Operator) ³í¸® ºñ±³ ¿¬»êÀÚ´Â if Á¦¾î¹®°ú loop Á¦¾î¹®¿¡¼­ »ç¿ëÇÏ´Â ¿¬»êÀÚÀÌ´Ù. ÀÌµé ¿¬»êÀÚµéÀº ¿¬»êÈÄ Âü(true)°ú °ÅÁþ(false)À̶ó´Â °á°ú°ªÀ» µ¹·ÁÁØ´Ù. ´ÙÀ½Àº ³í¸® ºñ±³ ¿¬»êÀÚÀÇ Á¾·ù¸¦ º¸¿©ÁØ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢³í¸®ºñ±³¿¬»êÀÚ¦¢ ÀÇ ¹Ì ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ != ¦¢ °°Áö¾Ê´Ù. ¦¢ ¦¢ == ¦¢ °°´Ù. ¦¢ ¦¢ > ¦¢ Å©´Ù. ¦¢ ¦¢ >= ¦¢ Å©°Å³ª °°´Ù. ¦¢ ¦¢ < ¦¢ Àû´Ù. ¦¢ ¦¢ <= ¦¢ Àû°Å³ª °°´Ù. ¦¢ ¦¢ && ¦¢ ³í¸®Àû AND ¦¢ ¦¢ || ¦¢ ³í¸®Àû OR ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ % echo $a $ANS 5 YES % if ($a <= 7) echo TRUE # if Á¶°ÇÀÇ °á°ú°¡ ÂüÀÏ °æ¿ì¿¡ ÈļӵǴ TRUE # echo ¸í·É¾î°¡ ½ÇÇàµÈ´Ù. % if ($ANS != YES) echo TRUE # Á¶°ÇÆÇ´ÜÀÇ °á°ú°¡ °ÅÁþÀÌ¶ó¼­ echo # ¸í·É¾î°¡ ½ÇÇàµÇÁö ¾Ê´Â´Ù. % if ($a < 6 && $a > 3) echo TRUE # ÆÇ´Ü °á°ú°¡ ÂüÀÌ´Ù. TRUE 3. È­ÀÏ »óÅ ¿¬»êÀÚ(File Status Operators) È­ÀÏ »óÅ ¿¬»êÀÚ´Â if ¿Í loop Á¶°Ç¹®¿¡¼­ »ç¿ëµÈ´Ù. ÀÌ ¿¬»êÀÚµµ ¿¬»ê°á°ú¸¦ Âü°ú °ÅÁþ °ªÀ¸·Î µ¹·ÁÁØ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢È­ÀÏ»óÅ ¿¬»êÀÚ ¦¢ ÀÇ ¹Ì ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ -r ¦¢ Àб⠰¡´ÉÇÑ°¡? ¦¢ ¦¢ -w ¦¢ ¾²±â °¡´ÉÇÑ°¡? ¦¢ ¦¢ -x ¦¢ ½ÇÇà °¡´ÉÇÑ°¡? ¦¢ ¦¢ -e ¦¢ È­ÀÏÀÌ Á¸ÀçÇϴ°¡? ¦¢ ¦¢ -o ¦¢ È­ÀÏÀÇ ¼ÒÀ¯ÀÚ(Owner)Àΰ¡? ¦¢ ¦¢ -z ¦¢ È­ÀÏÀÌ Zero sizeÀΰ¡? ¦¢ ¦¢ -f ¦¢ ÀÏ¹Ý È­ÀÏÀΰ¡? ¦¢ ¦¢ -d ¦¢ µð·ºÅ丮Àΰ¡? ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ´ÙÀ½Àº È­ÀÏ »óÅ ¿¬»êÀÚ¸¦ »ç¿ëÇÏ´Â ¿¹Á¦ÀÌ´Ù. % ls -l file* -rwxr-xr-x 1 hpt 200 14 Dec 6 09:19 fileA -rwxr-xr-x 1 hpt 200 14 Dec 6 09:19 fileB -rw-r--r-- 1 hpt 200 14 Dec 6 09:20 fileC # ´ÙÀ½ ¿¹¿¡¼­´Â fileCÀÇ Á¸Àç ¿©ºÎ¸¦ ÆÇ´ÜÇÏ´Â Á¶°Ç¹®ÀÌ ÁöÁ¤µÇ¾î ÀÖ´Ù. # ÂüÀÏ °æ¿ì¿¡´Â echo ¸í·É¹®À» ½ÇÇàÇÑ´Ù. %if (-e fileC) echo TRUE TRUE # ´ÙÀ½ ¿¹¿¡¼­´Â fileCÀÇ Á¸Àç¿©ºÎ¿Í ½ÇÇà°¡´ÉÀ» ÆÇ´ÜÇÏ´Â Á¶°Ç¹®ÀÌ # AND Á¶°ÇÀ¸·Î ¿¬°áµÇ¾î ÀÖ´Ù. ±×·¯³ª À§ÀÇ ls ¸í·ÉÀÇ °á°ú¸¦ º¸¸é ¾Ë¼ö # ÀÖµíÀÌ fileC¿¡´Â ½ÇÇà ±ÇÇÑÀÌ ºÎ¿©µÇÁö ¾Ê¾Æ °ÅÁþ ó¸®µÉ °ÍÀÌ´Ù. # µû¶ó¼­ ÈļӵǴ echo ¸í·ÉÀ» ½ÇÇàÇÏÁö ¾Ê´Â´Ù. % if (-e fileC && -x fileC) echo true % --------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­´Â C Shell¿¡¼­ÀÇ Á¶°Ç Á¦¾î¹®¿¡ ´ëÇØ °­ÀÇÇÕ´Ï´Ù. --------------------------------------------------------------------------- #148 À¯´Ï½Ã½º (adunis2 ) C ShellÀÇ Á¶°Ç Á¦¾î¹®: if 07/09 12:50 104 line C ShellÀÇ Á¶°Ç Á¦¾î¹®: if -------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ»çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. -------------------------------------------------------------------- 1. Á¶°Ç Á¦¾î¹® if Á¦¾î¹®³»ÀÇ Ç¥Çö½Ä(Expression)Àº Ç¥Çö½Ä ¿¬»êÀÚ ¶Ç´Â ¼ýÀÚ¸¦ »ç¿ëÇÑ Ç¥Çö½ÄÀ̾î¾ß¸¸ ÇÑ´Ù. Á¶°Ç Ç¥Çö½ÄÀ¸·Î½á À¯´Ð½º ¸í·É¾î¸¦»ç¿ëÇϱâ À§Çؼ­´Â ¹Ýµå½Ã Áß°ýÈ£({})·Î ¹­¾îÁÖ¾î¾ß ÇÑ´Ù. Ç¥Çö½ÄÀÌ Áß°ýÈ£·Î µÑ·¯½×¿© ÀÖÀ» °æ¿ì¿¡, Ç¥Çö½ÄÀ¸·Î ÁöÁ¤µÈ ¸í·É¾îÀÇ ½ÇÇàÈÄ Á¾·á»óÅ°¡ 0ÀÏ °æ¿ì¿¡´Â Âü(Non-zero)ÀÇ °ªÀ» µ¹·ÁÁÖ¸ç, Á¾·á»óÅ°¡ 0ÀÌ ¾Æ´Ñ °æ¿ì¿¡´Â °ÅÁþ(zero) °ªÀ» µ¹·ÁÁØ´Ù. ¶ÇÇÑ ÆÄÀÌÇÁ(pipe)¿Í ¹æÇâÀüȯ(Redirection) ½Éº¼À» »ç¿ëÇÏ´Â ¸í·É¾î´Â ¹Ýµå½Ã ½©¿¡°Ô ÆÄÀÌÇÁ¿Í ¹æÇâÀüȯÀÇ ¹üÀ§¸¦ ¾Ë·ÁÁÖ±â À§Çؼ­ µÕ±Ù°ýÈ£·Î µÑ·¯½×¾Æ¾ß ÇÑ´Ù. ´ÙÀ½Àº C Shell¿¡¼­ ½© ÇÁ·Î±×·¥À» ÀÛ¼ºÇÒ¶§ »ç¿ë°¡´ÉÇÑ Á¶°ÇÁ¦¾î¹®ÀÇ Çü½ÄÀ» º¸¿©ÁØ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ if (expression) command ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ if (expression) then ¦¢ ¦¢ command(s) ¦¢ ¦¢ endif ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ if (expression) then ¦¢ ¦¢ command(s) ¦¢ ¦¢ else ¦¢ ¦¢ command(s) ¦¢ ¦¢ endif ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ if (expression) then ¦¢ ¦¢ command(s) ¦¢ ¦¢ else if (expression) then ¦¢ ¦¢ command(s) ¦¢ ¦¢ else if (expression) then ¦¢ ¦¢ command(s)... ¦¢ ¦¢ else ¦¢ ¦¢ command(s) ¦¢ ¦¢ endif ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ´ÙÀ½Àº Á¶°Ç Á¦¾î¹®À» »ç¿ëÇÑ C Shell ÇÁ·Î±×·¥ÀÇ ¿¹ÀÌ´Ù. -. ´ÙÀ½ ¿¹Á¦´Â ½© ÇÁ·Î±×·¥ ½ÇÇà ¿ä±¸½Ã »ç¿ëÀÚ°¡ Á¦°øÇÑ ÀÎÀÚ¸¦ ½© ÇÁ·Î±×·¥¿¡¼­ º¯°æÇÏ´Â °£´ÜÇÑ ¹æ½ÄÀ» º¸¿©ÁÖ´Â ¿¹Á¦ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢myprog ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢# C Shell script ¦¢ ¦¢ ¦¢ ¦¢if ($1 < 0) @ argv[1] = $1 * -1 # ÀÎÀÚ°¡ À½¼öÀÏ °æ¿ì -1À»¦¢ ¦¢echo $1 # °öÇؼ­, ¾ç¼ö·Î º¯È¯. ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ % myprog -5 # »ç¿ëÀÚ´Â -5¸¦ ÀÎÀÚ·Î Á¦°øÇßÀ¸³ª ÇÁ·Î±×·¥¿¡¼­ 5 # ÀÌ ÀÎÀÚ¿¡ -1À» °öÇÔÀ¸·Î½á °á°ú°¡ 5·Î Ãâ·ÂµÇ°í ÀÖ´Ù. -. ´ÙÀ½ ¿¹´Â »ç¿ëÀÚ°¡ ÀÎÀڷνá Á¦°øÇÒ »ç¿ëÀÚ ½Äº°¸í(User-id)À» who ¸í·É¾îÀÇ °á°ú¿¡¼­ grep ¸í·É¾î¸¦ ÅëÇØ ·Î±×ÀÎ ¿©ºÎ¸¦ È®ÀÎÇÑÈÄ, grep ¸í·É¾îÀÇ °á°ú´Â Null ó¸®ÇÏ°í, »ç¿ëÀÚ ·Î±×ÀÎ ¿©ºÎ¿¡ µû¶ó ±×¿¡ »óÀÀÇÑ echo ¸Þ¼¼Áö¸¦ Ç¥½ÃÇÏ´Â ÇÁ·Î±×·¥ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢myprog ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢# C Shell script ¦¢ ¦¢# ¦¢ ¦¢if ({(who | grep "^$argv[1] " >& /dev/null)}) then <---(1) ¦¢ echo $argv[1] is on the system ¦¢ ¦¢else ¦¢ ¦¢ echo $argv[1] is NOT on the system ¦¢ ¦¢endif ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ %myprog user user is on the system # user¶ó´Â »ç¿ëÀÚ°¡ ·Î±×ÀÎÇÏ°í ÀÖÀ» °æ¿ìÀÇ Ãâ·Â. À§ÀÇ ¿¹¿¡¼­ (1)·Î ÁöÁ¤µÈ ¶óÀο¡´Â µÕ±Ù°ýÈ£,Áß°ýÈ£,µÕ±Ù°ýÈ£¼øÀ¸·Î º¹ÀâÇÏ°Ô ¹­¿© Àִµ¥ ±×¸¦ ºÐ¼®ÇÏ¸é ´ÙÀ½°ú °°´Ù. ({(who | grep "^$argv[1] " >& /dev/null)}) °¡Àå ¿Ü°ûÀÇ µÕ±Ù °ýÈ£ : Ç¥Çö½ÄÀ» ±¸º°Çϱâ À§ÇÑ ÁöÁ¤. °¡¿îµ¥ Áß°ýÈ£ : À¯´Ð½º ¸í·É¾î¸¦ Ç¥Çö½ÄÀ¸·Î ÁöÁ¤ÇßÀ½À¸·Î ÁöÁ¤. °¡Àå ¾ÈÂÊÀÇ µÕ±Ù°ýÈ£ : ÀÔÃâ·Â ¹æÇâÀüȯÀ» »ç¿ëÇÔÀ¸·Î½áÀÇ ÁöÁ¤. --------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­´Â C ShellÀÇ foreach, while, switch Á¦¾î¹®¿¡ ´ëÇØ °­ÀÇÇÕ´Ï´Ù. --------------------------------------------------------------------------- #149 À¯´Ï½Ã½º (adunis2 ) C ShellÀÇ Á¦¾î¹®: foreach,while,switch 07/09 12:51 163 line C ShellÀÇ Á¦¾î¹®: foreach, while, switch -------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ»çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. -------------------------------------------------------------------- 1. foreach Á¦¾î¹® C Shell¿¡¼­ Á¦°øÇÏ´Â foreach Á¦¾î¹®Àº Bourne/Korn Shell¿¡¼­ Á¦°øÇÏ´Â for Á¦¾î¹®°ú µ¿ÀÏÇÑ ÀÛ¾÷À» ¼öÇàÇÏ´Â Á¦¾î¹®ÀÌ´Ù. foreach Á¦¾î¹®ÀÇ Çü½ÄÀº ´ÙÀ½°ú °°´Ù. foreach name (wordlist) command(s) end ´ÙÀ½Àº foreach Á¦¾î¹®ÀÇ »ç¿ë¿¹ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ foreach ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ # C Shell script ¦¢ ¦¢ ¦¢ ¦¢ foreach var ( `ls` ) # ÀÌ ÇÁ·Î±×·¥Àº ls ¸í·ÉÀÇ ½ÇÇà°á°ú ¦¢ ¦¢ file $var # Ãâ·ÂµÇ´Â È­ÀϸíµéÀ» ÀÔ·ÂÀ¸·Î ÇÏ¿© ¦¢ ¦¢ end # È­ÀÏÁ¾·ù¸¦ È®ÀÎÇÏ´Â ÀÛ¾÷À» ¼öÇà. ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ % myprog file1: commands text file2: commands text file7: ascii text prog.c: c program text 2. while Á¦¾î¹® while ·çÇÁ Á¦¾î¹®Àº »çÀü¿¡ Á¶°ÇÀ» ÆÇ´ÜÇÒ Ç¥Çö½ÄÀÇ °Ë»ç Ƚ¼ö¸¦ ¾Ë¼ö¾ø´Â »óȲ¿¡¼­ »ç¿ëÇÑ´Ù. Áï, ·çÇÁ¸¦ ¹Ýº¹ÇÒ È½¼ö¸¦ ¾Ë¼ö¾ø´Â °æ¿ì, ÁÖ¾îÁø Ç¥Çö½ÄÀÇ Âü°ú °ÅÁþÀÇ »óÅ¿¡µû¶ó ·çÇÁÀÇ È½¼ö¸¦ Á¦¾îÇϱâ À§ÇØ »ç¿ëÇÑ´Ù. while ·çÇÁ´Â Ç¥Çö½ÄÀÇ °á°ú°¡ °ÅÁþÀ϶§±îÁö ·çÇÁ¸¦ ¼öÇàÇÑ´Ù. while Á¦¾î¹®ÀÇ Çü½ÄÀº ´ÙÀ½°ú °°´Ù. while (expression) command(s) end ´ÙÀ½Àº while Á¦¾î¹®ÀÇ »ç¿ë¿¹ÀÌ´Ù. -. ´ÙÀ½ ¿¹´Â Á÷Àü¿¡ ¼Ò°³ÇÑ foreach Á¦¾î¹®ÀÇ ¿¹Á¦¿Í µ¿ÀÏÇÑ ÀÛ¾÷À» ¼öÇàÇÑ´Ù. ´Ü Á÷ÀüÀÇ ¿¹¿¡¼­´Â ls ¸í·É¾îÀÇ ½ÇÇàÀ» ÇÁ·Î±×·¥³»¿¡¼­ ¼öÇàÇßÁö¸¸, ÀÌ ¿¹¿¡¼­´Â »ç¿ëÀÚ°¡ ÇÁ·Î±×·¥À» ½ÇÇà ¿ä±¸ÇÒ¶§ ls ¸í·É¾îÀÇ ½ÇÇà °á°ú¸¦ ÀÎÀÚ·Î Á¦°øÇϵµ·Ï ó¸®ÇÑ Á¡ÀÌ ´Ù¸£´Ù. ÀÌ ÇÁ·Î±×·¥¿¡¼­´Â Á¦°øÇÑ ÀÎÀÚÀÇ ¼ö°¡ 0º¸´Ù Å©¸ç, nÀ¸·Î ÁöÁ¤ÇÑ ·çÇÁ Ä«¿îÅÍ°¡ ÀÎÀÚÀÇ ¼öº¸´Ù ÀûÀº µ¿¾È¿¡, ÀÎÀÚ·Î Á¦°øµÈ È­ÀÏÀÇ Á¾·ù¸¦ È®ÀÎÇϱâ À§ÇÑ file ¸í·É¾î¸¦ ½ÇÇàÇÏ°í, ·çÇÁ Ä«¿îÅ͸¦ Çϳª¾¿ Áõ°¡½ÃÅ°´Â ÀÛ¾÷À» ¹Ýº¹ ¼öÇàÇÑ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ myprog ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ # C Shell script ¦¢ ¦¢ ¦¢ ¦¢ set n = 1 ¦¢ ¦¢ while ($#argv > 0 && $n <= $#argv) ¦¢ ¦¢ file $argv[$n] ¦¢ ¦¢ @ n++ <---------- ·çÇÁ Ä«¿îÅ͸¦ Çϳª Áõ°¡. ¦¢ ¦¢ end ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ % myprog `ls` <---- ¸í·É¾î ´ëÄ¡¸¦ ÀÌ¿ëÇÏ¿© ÀÎÀÚ¸¦ Á¦°øÇÏ°í ÀÖ´Ù. file1: commands text file2: commands text file7: ascii text prog.c: c program text -. ´ÙÀ½ ¿¹´Â Á÷Àü °­ÀÇ¿¡¼­ ¼Ò°³Çß´ø if Á¦¾î¹®ÀÇ ¿¹Á¦¿Í µ¿ÀÏÇÑ ±â´ÉÀ» ¼öÇàÇÏ´ÂÇÁ·Î±×·¥ÀÌ´Ù. ÀÌ ÇÁ·Î±×·¥¿¡¼­´Â »ç¿ëÀÚ°¡ ·Î±×ÀÎ µÇ¾î ÀÖÁö ¾ÊÀ¸¸é, Á¶°ÇÀÌ ÂüÀ̵Ǿî sleep ¸í·É¾î¸¦ ¼öÇàÇÑÈÄ 2ÃÊ°£ ´ë±âÇÑÈÄ ´Ù½Ã ·çÇÁ¸¦ ¼öÇàÇÑ´Ù. ÀÌÈÄ »ç¿ëÀÚ°¡ ·Î±×ÀÎÀ» ¼öÇàÇϸé Á¶°ÇÀÌ °ÅÁþÀÌ µÇ¾î ·çÇÁ¸¦ Á¾·áÇÑ´Ù. (Ç¥Çö½Ä¿¡ !°¡ ÁöÁ¤µÇ¾î ÀÖÀ½À¸·Î ÀÎÇØ ÆÇ´Ü °á°ú°¡ ¹Ý´ë·Î 󸮵DZ⠶§¹®ÀÌ´Ù.) ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ myprog ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ # C shell script ¦¢ ¦¢ ¦¢ ¦¢ while ( !{(who | grep "^$argv[1] " >& /dev/null)} ) ¦¢ ¦¢ sleep 2 ¦¢ ¦¢ end ¦¢ ¦¢ echo $argv[1] just logged on the system ¦¢ ¦¢ ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ % myprog hpt hpt just logged on the system <---- »ç¿ëÀÚ°¡ ·Î±×ÀÎ ÇÏ¿´À»¶§ Ç¥½ÃµÇ´Â ¸Þ¼¼ÁöÀÌ´Ù. 3. switch Á¦¾î¹® C ShellÀÇ switch Á¦¾î¹®Àº Bourne/Korn Shell¿¡¼­ Á¦°øÇÏ´Â case Á¦¾î¹®°ú µ¿ÀÏÇÑ ±â´ÉÀ» ¼öÇàÇÑ´Ù. switch Á¦¾î¹®ÀÇ Çü½ÄÀº ´ÙÀ½°ú °°´Ù. switch (string) case pattern1: command(s) breaksw case pattern2: command(s) breaksw case pattern3: command(s) breaksw ... default: command(s) breaksw endsw ´ÙÀ½Àº switch Á¦¾î¹®ÀÇ »ç¿ë¿¹ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ prog ¦¢ ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ # C Shell script ¦¢ ¦¢ ¦¢ ¦¢ switch ($1) ¦¢ ¦¢ case 1: ¦¢ ¦¢ echo one ¦¢ ¦¢ breaksw ¦¢ ¦¢ case 3: ¦¢ ¦¢ echo three ¦¢ ¦¢ breaksw ¦¢ ¦¢ case 5: ¦¢ ¦¢ echo five ¦¢ ¦¢ breaksw ¦¢ ¦¢ case 7: ¦¢ ¦¢ echo seven ¦¢ ¦¢ breaksw ¦¢ ¦¢ case 9: ¦¢ ¦¢ echo nine ¦¢ ¦¢ breaksw ¦¢ ¦¢ default: ¦¢ ¦¢ echo Please enter an odd number 1 - 9. ¦¢ ¦¢ breaksw ¦¢ ¦¢ endsw ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ À§ ¿¹Á¦ ÇÁ·Î±×·¥Àº ÇÁ·Î±×·¥ ½ÇÇà ¿ä±¸½Ã »ç¿ëÀÚ°¡ Á¦°øÇÑ Ã¹¹ø° ÀÎÀÚ°¡ ¹«¾ùÀ̳Ŀ¡ µû¶ó¼­ ±×¿¡ »óÀÀÇÏ´Â echo ¸Þ¼¼Áö¸¦ Ç¥½ÃÇϵµ·Ï ÀÛ¼ºÇÑ ÇÁ·Î±×·¥ÀÌ´Ù. ¸¸ÀÏ »ç¿ëÀÚ°¡ Á¦°øÇÑ ÀÎÀÚ°¡ 1,3,5,7,9°¡ ¾Æ´Ñ°æ¿ì¿¡´Â default·Î 󸮵Ǿî "Please enter an odd number 1 - 9"¶ó´Â ¸Þ¼¼Áö°¡ Ç¥½ÃµÇµµ·Ï ÀÛ¼ºµÇ¾î ÀÖ´Ù. --------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­´Â C ShellÀÇ ±âŸ Á¦¾î¹®¿¡ ´ëÇØ °­ÀÇÇÕ´Ï´Ù. --------------------------------------------------------------------------- #150 À¯´Ï½Ã½º (adunis2 ) C ShellÀÇ ±âŸ Á¦¾î¹® 07/09 12:52 105 line C ShellÀÇ ±âŸ Á¦¾î¹® -------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ»çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. -------------------------------------------------------------------- C ShellÀº ÇÁ·Î±×·¥ÀÇ È帧À» º¯°æÇÏ´Â ±â´ÉÀ» Á¦°øÇÏ´Â break, continue, goto¶ó´Â 3°¡Áö ºÎ°¡ÀûÀÎ Á¦¾î¹®À» Á¦°øÇÑ´Ù. À̵éÁß break¿Í continue ¸í·É¾î´Â ·çÇÁ¿¡¼­¸¸ ÁöÁ¤ °¡´ÉÇϸç, goto Á¦¾î¹®Àº ÇÁ·Î±×·¥ÀÇ ¾î´À °÷¿¡³ª ÁöÁ¤ °¡´ÉÇÏ´Ù. 1. break Á¦¾î¹® break ¸í·É¾î´Â ·çÇÁ¸¦ ¹þ¾î³ªµµ·Ï ÇØÁÖ´Â Á¦¾î¹®ÀÌ´Ù. break ¸í·É¾î¸¦ »ç¿ëÇÏ¿© while ·çÇÁ¸¦ ¹þ¾î³ª´Â ¿¹´Â ´ÙÀ½°ú °°´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢while ({true}) ¦¢ ¦¢ if ({( who | grep $argv[1] >& /dev/null)}) then ¦¢ ¦¢ break <----- »ç¿ëÀÚ°¡ ·Î±×ÀεǾî ÀÖ´Â °æ¿ì ·çÇÁ¸¦ Á¾·áÇÑ´Ù. ¦¢ else ¦¢ ¦¢ sleep 2 ¦¢ ¦¢ endif ¦¢ ¦¢end ¦¢ ¦¢echo $argv[1] just logged on the system ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ 2. goto Á¦¾î¹® ÇÁ·Î±×·¥¿¡¼­ »ç¿ëÀÚ°¡ ÁöÁ¤ÇÑ ·¹À̺í(label)·Î Á¦¾î¸¦ ¿Å°ÜÁÖ´Â Á¦¾î¹®À¸·Î, ½©Àº ÁöÁ¤ÇÑ ·¹À̺íÀÌ ÀÖ´Â ´ÙÀ½¶óÀκÎÅÍ ÇÁ·Î±×·¥ ½ÇÇàÀ» °è¼ÓÇÑ´Ù. ´ÙÀ½Àº while ±¸¹®À» »ç¿ëÇÏÁö ¾Ê°í, while ±¸¹®°ú µ¿ÀÏÇÑ ÀÛ¾÷À» ¼öÇàÇϵµ·Ï goto ±¸¹®À» »ç¿ëÇÏ¿© ÀÛ¼ºÇÑ ÇÁ·Î±×·¥ ¿¹Á¦ÀÌ´Ù. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ point1: <----- ·¹À̺íÀ» ¼±¾ðÇÏ°í ÀÖ´Ù. ¦¢ ¦¢ if ({(who | grep "^$argv[1]" >& /dev/null)}) then ¦¢ ¦¢ goto point2 ¦¢ ¦¢ else ¦¢ ¦¢ sleep 2 ¦¢ ¦¢ goto point1 ¦¢ ¦¢ endif ¦¢ ¦¢ point2: <------ ·¹À̺íÀ» ¼±¾ðÇÏ°í ÀÖ´Ù. ¦¢ ¦¢ echo $argv[1] just logged on the system ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ 3. continue Á¦¾î¹® continue Á¦¾î¹®Àº ÇöÀç ¼öÇàÁßÀÎ ·çÇÁ¿¡ ÀÇÇØ ¼öÇàµÇ¾î¾ßÇÒ ¸í·É¹®µéÀº ¼öÇàÇÏÁö ¾Ê°í, ´ÙÀ½ ·çÇÁ·Î °Ç³Ê ¶Ù°íÀÚ ÇÒ¶§ »ç¿ëÇÑ´Ù. ´ÙÀ½Àº continue Á¦¾î¹®ÀÇ »ç¿ëÇü½ÄÀÌ´Ù. while (expression1) if (expression2) continue command(s) endif end <-- if Á¶°ÇÀÌ ÂüÀÏ °æ¿ì¿¡´Â continue¸í·É¿¡ ÀÇÇؼ­ if¹®¿¡ µÚµû¸£´Â ¸í·É¾îµéÀ» ½ÇÇàÇÏÁö ¾Ê°í, while ·çÇÁ¸¦ °è¼ÓÇÏ¿© ¼öÇàÇÑ´Ù. ½ÇÇàÇÏÁö ¾Ê°í 4. C Shell ÇÁ·Î±×·¥ ÀÛ¼ºÀÇ Ãß°¡»çÇ×(Tip) -. C Shell¿¡¼­µµ Bourne Shell¿¡¼­¿Í µ¿ÀÏÇÑ ±â´ÉÀ» ¼öÇàÇÏ´Â fork, exec, wait ±×¸®°í exit ¸í·É¾î¸¦ Á¦°øÇÑ´Ù. . fork ÇöÀç ½ÇÇàÁßÀÎ ÇÁ·Î¼¼½º¿Í µ¿ÀÏÇÑ ÇÁ·Î¼¼½º¸¦ º¹»çÇÑ´Ù. »õ·Ó°Ô »ý¼ºµÇ´Â ÇÁ·Î¼¼½º´Â ºÎ¸ð ÇÁ·Î¼¼½ºÀÇ PID¸¦ Á¦¿ÜÇÑ ¸ðµç Ư¼ºÀ» »ó¼ÓÇÑ´Ù. . exec ÁöÁ¤ÇÑ ÇÁ·Î±×·¥À» ÇöÀç ½ÇÇàÁßÀÎ ÇÁ·Î¼¼½º¸¦ ´ëÄ¡ÇÏ¿© ¼öÇàÇÑ´Ù. ±âÁ¸ ÇÁ·Î¼¼½ºÀÇ PID, ȯ°æ º¯¼ö, Open fileµîÀ» ±×´ë·Î À¯ÁöÇÑ´Ù. -. ÀÛ¼ºÇÑ ½© ÇÁ·Î±×·¥À» C Shell¿¡¼­ ¼öÇàµÇµµ·Ï ÇÏ°íÀÚÇÏ´Â °æ¿ì¿¡´Â csh ¸í·É¾î¸¦ »ç¿ëÇÏ¿© ½© ÇÁ·Î±×·¥À» ½ÇÇàÇÑ´Ù. ±×·¸Áö ¾ÊÀ» °æ¿ì¿¡´Â µðÆúÆ® ½©ÀÎ Bourne Shell¿¡¼­ ¼öÇàµÈ´Ù. csh scriptname -. Bourne Shell¿¡¼­ Á¦°øÇÏ´Â read ¸í·É¾î¸¦ C Shell ÇÁ·Î±×·¥³»¿¡¼­ »ç¿ëÇÏ°íÀÚ ÇÏ´Â °æ¿ì¿¡´Â, C Shell¿¡¼­´Â read ¸í·É¾î¸¦ Á¦°øÇÏÁö ¾Ê±â¶§¹®¿¡ ´ÙÀ½°ú °°ÀÌ read ¸í·É¾î¸¦ alias·Î ¼±¾ðÇÏ¿© »ç¿ëÇÑ´Ù. alias read 'set \!*=($<)' -. C Shell¿¡¼­ Á¦°øÇÏ´Â echo ¸í·É¾î¿¡¼­´Â Bourne Shell¿¡¼­ÀÇ echo ¸í·É¾î¿Í °°ÀÌ \ ¿É¼ÇÀ» Á¦°øÇÏÁö ¾Ê´Â´Ù. µû¶ó¼­ C Shell¿¡¼­ \ ¿É¼Ç ±â´ÉÀ» »ç¿ëÇϱâ À§Çؼ­´Â ´ÙÀ½°ú °°ÀÌ echo ¸í·É¾îÀÇ Àý´ë °æ·Î¸íÀ» ÁöÁ¤ÇÏ´Â ¹æ½ÄÀ» »ç¿ëÇØ¾ß ÇÑ´Ù. (\ ¿É¼Ç¿¡ ´ëÇؼ­´Â ÀÌÀü Bourne/Korn Shell °­ÀǸ¦ Âü°íÇϱ⠹ٶõ´Ù.) /bin/echo "Please enter your first name: \c" read name1 (Âü°í) \c ¿É¼Ç°ú µ¿ÀÏÇÑ ±â´ÉÀ» ¼öÇàÇϵµ·Ï ÁöÁ¤ÇÑ ¶Ç´Ù¸¥ ¿¹ echo -n "Please enter your last name: " read name2 --------------------------------------------------------------------------- ¿©·¯ºÐ °¨»çÇÕ´Ï´Ù. À̹ø °­ÀǸ¦ ³¡À¸·Î UNIX Shell Programming °úÁ¤ÀÌ ³¡³µ½À´Ï´Ù. ´ÙÀ½ °­ÀǺÎÅÍ´Â À¯´Ð½º °ü¸®ÀÚ °úÁ¤ °­ÀÇ°¡ °è¼ÓµË´Ï´Ù. --------------------------------------------------------------------------- #151 À¯´Ï½Ã½º (adunis2 ) Åë½Å°­ÀÇ ¼ö°­ÀÚ ¿©·¯ºÐ²² !!! 07/09 12:53 38 line -------------------------------------------------- À¯´Ð½º Åë½Å°­Á ¼ö°­»ý ¿©·¯ºÐ²² µå¸®´Â ±Û -------------------------------------------------- À¯´Ð½º Åë½Å°­Á ¼ö°­ÀÚ ¿©·¯ºÐ²² Áø½ÉÀ¸·Î °¨»çµå¸³´Ï´Ù. ±×µ¿¾È ²ÙÁØÈ÷ Åë½Å°­ÀǸ¦ ¼ö°­ÇϽŠºÐµé²²¼­´Â ÀÌÁ¦ À¯´Ð½º Àü¹® »ç¿ëÀڷμ­ÀÇ Áö½ÄÀº ÃæºÐÈ÷ ½ÀµæÇϼÌÀ» °ÍÀÔ´Ï´Ù. ÀÌÁ¦ À¯´Ð½º¸¦ ¿î¿µÃ¼Á¦·ÎÇÏ´Â ½Ã½ºÅÛÀ» Á¢ÇϽôõ¶óµµ ÀÚ½ÅÀÖ°Ô À¯´Ð½º¸¦ ÀÌ¿ëÇÑ ÀÛ¾÷À» ÇϽǼö ÀÖÀ» °Ì´Ï´Ù. ÀÌÁ¦ À¯´Ð½º Åë½Å°­Á¿¡¼­´Â ¼ö°­ÀÚ ¿©·¯ºÐµéÀ» À¯´Ð½ºÀÇ ÀÏ¹Ý »ç¿ëÀÚ°¡ ¾Æ´Ñ, °ü¸®ÀÚ(Administrator)ÀÇ À§Ä¡¿¡ ¿À¸£½Ç¼ö ÀÖµµ·Ï À¯´Ð½º °ü¸®ÀÚ °­ÀǸ¦ ½ÃÀÛÇÕ´Ï´Ù. À¯´Ð½º °ü¸®ÀÚ °úÁ¤À» ½ÃÀÛÇÔ¿¡ À־ ¸î°¡Áö ¾Ë·Áµå¸± »çÇ×ÀÌ ÀÖ½À´Ï´Ù. -. À¯´Ð½º °ü¸®ÀÚ °úÁ¤Àº ÀÌÀü °úÁ¤°ú ´Þ¶ó¼­ Çѹø °­ÀǸ¦ ÁغñÇϴµ¥ ¿À·£ Áغñ ±â°£ÀÌ ÇÊ¿ä·Î ÇÕ´Ï´Ù. ÀÌ·ÎÀÎÇØ °ü¸®ÀÚ °úÁ¤Àº ºü¸£¸é "1ÁÖÀÏ¿¡ Çѹø", ´ÊÀ¸¸é "2ÁÖÀÏ¿¡ Çѹø" Á¤µµ·Î °­Àǵ˴ϴÙ. ¿©·¯ºÐµé²² º¸´Ù Ãæ½ÇÇÑ °­ÀǸ¦ ÅëÇØ ÀÌÇظ¦ ±¸Çϵµ·Ï ÇÏ°Ú½À´Ï´Ù. -. ¾î´À µ¶ÀÚ²²¼­ °­Á ³»¿ëÀÇ ¶óÀ̼¾½º(license)¿¡ ´ëÇØ ¹®ÀÇÇϼ̴µ¥, ÀÌ °­Á´ Çѱ¹ À¯´Ï½Ã½º¿¡¼­ "À¯´Ð½º °³ÀÎ »ç¿ëÀÚ"¿Í "À¯´Ï½Ã½º U6000 ½Ã½ºÅÛ »ç¿ëÀÚ"µéÀ» À§ÇØ Á¦°øÇÏ´Â °­ÁÂÀÓÀ¸·Î, ¾î¶°ÇÑ »ó¾÷Àû ¸ñÀûÀÇ »ç¿ë(¹«´Ü º¹»ç ¹èÆ÷¹× ±³À°¿ë ±³Àç·ÎÀÇ ¹«´Ü »ç¿ëµî..)Àº ±ÝÁöµÈ´Ù´Â °ÍÀ» ¹àÇôµÓ´Ï´Ù. -. »õ·Î À¯´Ð½º Åë½Å°­Á¸¦ ¼ö°­ÇϽô ºÐµé²² µå¸®´Â ±Û. Åë½Å°­Á¸¦ ¾ðÁ¦ºÎÅÍ ¼ö°­Çϼ̴°¡´Â ±×·¸°Ô Áß¿äÇÏÁö ¾Ê½À´Ï´Ù. ¾ó¸¶³ª ²ÙÁØÈ÷ Åë½Å°­Á¸¦ ÇнÀÇϼ̴°¡°¡ Áß¿äÇÕ´Ï´Ù. °Ô½ÃµÇ¾î ÀÖ´Â °­Á¸¦ ÇÏ·çÇÏ·ç ²ÙÁØÈ÷ ÇнÀÇϽŴٸé, ºü¸¥ ½ÃÀϳ»¿¡ Å« È¿°ú¸¦ º¸½Ç¼ö ÀÖÀ» °Ì´Ï´Ù. ´Ù½ÃÇѹø À¯´Ð½º Åë½Å °­Á ¼ö°­»ý ¿©·¯ºÐ²² °¨»çµå¸³´Ï´Ù. ================== À¯´Ð½º Åë½Å°­Á ÁøÇàÀÚ µå¸² ============================ #152 À¯´Ï½Ã½º (adunis2 ) °ü¸®ÀÚ °úÁ¤ »çÀüÁö½Ä Á¡°Ë ¹®Á¦ 07/15 10:45 229 line <<À¯´Ð½º °ü¸®ÀÚ °úÁ¤ °­ÀÇ ¼ö°­À» À§ÇÑ ¿¹ºñÁö½Ä Á¡°Ë ¹®Á¦>> ---------------------------------------------------------------------------- ´ÙÀ½¿¡ µå¸®´Â ¹®Á¦µéÀº À¯´Ð½º °ü¸®ÀÚ °úÁ¤ ¼ö°­À» À§Çؼ­ ¹Ýµå½Ã ¾Ë°í °è¼Å¾ßÇÏ´Â »çÇ×µéÀ» ¹®Á¦ Çü½ÄÀ¸·Î Á¡°ËÇÏ´Â ¹®Á¦ÀÔ´Ï´Ù. ¸¸ÀÏ ÀÌÇØ°¡ ¾ÈµÇ´Â ¹®Á¦°¡ ÀÖÀ¸½Ç °æ¿ì¿¡´Â ÇØ´ç »çÇ׿¡´ëÇØ ¼Ò°³µÈ ÀÌÀü °­ÀǸ¦ ´Ù½ÃÇѹø È®ÀÎÇϽñ⸦ ¹Ù¶ø´Ï´Ù. À̵鿡 ´ëÇؼ­´Â °ü¸®ÀÚ °úÁ¤ °­ÀÇ¿¡¼­´Â º°µµ ¼³¸íÇÏÁö ¾Ê±â ¶§¹®¿¡, ²À È®ÀÎÇصνñ⸦ ºÎŹµå¸³´Ï´Ù. ---------------------------------------------------------------------------- 1. È­ÀÏÀÇ Á¢±Ù±ÇÇÑ(Permission)À» º¯°æÇϱâ À§ÇØ ÀÌ¿ëÇÒ¼ö ÀÖ´Â ¸í·É¾î´Â? 2. Áö³­ 5ÀÏ°£ ¼öÁ¤µÈ /usr/john µð·ºÅ丮³»ÀÇ ¸ðµç È­ÀϵéÀ» ¸®½ºÆ®ÇÏ´Â ¸í·É¾î ¶óÀÎÀ» ÀÛ¼ºÇϽÿÀ. 3. ÇöÀçÀÇ ÀÛ¾÷ µð·ºÅ丮³»ÀÇ ¸ðµç È­ÀϵéÀÇ È­ÀÏ Á¾·ù¸¦ È®ÀÎÇÏ´Â ¸í·É¾î ¶óÀÎÀ» ÀÛ¼ºÇϽÿÀ. 4. ÇöÀç ½Ã½ºÅÛ»ó¿¡ ½ÇÇàÁßÀÎ ¸ðµç ÇÁ·Î¼¼½ºµéÀ» ¸®½ºÆ®ÇÏ´Â ¸í·É¾î ¶óÀÎÀ» ÀÛ¼ºÇϽÿÀ. 5. /etc/passwd¶ó´Â È­ÀÏ¿¡¼­ root¶ó´Â ¹®ÀÚ¿­ÀÌ µé¾î ÀÖ´Â ¶óÀÎÀ» °Ë»öÇÏ´Â ¸í·É¾î ¶óÀÎÀ» ÀÛ¼ºÇϽÿÀ. 6. ³»ÀÏ ¾Æħ 10½Ã 15ºÐ¿¡ prog1À̶ó´Â ÇÁ·Î±×·¥ÀÌ ½ÇÇàµÇµµ·Ï ÀÚ¾÷ ¿¹¾àÇÏ´Â ¸í·É¾î ¶óÀÎÀ» ÀÛ¼ºÇϽÿÀ. 7. /etc/passwd È­ÀÏÀº °¢°¢ÀÇ »ç¿ëÀÚ¿¡ ´ëÇÑ Á¤º¸µéÀÎ 7°³ÀÇ Çʵå·Î ±¸¼ºµÇ¾î ÀÖ´Â ¶óÀεéÀÌ µé¾îÀÖ´Ù. ÀÌ È­ÀÏÀÇ °¢°¢ÀÇ Çʵå´Â ¼¼¹ÌÄÝ·ÐÀ¸·Î(;) ±¸º°µÇ¾î ÀÖ´Ù. À̶§ /etc/passwd È­Àϳ» °¢°¢ÀÇ ¶óÀο¡¼­ 3¹ø° Çʵå´Â UID(»ç¿ëÀÚ ½Äº°¹øÈ£)¸¦ ³ªÅ¸³»´Âµ¥, ÀÌ Çʵ带 ±âÁØÀ¸·Î È­ÀÏÀ» Á¤·ÄÇÏ´Â(sort) ¸í·É¾î ¶óÀÎÀ» ÀÛ¼ºÇϽÿÀ. 8. eifelÀ̶ó´ÂÀ¯´Ð½º ½Ã½ºÅÛ»ó¿¡ µî·ÏµÇ¾î ÀÖ´Â johnÀ̶ó´Â »ç¿ëÀÚ¿¡°Ô ¸ÞÀÏÀ» º¸³»±âÀ§ÇÑ ¸í·É¾î ¶óÀÎÀ» ÀÛ¼ºÇϽÿÀ. 9. Áö±Ý ÇöÀç ´ç½ÅÀÌ »ç¿ëÇÏ°í ÀÖ´Â Å͹̳ÎÀÇ ÀåÄ¡ °æ·Î¸íÀ»(Full Device Pathname) Ç¥½ÃÇϱâ À§ÇÑ ¸í·É¾î ¶óÀÎÀ» ÀÛ¼ºÇϽÿÀ. 10. ÇöÀç ½Ã½ºÅÛ ¸íÀ» Ç¥½ÃÇϱâ À§ÇÑ ¸í·É¾î ¶óÀÎÀ» ÀÛ¼ºÇϽÿÀ. 11. prog1À̶ó´Â ÇÁ·Î±×·¥ÀÌ ¹é±×¶ó¿îµå¿¡¼­ ¼öÇàµÇµµ·Ï ÇÏ´Â ¸í·É¾î ¶óÀÎÀ» ÀÛ¼ºÇϽÿÀ. 12. ¹é±×¶ó¿îµå¿¡¼­ ½ÇÇàÁßÀÎ prog1À̶ó´Â ÇÁ·Î±×·¥À» ÁßÁö½ÃÅ°±â À§ÇÑ ¸í·É¾î ¶óÀÎÀ» ÀÛ¼ºÇϽÿÀ. 13. À§¿¡¼­ ÁßÁö½ÃŲ prog1 ÇÁ·Î±×·¥À» ´Ù½Ã ¹é±×¶ó¿îµå¿¡¼­ ½ÇÇàÇϵµ·Ï ÇÏ´Â ¸í·É¾î ¶óÀÎÀ» ÀÛ¼ºÇϽÿÀ. 14. ls -l°ú ls -LÀÇ Â÷ÀÌÁ¡Àº ¹«¾ùÀΰ¡? 15. ´ÙÀ½°ú °°Àº ÀÏ·ÃÀÇ ÀÛ¾÷À» ¼öÇàÇßÀ»¶§ ¹ß»ýÇÏ´Â °á°ú´Â ¹«¾ùÀΰ¡? login:JOE $ $LS a. ´ë¹®ÀÚ·Î ÁöÁ¤µÇ¾î ÀÖ´Â HOME µð·ºÅ丮ÀÇ ¸ðµç È­ÀϵéÀÌ ¸®½ºÆ®µÈ´Ù. b. ¼Ò¹®ÀÚ·Î ÁöÁ¤µÇ¾î ÀÖ´Â HOME µð·ºÅ丮ÀÇ ¸ðµç È­ÀϵéÀÌ ¸®½ºÆ®µÈ´Ù. c. À¯´Ð½º ¸í·É¾î´Â lsÀÌÁö LS°¡ ¾Æ´Ï±â ¶§¹®¿¡ ¿¡·¯°¡ ¹ß»ýÇÑ´Ù. 16. vi ¿¡µðÅͻ󿡼­ ½© ¸í·É¾î¸¦ ½ÇÇàÇϱâ À§ÇÑ ¹æ½ÄÀº(Key sequence)? a. b. <.> c. d. <:> 17. ´ÙÀ½°ú °°Àº ÀÏ·ÃÀÇ ¸í·É¾îµéÀ» ½ÇÇàÇßÀ» °æ¿ìÀÇ ¿Ã¹Ù¸¥ °á°ú´Â? $ls -il file1 742 -rw-rw-r- 1 joe joegrp 33 July 15 14:10 file1 $ln file1 file3 $cat > file1 $ls -il file1 742 -rw-rw-r- 2 joe joegrp 0 July 20 08:11 file1 $ls -il file3 a. 742 -rw-rw-r-- 2 joe joegrp 33 July 20 08:11 file3 b. 743 -rw-rw-r-- 2 joe joegrp 33 July 15 14:10 file3 c. 743 -rw-rw-r-- 2 joe joegrp 0 July 15 14:10 file3 d. 742 -rw-rw-r-- 2 joe joegrp 0 July 20 08:11 file3 18. ´ÙÀ½°ú °°Àº È­ÀÏ ±¸Á¶¸¦ °®°í ÀÖ´Â È­ÀÏ ½Ã½ºÅÛ¿¡¼­ »ç¿ëÀÚ°¡ ÇöÀç DIRA¿¡ ÀÖ´Ù°í ÇßÀ» °æ¿ì, ¸¸ÀÏ »ç¿ëÀÚ°¡ rmdir DIRB¶ó´Â ¸í·É¾î¸¦ ³»·ÈÀ»¶§ÀÇ °á°ú´Â ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ / ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ DIRA <-- »ç¿ëÀÚÀÇ Çö À§Ä¡ ¦¢ ¦¢ ¦¢ ¦¢ ¦£¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¤ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ DIRB DIRC ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦£¦¡¦ª¦¡¦¡¦¡¦¡¦¤ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ fileA fileB ¦¢ ¦¢ ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢a) / ¦¢ ¦¢b) / ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ DIRA ¦¢ ¦¢ DIRA ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦£¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¤ ¦¢ ¦¢ DIRC ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¦¢ DIRB DIRC ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦£¦¡¦ª¦¡¦¡¦¡¦¡¦¤ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ fileA fileB ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢c) / ¦¢ ¦¢d) / ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ DIRA ¦¢ ¦¢ DIRA ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦£¦¡¦¡¦¡¦«¦¡¦¡¦¡¦¤ ¦¢ ¦¢ DIRC ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ fileA fileB DIRC ¦¢ ¦¢ ¦£¦¡¦ª¦¡¦¡¦¤ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ fileA fileB ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ 19. ´ÙÀ½°ú °°Àº È­ÀÏ ±¸Á¶»ó¿¡¼­ »ç¿ëÀÚ°¡ stu1¿¡ À§Ä¡ÇÏ°í ÀÖ´Ù°í °¡Á¤ÇÏ°í, ´ÙÀ½ Áú¹®¿¡ ´äÇϽÿÀ. ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ / ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ work ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦£¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ temp acct ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦£¦¡¦¡¦ª¦¡¦¤ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ stu1 stu2 ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦£¦¡¦ª¦¡¦¡¦¤ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ filea fileb ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ ´ÙÀ½ ¸í·É¾î ¶óÀÎÀ» ³»·ÈÀ»¶§ÀÇ °á°ú´Â ¹«¾ùÀΰ¡? $f="Contains files:";echo `pwd` $f * a. /work/acct/stu1 Contains files: filea fileb b. pwd Contains files: * c. /work/acct/stu1 * d. command line error 20. ´ÙÀ½°ú °°Àº ¸í·É¾î ¶óÀÎÀ» ÀÔ·ÂÇßÀ»¶§ ¾î¶² ÀÏÀÌ ¹ß»ýÇϴ°¡? $prog_A | prog_B a. prog_A ÀÇ ÇÁ·Î±×·¥ Äڵ尡 prog_BÀÇ ÀÔ·ÂÀ¸·Î º¸³»Áø´Ù. b. prog_A ÀÇ Ã⤩·ÂÀÌ prog_BÀÇ ÀÔ·ÂÀ¸·Î º¸³»Áø´Ù. c. prog_A µð·ºÅ丮¹ØÀÇ prog_B°¡ ½ÇÇàµÈ´Ù. 21. hpt¶ó´Â »ç¿ëÀÚ°¡ ownerÀÌ°í, .c¶ó´Â È®ÀåÀÚ°¡ ºÎ¿©µÇ¾î ÀÖ´Â ¸ðµç È­ÀÏÀ» ¸®½ºÆ®ÇÏ´Â find ¸í·É¾î ¶óÀÎÀ» ÀÛ¼ºÇϽÿÀ. ( hpt¶ó´Â ·Î±×ÀÎ À̸§À¸·Î ·Î±×ÀÎÇß´Ù°í °¡Á¤ÇÑ´Ù. ) a. find / -user hpt -name *.c -print b. find $HOME -user hpt -name *.c -print c. find / -user hpt -name \*.c -print d. find $HOME -user hpt -name *.c -print 22. ´ÙÀ½°ú °°Àº ¸í·É¾î ¶óÀÎÀÌ ½ÇÇàµÇ¾úÀ»¶§ÀÇ °á°ú´Â? $cat prog var1=$1.c echo $var1 $sh prog filename a. $1.c b. filename.c c. var1.c d. 1.c 23. ´ÙÀ½°ú °°Àº ½ÇÇà ȯ°æÀÌ ±¸ÃàµÇ¾î ÀÖ´Ù°í ÇßÀ»¶§, $grep PATH /etc/profile PATH=:/bin $grep PATH $HOME/.profile PATH=/usr/bin $mycommand mycommand¶ó´Â ÇÁ·Î±×·¥Àº ¾î´À À§Ä¡¿¡ ÀÖ¾î¾ß ½ÇÇà °¡´ÉÇÑ°¡? a. /usr/bin only b. /bin only c. /usr/bin À̳ª /bin d. ÇöÀçÀÇ ÀÛ¾÷ µð·ºÅ丮 ------------------------------------------------------------------------- ¼ö°íÇϼ̽À´Ï´Ù. ¾Æ¹«·± ¹®Á¦¾øÀÌ ÀÌ ¹®Á¦¸¦ Ç®¾ú´Ù¸é, °ü¸®ÀÚ ±â´É ¼ö°­¿¡ ÀüÇô ¹®Á¦°¡ ¾øÀ» °ÍÀÔ´Ï´Ù. °¨»çÇÕ´Ï´Ù. ------------------------------------------------------------------------- #153 À¯´Ï½Ã½º (adunis2 ) »çÀüÁ¡°Ë ¹®Á¦ ¸ð¹ü ´ä¾È 07/30 10:11 78 line <<À¯´Ð½º °ü¸®ÀÚ °úÁ¤ °­ÀÇ ¼ö°­À» À§ÇÑ ¿¹ºñÁö½Ä Á¡°Ë ¹®Á¦>> ÀÇ ´ä¾È ---------------------------------------------------------------------------- 1. chmod 2. find /usr/john -mtime -5 -print 3. file * 4. ps -ef 5. grep root /etc/passwd 6. at 10:15 /home/userid/prog1 7. sort -t: -n -o/etc/passwd.UID +2 -3 /etc/passwd 8. mail john!eifel 9. tty 10. uname -a 11. prog1& 12. kill -23 PID, stop PID, stop %job_id, ... 13.kill -25 PID, bg PID, bg %job_id, ... 14. -l : °¡Àå ÀÚ¼¼ÇÑ ³»¿ëÀ» Ãâ·ÂÇÑ´Ù. Áï, mode, ¸µÅ©¼ö, ¼ÒÀ¯ÀÚ ½Äº°¸í ¹ÙÀÌÆ® ´ÜÀ§ÀÇ È­ÀÏ Å©±â, Á÷Àü ¼öÁ¤½Ã°£µîÀ» Ãâ·ÂÇÑ´Ù. ¸¸ÀÏ È­ÀÏÀÌ Æ¯¼ö È­ÀÏÀ̸é, È­ÀÏ Å©±â´ë½Å¿¡ ¸ÞÀÌÀú¹× ¸¶ÀÌ³Ê ÀåÄ¡¹øÈ£°¡ Ç¥½ÃµÈ´Ù. ¶ÇÇÑ Á÷Àü ¼öÁ¤³¯Â¥°¡ 6°³¿ù ÀÌÀüÀÎ °æ¿ì¿¡´Â '¿ù ÀÏ ¿¬µµ' Çü½ÄÀ¸·Î Á¤º¸°¡ Ç¥½ÃµÈ´Ù. ±×·¯³ª 6°³¿ù ¹Ì¸¸ÀÏ °æ¿ì¿¡´Â '¿ù ÀÏ ½Ã°£' Á¤º¸°¡ Ç¥½ÃµÈ´Ù.±×¸®°í ÇØ´çÈ­ÀÏÀÌ ½Éº¼¸¯ ¸µÅ©µÈ È­ÀÏÀÏ °æ¿ì¿¡´Â -> Çü½ÄÀÇ Á¢µÎ»ç°¡ ºÙÀº ¿ø½ÃÈ­ÀÏÀÇ °æ·Î¸íÀÌ Ç¥½ÃµÈ´Ù. -L : ÀÎÀÚ·Î ÁöÁ¤µÈ È­ÀÏÀÌ ½Éº¼¸¯ ¸µÅ©µÈ È­ÀÏÀÏ °æ¿ì¿¡, ½ÇÁ¦ ¸µÅ©µÇ¾î ÀÖ´Â È­ÀÏÀ̳ª µð·ºÅ丮ÀÇ ³»¿ëÀ» ¸®½ºÆ®ÇÑ´Ù. 15. (´ä) a. ´ë¹®ÀÚ·Î ÁöÁ¤µÇ¾î ÀÖ´Â HOME µð·ºÅ丮ÀÇ ¸ðµç È­ÀϵéÀÌ ¸®½ºÆ®µÈ´Ù. 16. (´ä) d. <:> 17. (´ä) d. 742 -rw-rw-r-- 2 joe joegrp 0 July 20 08:11 file3 18. (´ä) ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦¢a) / ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ DIRA ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦£¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¤ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ DIRB DIRC ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦£¦¡¦ª¦¡¦¡¦¡¦¡¦¤ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ fileA fileB ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ 19. (´ä) a. /work/acct/stu1 Contains files: filea fileb 20. (´ä) b. prog_A ÀÇ Ãâ·ÂÀÌ prog_BÀÇ ÀÔ·ÂÀ¸·Îº¸³»Áø´Ù. 21. (´ä) a. find / -user hpt -name *.c -print 22. (´ä) b. filename.c 23. (´ä) a. /usr/bin only ------------------------------------------------------------------------- ¼ö°íÇϼ̽À´Ï´Ù. ------------------------------------------------------------------------- #154 À¯´Ï½Ã½º (adunis2 ) À¯´Ð½º °ü¸®ÀÚ ±â´É °³¿ä 07/30 17:37 107 line À¯´Ð½º °ü¸®ÀÚ ±â´É °­ÀÇ ½ÃÀÛ¿¡ ºÙ¿©.. -------------------------------------------------------------------- º» °­Á´ À¯´Ï½Ã½º U6000 ½Ã½ºÅÛÀÇ ¿î¿µÃ¼Á¦ÀÎ SVR4.0 À¯´Ð½º ¹öÀüÀ» ±âÁØÀ¸·Î ÇÑ À¯´Ð½º °­ÁÂÀÔ´Ï´Ù. ÁúÀÇ»çÇ×Àº À¯´Ï½Ã½º Æ÷·³»óÀÇ 12¹ø ÁúÀÇÀÀ´ä ¸Þ´º¸¦ ÀÌ¿ëÇϽñ⠹ٶø´Ï´Ù. -------------------------------------------------------------------- À¯´Ð½º´Â DOS¿Í ´Þ¸® ´ÙÁß »ç¿ëÀÚ ±â´ÉÀ» Á¦°øÇÏ´Â ¿î¿µÃ¼Á¦ÀÌ´Ù. µû¶ó¼­ ½Ã½ºÅÛÀÇ º¸¾È, È¿À²¼º ¹× ¾ÈÁ¤µÈ ¿î¿ëÀ» À§Çؼ­ ½Ã½ºÅÛÀÇ »óÅ °¨½Ã¹× ½Ã½ºÅÛ±¸Ãà¹× À¯Áö¸¦ ´ã´çÇϴ Ưº°ÇÑ »ç¿ëÀÚ¸¦ ÇÊ¿ä·ÎÇÑ´Ù. ÀÌ »ç¿ëÀÚ¸¦ ""½Ã½ºÅÛ °ü¸®ÀÚ(System Administrator, SuperUser)""¶ó ÇÑ´Ù. À̹ø °­ÀǺÎÅÍ´Â ¹Ù·Î ÀÌµé »ç¿ëÀÚµéÀÌ ¼öÇàÇÏ´Â, ¼öÇàÇؾ߸¸ ÇÏ´Â "½Ã½ºÅÛ °ü¸® ±â´É"¿¡ ´ëÇؼ­ ´Ü°èº°·Î ¼Ò°³ÇÑ´Ù. °­ÀǸ¦ ½ÃÀÛÇϱ⠾ռ­¼­ À̵é Ưº°ÇÑ »ç¿ëÀÚµéÀÌ °ü¸®Àڷμ­ ¼öÇàÇØ¾ß ÇÏ´Â °ü¸®ÀÚÀÇ ¿ªÇÒ¿¡ ´ëÇØ ¸ÕÀú ¼Ò°³ÇÑ´Ù. ½Ã½ºÅÛ °ü¸®ÀÚÀÇ ¿ªÇÒÀ» ÇѸ¶µð·Î ¸»ÇÑ´Ù¸é, »ç¿ëÀÚ¿¡ ´ëÇÑ ÄÄÇ»ÅÍ ¼­ºñ½ºÀÇ Á¦°ø¹× Áö¿øÀ̶ó ÇÒ¼öÀÖ´Ù. À̸¦À§ÇØ ¼öÇàÇÏ´Â ÀÛ¾÷ÇÏ´Â ³»¿ëÀ» ºÐ·ùÇÏ¸é ´ÙÀ½°ú °°´Ù. -. Çϵå¿þ¾î¹× ¼ÒÇÁÆ®¿þ¾î¸¦ Æ÷ÇÔÇÏ´Â ÄÄÇ»ÅÍ ½Ã½ºÅÛÀÇ ±¸Ãà -. »ç¿ëÀڵ鿡 ´ëÇÑ ÀÚ¿øÀÇ ÇÒ´ç -. ¼ÒÇÁÆ®¿þ¾î ÀÚ¿ø¿¡ ´ëÇÑ º¸È£ -. ÀÏ»óÀûÀÎ À¯Áö °ü¸® -. ¹®Á¦Á¡ÀÌ ¹ß»ý½Ã °áÇÔÀÖ´Â Çϵå¿þ¾î¹× ¼ÒÇÁÆ®¿þ¾î¿¡ ´ëÇÑ º¸¼ö ÀÌµé ±â´ÉÀ» Á»´õ ¼¼ºÎÀûÀ¸·Î ¼Ò°³ÇÏ¿© º»´Ù. 1) Çϵå¿þ¾î¹× ¼ÒÇÁÆ®¿þ¾î ÀÚ¿øÀÇ ±¸Ãà -- ½Ã½ºÅÛ ¼³Ä¡ . ÄÄÇ»ÅÍ, ÄÜ¼Ö ÅÍ¹Ì³Î¹× ÄÜ¼Ö ÇÁ¸°ÅÍÀÇ ¼³Ä¡ . Çʼö À¯Æ¿¸®Æ¼ÀÇ ¼³Ä¡ . ½Ã½ºÅÛ È¯°æ ¼³Á¤ . Ãß°¡ ¼ÒÇÁÆ®¿þ¾î ÆåÅ°Áö ¼³Ä¡ . ´Ü¸»¿ë Åë½Å¼± ±¸Ãà . ÁÖº¯±â±â ¼³Ä¡: ´Ü¸»±â, ¸ðµ©, ÇÁ¸°ÅÍ, µð½ºÅ©, Å×ÀÌÇÁ ÀåÄ¡µî . LP Print Service ¼³Ä¡ 2) ½Ã½ºÅÛ Profile ¼öÁ¤ ½Ã½ºÅÛ »ç¿ëÀÚÀÇ ±âº» ÀÛ¾÷ ȯ°æÀ» Á¤ÀÇÇÑ´Ù. (/etc/profile³»¿¡ Á¤ÀǵȴÙ.) 3) »ç¿ëÀÚ ±×·ì »ý¼º ½Ã½ºÅÛ ÀÚ¿øÀÇ ºÒ¹ýÀûÀÎ ¾ï¼¼½º¸¦ ¹æÁöÇÒ ¸ñÀûÀ¸·Î, À¯»ç ¾÷¹«¸¦ ¼öÇàÇÏ´Â »ç¿ëÀÚµéÀ» ±×·ìÈ­ÇÏ¿© µ¥ÀÌŸ °øÀ¯¸¦ ÇÒ¼ö ÀÖµµ·Ï Çϱâ À§Çؼ­ »ç¿ëÀÚ ±×·ìÀ» »ý¼ºÇÑ´Ù. 4) »ç¿ëÀÚ¸í °ú ¾ÏÈ£ ÁöÁ¤ ½Ã½ºÅÛ º¸¾È°ú »ç¿ëÀÚÀÇ ½Ã½ºÅÛ »ç¿ëÀ» Çã¿ëÇϱâ À§ÇØ »ç¿ëÀÚÀÇ login¹× password¸¦ ¼³Á¤. 5) ³×Æ®¿÷ ±¸Ãà Ÿ ½Ã½ºÅÛ»óÀÇ »ç¿ëÀÚ¿ÍÀÇ Åë½Å¹× ÇÁ¸°ÅÍ¿Í °°Àº ÀÚ¿ø °øÀ¯¸¦ À§ÇØ ³×Æ®¿÷À» ±¸Ãà.(ÇÊ¿ä½Ã) 6) ½Ã½ºÅÛ ÀÚ¿øÀÇ ÇÒ´ç ½Ã½ºÅÛ ÀÚ¿øÀÇ Á¦°ø¹× Á¶Á¤°ú ÇÔ²² ÀÚ¿ø È°¿ë¿¡ ´ëÇÑ °¨½Ã. 7) ¼ÒÇÁÆ®¿þ¾î ÀÚ¿øÀÇ ÃÖÀû ÀÌ¿ë ½Ã½ºÅÛ ÀÚ¿øÀÇ ÃÖÀû ÀÌ¿ëÀ» À§Çؼ­´Â ÁÖ±âÀûÀÎ ÀÚ¿øµéÀÇ ÀÌ¿ë ¹æ½Ä¹× »ç¿ëÀÚ ¿ä±¸¿¡ ´ëÇÑ ½Ã½ºÅÛ Ã³¸® ´É·ÂÀÇ Á¤±âÀû Á¡°Ë. 8) ½Ã½ºÅÛ ÀÚ¿øÀÇ º¸È£ ½Ã½ºÅÛ º¸¾ÈÀ» À§ÇÑ Æнº¿öµå ¼³Á¤¹× Á¤±âÀûÀÎ ¹é¾÷(Backup) ¼öÇà. 9) ÀÏ»óÀûÀÎ À¯Áö º¸¼ö ±â´É ¼öÇà ¹é¾÷, ¼ÒÇÁÆ®¿þ¾î ¾÷±×·¹À̵å(Upgrade), µð½ºÅ© Çìµå û¼Ò, µð½ºÅ© »ç¿ë°ø°£ È®ÀÎ, °¢Á¾ÀÇ ½Ã½ºÅÛ ·Î±× È­ÀÏ Á¤¸® Á¤µ·. 10) °áÇÔÀÌ ¹ß»ýÇÑ Çϵå¿þ¾î¹× ¼ÒÇÁÆ®¿þ¾îÀÇ º¸¼ö 11) ½Ã½ºÅÛ ·Î±× °ü¸® . À¯Áöº¸¼öÀÇ ³¯Â¥¹× ½Ã°£ ±â·Ï . ¿¡·¯ ¸Þ¼¼Áö¹× ½Ã½ºÅÛ Áø´Ü ÀÛ¾÷½ÃÀÇ °á°ú ³»¿ª ±â·Ï . Çϵå¿þ¾î ±³Ã¼½ÃÀÇ ³¯Â¥¹× ³»¿ª ±â·Ï . ¼ÒÇÁÆ®¿þ¾î ±³Ã¼ ³¯Â¥¹× ³»¿ª ±â·Ï 12) »ç¿ëÀÚ¿¡ ´ëÇÑ Å뺸¹× ½Ã½ºÅÛ »óȲ °ø°í ±â´É »õ·Î¿î ÆåÅ°Áö ¼³Ä¡, ½Ã½ºÅÛ ¿î¿µ »óŵîÀ» ¿î¿µÃ¼Á¦¿¡¼­ Á¦°øÇÏ´Â ÀüÀÚÅë½Å±â´É ¶Ç´Â ¸ÞÀÏ ±â´ÉÀ» ÀÌ¿ë °ø°íÇÑ´Ù. 13) ½Ã½ºÅÛ ºÎÆÃ¹× ¼Ë´Ù¿î(Shutdown) ½Ã½ºÅÛÀÇ ÀÏ»óÀû ¿î¿ëÀ» À§ÇÑ ½Ã½ºÅÛ ºÎÆÃ¹× ¼Ë´Ù¿î ¶Ç´Â °ü¸® ±â´ÉÀ» ¼öÇàÇϱâ À§ÇÑ ½Ã½ºÅÛ ¼Ë´Ù¿î ±â´ÉµîÀ» ¼öÇàÇÑ´Ù. ÀÌ¿Í°°ÀÌ ½Ã½ºÅÛ °ü¸®ÀÚµéÀº ½Ã½ºÅÛ ¿î¿ë¿¡ À־ Áß¿äÇÑ À§Ä¡¸¦ Â÷ÁöÇÏ°í ÀÖ´Ù. ±×·¸±â¶§¹®¿¡ °ü¸®ÀÚµéÀº º¸´Ù È®½ÇÇÑ ½Ã½ºÅÛÀÇ ÀÌÇØ°¡ ÇÊ¿äÇÏ°Ô µÈ´Ù. À̹ø¿¡ ½ÃÀ۵Ǵ °ü¸®ÀÚ °úÁ¤¿¡¼­ ÁøÇàµÇ´Â °¢ ´Ü°èÀÇ °úÁ¤Àº ÀÌµé °ü¸®ÀÚ°¡ ¼öÇàÇÏ´Â ±â´ÉµéÀ» Áß½ÉÀ¸·Î °­ÀÇ°¡ ÁøÇàµÈ´Ù. --------------------------------------------------------------------------- ´ÙÀ½ °­ÀÇ¿¡¼­´Â ½Ã½ºÅÛ ºÎÆðú ½Ã½ºÅÛ ¼Ë´Ù¿î¿¡ ´ëÇؼ­ °­Àǵ帳´Ï´Ù. ---------------------------------------------------------------------------