· KLDP.org · KLDP.net · KLDP Wiki · KLDP BBS ·
Docbook Sgml/Vim-KLDP

Vi,VimÈ°¿ë

Vi,VimÈ°¿ë

¼º½Ãâ

¼ÛÈ£¿µ

vi´Â ÅؽºÆ® ¹®¼­¸¦ ÆíÁýÇϴµ¥ »ç¿ëµÇ´Â ÅؽºÆ® ÆíÁý±âÀÔ´Ï´Ù. ¸¹Àº Á¾·ùÀÇ OS»ó¿¡¼­ µ¿ÀÛÇÏ´Â vi°¡ °³¹ßµÇ¾î ÀÖÀ¸¸ç, ƯÈ÷ unix°è¿­ÀÇ OS¿¡¼­´Â °ÅÀÇ ¸ðµç ½Ã½º ÅÛ¿¡¼­ ±âº» ÅؽºÆ® ¿¡µðÅÍ·Î »ç¿ëµÇ°í ÀÖÁÒ. vimÀº Vi IMproved·Î½á ¸» ±×´ë·Î vi¿¡ unlimited undo, syntax coloring, split windows, visual selection, gui support µîÀÇ ±â´ÉÀÌ º¸°­µÈ vi cloneÀÔ´Ï´Ù. vim¿¡ °ü·ÃµÈ Àڷᳪ °¢ OSº° ¹ÙÀ̳ʸ®, ¼Ò½º´Â www.vim.org¿¡¼­ ã¾Æº¸½Ã±â ¹Ù¶ø´Ï´Ù.

고친 과정
고침 0.2고친이 jaurang
DocBook º¯È¯
고침 0.11999-07-10고친이 ¼º½Ãâ
ÃÖÃÊÀÛ¼º

1. ±âº»ÀûÀÎ ÆíÁý,¸í·É

vi´Â Å©°Ô ¼¼°¡Áö ¸ðµå·Î ³ª´µ¾îÁý´Ï´Ù. ¿ì¼± ¸í·É¸ðµå·Î Å° ÀÔ·ÂÀÌ ¹Ù·Î ¹Ù·Î ¸í·ÉÀÌ µÇ´Â ¸ðµå, ´ÙÀ½Àº ÀԷ¸ðµå·Î ½ÇÁ¦ ¹®¼­¸¦ ÆíÁýÇÏ´Â ¸ðµå, ¸¶Áö¸·À¸·Î ex ¸ð µå·Î ex¸í·ÉÀ» ½ÇÇà½ÃÅ°´Â ¸ðµåÀÔ´Ï´Ù. vi¸¦ ½ÇÇà½ÃÅ°¸é óÀ½¿¡¸í·É¸ðµå »óÅ¿¡ ÀÖ°Ô µË´Ï´Ù. ¸í·É¸ðµå¿¡¼­ : Å°¸¦ ´©¸£¸é ex¸ðµå·Î, a, i µîÀÇ Å°¸¦ ´©¸£¸é ÀԷ¸ð µå·Î ÀüȯµÇ¾î ¹®¼­¸¦ ÆíÁýÇÒ ¼ö ÀÖ´Â »óÅ·ΠµË´Ï´Ù. º»°ÝÀûÀÎ ³»¿ëÀ¸·Î µé¾î°¡±â Àü¿¡ ±âº»ÀûÀÎ ÆíÁý¿¡ ´ëÇؼ­ ¼³¸íÀ» ÇÏ°Ú½À´Ï ´Ù. ƯÁ¤ ÆÄÀÏÀ» ÆíÁýÇϱâ À§ÇØ ¿­·Á¸é vi [filename]À» shell prompt¿¡¼­ ½ÇÇà½Ãŵ ´Ï´Ù. ÀÌ·¸°Ô ¿¬ ÆÄÀÏÀ» ÆíÁý¸ðµå·Î µé¾î°¡ ÆíÁýÇÏ·Á¸é i¸¦ ÀÔ·Â, ¿øÇÏ´Â ³»¿ëÀ» ÀÔ ·ÂÇÑ ÈÄ Á¾·áÇÏ·Á¸é [ESC]ZZ ³ª [ESC]:wq¸¦ ´©¸£¸é ÀúÀå ÈÄ Á¾·áÇÏ°Ô µË´Ï´Ù. ÀÌ Á¤ µµ´Â ±âº»ÀûÀ¸·Î ¾Ë¾ÆµÎ¼Å¾ß Áö±ÝºÎÅÍ ÇÏ´Â ³»¿ëÀ» µû¶óÇØ º¸½Ç ¼ö ÀÖ°ÚÁÒ? ¶Ç ±âº» ÀûÀ¸·Î ¾Ë¾ÆµÎ¼Å¾ß ÇÒ ¸í·ÉÀÌ ¸í·É¸ðµå¿¡¼­ u Áï undo¸í·ÉÀÔ´Ï´Ù. ±×·¡¾ß À߸ø ½ÇÇà µÈ ¸í·ÉÀ» ¹Ù·Î undoÇÒ ¼ö ÀÖ°ÚÁÒ...^^

i ÇöÀçÀ§Ä¡¿¡¼­ »ðÀÔ
I ÇöÀçÁÙÀÇ Ã³À½ À§Ä¡¿¡¼­ »ðÀÔ
a ÇöÀç À§Ä¡¿¡¼­ Ãß°¡
A ÇöÀçÁÙÀÇ ³¡ ¿¡¼­ Ãß°¡
o »õ·Î¿î ÇÑ ÁÙÀ» Ä¿¼­ ¾Æ·¡ÁÙ¿¡ ¿¬´Ù.
O »õ·Î¿î ÇÑ ÁÙÀ» Ä¿¼­ À§ÁÙ¿¡ ¿¬´Ù.
S ÁÙÀ» Áö¿ì°í »ðÀÔ¸ðµå·Î
R ÇöÀç À§Ä¡¿¡¼­ Replace ¸ðµå·Î
J ´ÙÀ½ÁÙ°ú ÇöÀçÁÙÀ» ÇÕÄ£´Ù.
~ ´ë¹®ÀÚ<->¼Ò¹®ÀÚ
. ¸¶Áö¸· ¸í·ÉÀ» ¹Ýº¹ÇÑ´Ù
u (<-> CTRL-R) ¸¶Áö¸· ¼öÁ¤ÇÑ °ÍÀ» Ãë¼ÒÇÑ´Ù.
U ÁÙÀ» óÀ½ »óÅ·Πº¹±¸ÇÑ´Ù.


1.1. ÆíÁý

1.1.1. º¹»ç, ºÙÀ̱â, »èÁ¦

ÅؽºÆ® ÆíÁý±â¸¦ »ç¿ëÇϸ鼭 °¡Àå À¯¿ëÇÑ ±â´É Áß¿¡ Çϳª°¡ ¹Ýº¹µÇ´Â ¹®ÀÚ¿­À» º¹»çÇؼ­ ´Ù¸¥ °÷¿¡ ºÙÀÌ´Â ±â´ÉÀ̶ó°í »ý°¢ÇÕ´Ï´Ù. vi ¿ª½Ã ÀÌ·¯ÇÑ ±â´ÉÀ» °¡Áö°í ÀÖ°í viÀÇ ¸í·É¾îÀÇ Æ¯¼º»ó ¸Å¿ì ¸¹Àº ¹æ¹ýÀ¸·Î ÀÌ·¯ÇÑ ¸í·ÉÀ» ¼öÇàÇÒ ¼ö ÀÖ½À´Ï ´Ù. ¸í·É¸ðµå¿¡¼­ yy¶ó°í ÀÔ·ÂÇϸé ÇöÀç Ä¿¼­°¡ À§Ä¡ÇÑ ÇÑ ÁÙÀ» Ä«ÇÇ(Yanking)ÇÏ°Ô µË´Ï´Ù. ¶Ç dd´Â ÇöÀç ÇàÀ» »èÁ¦ÇÏ°Ô µÇ´Âµ¥ ÀÌ ¿ª½Ã »èÁ¦°¡ ÀÌ·ç¾îÁö¸é¼­ ¹öÆÛ¿¡ º¹ »ç°¡ µÇ¾îÀÖ½À´Ï´Ù. yy³ª dd·Î ¹öÆÛ¿¡ µé¾î°£ ³»¿ëÀ» ºÙÀÌ·Á¸é ºÙÀÌ°íÀÚ ÇÏ´Â °÷ ÇÑ ÁÙ À§¿¡¼­ p¸¦ ÀÔ·ÂÇÏ¸é µË´Ï´Ù. ÁüÀÛÇϽõíÀÌ yÅ°°¡ º¹»ç¸¦ Çϴµ¥ »ç¿ëµÇ´Â Å°ÀÌ°í d°¡ »èÁ¦¿¡, p°¡ ºÙÀ̱⿡ »ç¿ëµÇ´Â Å°ÀÔ´Ï´Ù. ¸í·É¸ðµå¿¡¼­ »ç¿ëµÇ´Â ¸í·ÉµéÀº ¸í·É ¾Õ¿¡ ¼ýÀÚ¸¦ ÀÔ·ÂÇÑ ÈÄ ¸í·ÉÀ» ³»¸®¸é ±× Ƚ¼ö¸¸Å­ ¸í·ÉÀ» ¹Ýº¹ÇÏ°Ô µË´Ï´Ù. ½±°Ô 2yy ¶ó°í ÀÔ·ÂÇϸé 2ÁÙÀ» º¹»çÇϸ®¶ó´Â °ÍÀ» »ý°¢ÇÒ ¼ö ÀÖ½À´Ï´Ù. µÚ¿¡¼­ ³ª¿À°Ô µÇ´Â À̵¿¿¡ °ü·ÃµÈ ¸í·É°ú Á¶ÇÕÇÏ¸é º¹»ç³ª »èÁ¦¸¦ ¿øÇÏ´Â ¿µ¿ª¿¡¼­ ÇØ ³¾ ¼ö ÀÖ½À´Ï´Ù. ¿ì¼± ¿©±â¼­´Â º¹»ç¿¡ »ç¿ëµÇ´Â Å°°¡ yÅ°, »èÁ¦¿¡ »ç¿ëµÇ´Â Å°°¡ d, ºÙÀ̱⿡ »ç ¿ëµÇ´Â Å°°¡ pÅ°¶ó´Â °Í¸¸ ¼÷ÁöÇÏ°í ³Ñ¾î°©½Ã´Ù. Âü ÇÑ°¡Áö ºü¶ß¸®°í ³Ñ¾î°¥ »·Çß±º¿ä. X ³ª xÅ°°¡ ¸í·É¸ðµå¿¡¼­ »èÁ¦¿¡ »ç¿ëµË´Ï´Ù. ¹®ÀÚ À§¿¡¼­ x¸¦ ´©¸£¸é À§Ä¡ÇÑ ¹® ÀÚ°¡ »èÁ¦µÇ°í X¸¦ ´©¸£¸é [bs]Űó·³ µ¿ÀÛÀ» ÇÕ´Ï´Ù.

-change-
cw ÇÑ ´Ü¾î
2cw or c2w µÎ ´Ü¾î
cc ÇÑ Çà
c$ or C Ä¿¼­ À§Ä¡¿¡¼­ ÇàÀÇ ³¡±îÁö
cO Ä¿¼­ À§Ä¡¿¡¼­ ÇàÀÇ Ã³À½±îÁö
r ÇÑ ¹®ÀÚ º¯°æ
-delete-
dw ÇÑ ´Ü¾î
2dw or d2w µÎ ´Ü¾î
dd ÇÑ Çà
d$ or D Ä¿¼­ À§Ä¡¿¡¼­ ÇàÀÇ ³¡±îÁö
dO Ä¿¼­ À§Ä¡¿¡¼­ ÇàÀÇ Ã³À½±îÁö
x or X ÇÑ ¹®ÀÚ º¯°æ
-yanking-
yw ÇÑ ´Ü¾î 
2yw or y2w µÎ ´Ü¾î
yy ÇÑ Çà
y$ or Y Ä¿¼­ À§Ä¡¿¡¼­ ÇàÀÇ ³¡±îÁö
yO Ä¿¼­ À§Ä¡¿¡¼­ ÇàÀÇ Ã³À½±îÁö
y1 or yh ÇÑ ¹®ÀÚ º¯°æ


1.1.2. Named ¹öÆÛ »ç¿ë

º¸ÅëÀÇ ¿¡µðÅÍÀÇ °æ¿ì¿¡´Â ¾î¶² ƯÁ¤ ¹®ÀÚ¿­À» »õ·Î º¹»çÇϸé ÀÌÀü¿¡ º¹»çÇß ´ø ¹®ÀÚ¿­ÀÌ Áö¿öÁö°Ô µË´Ï´Ù. vi´Â a-z±îÁöÀÇ À̸§À» °®´Â ¹öÆÛ¿¡ °¢°¢À» À¯ÁöÇÏ¿© º¹»ç ÇØ µÑ ¼ö ÀÖ´Â ¸Å¿ì Æí¸®ÇÑ ±â´ÉÀ» Á¦°øÇÕ´Ï´Ù. ÀÌ·¯ÇÑ ±â´ÉÀ» named buffer¶ó ÇÏ°í »ç¿ë¹æ¹ýÀº ¸ðµç ¸í·É¸ðµå¿¡¼­ÀÇ ¸í·É ¾Õ¿¡ a~z±îÁöÀÇ ¹öÆÛ¸í "a ~ "zÀ» ºÙ¿©ÁÖ ´Â °ÍÀÔ´Ï´Ù. À§¿¡¼­ º¹»ç¸¦ Çß´ø °ÍÀ» ´Ù½Ã Çغ¸¸é "ayy¸¦ ´©¸£¸é ÇöÀç ÁÙÀÌ "a ¹öÆÛ¿¡ º¹»ç°¡ µË´Ï´Ù. ÀÌ°ÍÀ» ´Ù½Ã ºÙÀ̱⸦ ÇÏ·Á¸é "ap¸¦ ÀÔ·ÂÇÏ¸é µÇ°ÚÁö¿ä. ÀÌ¹Ì ÀÖ´Â ¹öÆÛ¿¡ ³»¿ëÀ» Ãß°¡Çϰųª óÀ½ºÎÅÍ ¹öÆÛ¿¡ ½á ³Ö´Â ¹æ¹ýÀ» ¼³¸í ÇÏ°Ú½À´Ï´Ù. ÀÌ¹Ì ¾î¶² ¹öÆÛ¿¡ ³»¿ëÀÌ µé¾î°¡ ÀÖ°í ±× µÚ¿¡ ³»¿ëÀ» Ãß°¡ÇÏ°í ½ÍÀº °æ ¿ì°¡ »ý±âÁÒ. ÀÌ·± °æ¿ì Ãß°¡´Â ¹öÆÛ À̸§ÀÇ ´ë¹®ÀÚ¸¦ »ç¿ëÇÕ´Ï´Ù. "Ayy¿Í °°ÀÌ ÇöÀç ÁÙÀ» ¹öÆÛ¿¡ Ãß°¡Çϰųª, ex¸ðµå¿¡¼­ ƯÁ¤ ¹®ÀÚ¿­ÀÌ ÀÖ´Â ÁÙÀ» ¸ðµÎ º¹»çÇØµÎ°í ½ÍÀº °æ¿ì :g/string/y A ÀÌ·± ½ÄÀ¸·Î »ç¿ëÇÏ´Â °ÍÀÌÁÒ. º¹»çµîÀ» ÇÏÁö ¾Ê°í ¹öÆÛ¿¡ Á÷Á¢ ½á³ÖÀ¸·Á¸é q¸í·ÉÀ» »ç¿ëÇÕ´Ï´Ù. q ´ÙÀ½¿¡ ¹öÆÛ¸íÀ» ´©¸£¸é È­¸éÇÏ´Ü¿¡ recordingÀ̶ó´Â Ç¥½Ã°¡ ³ª¿À°í Áö±ÝºÎÅÍ ÇÏ´Â Å° ÀÔ·Â Àº ¼±ÅÃÇÑ ¹öÆÛ¸í¿¡ µé¾î°¡°Ô µË´Ï´Ù. Å°ÀÔ·ÂÀÌ ³¡³ª¸é ´Ù½Ã q¸¦ ´©¸£¸é µË´Ï´Ù. µÚ¿¡¼­ ex¸ðµå¿¡¼­ »ç¿ëÇÏ´Â ¹æ¹ýÀ̳ª @-function¿¡ »ç¿ëÇÒ ¼ö ÀÖ´Â ¹æ¹ýÀ» ¼³¸íÇÏ°Ú½À´Ï´Ù. ¿©±â¼­´Â ÀÌ Á¤µµ¸¸ ¾Ë°í ³Ñ¾î°¡µµ·Ï ÇÏÁÒ. (ÁÖ: vim¿¡¼­´Â register¶ó°í Çϴ±º¿ä.


1.1.3. ¿©·¯ ¹®¼­ÀÇ ÆíÁý

vi¿¡¼­ ¿©·¯ ¹®¼­¸¦ µ¿½Ã¿¡ ¿­±â À§Çؼ­´Â vi [filename1] [filename2]...ÀÇ ÇüÅ·Π¿­°íÀÚ ÇÏ´Â ÆÄÀÏÀ» µÚ¿¡ À̾ ½á ÁÝ´Ï´Ù. ±×·³ µ¿½Ã¿¡ ¿©·¯ ¹®¼­¸¦ ÆíÁýÇÏ °Ô µÇÁÒ. ±×¸®°í °¢ ¹®¼­ »çÀÌÀÇ ÀüȯÀº :nÅ°¿Í :NÀ» ÀÌ¿ëÇؼ­ ÇÕ´Ï´Ù. Áï vi test1 test2·Î µÎ ÆÄÀÏÀ» ¿­¾î¼­ ÀÛ¾÷À» ÇÏ°í ÀÖ´Ù¸é :nÀ» ÀÔ·ÂÇϸé test2·Î ÆíÁýÀÌ ³Ñ¾î°¡ °Ô µË´Ï´Ù. ´Ù½Ã :N ¶Ç´Â :prevÀ» ÀÔ·ÂÇϸé test1À» ÆíÁýÇÒ ¼ö ÀÖ½À´Ï´Ù. ¶Ç ÇöÀç ¾î ¶² ÆÄÀÏÀ» ÆíÁýÁßÀÎÁö È®ÀÎÇÏ·Á¸é :args¸¦ ÀÔ·ÂÇϸé ÇöÀç ¿­¸° ¸ðµç ÆÄÀÏ Áß¿¡ ÇöÀç ÆíÁýÁßÀÎ ÆÄÀÏÀÌ ´ë°ýÈ£·Î µÑ·¯½Î¿© Ç¥½ÃµË´Ï´Ù. ¿­¸° ÆÄÀÏÀÌ ¸¹¾Æ¼­ ¿©·¯ ¹®¼­¸¦ °Ç ³Ê¶Ù¾î ÆíÁýÇØ¾ß ÇÏ´Â °æ¿ì¿¡´Â nÀ̳ª N¾Õ¿¡ skipÇÒ ÆÄÀÏ °³¼ö¸¦ ½áÁÖ¸é µË´Ï´Ù. :4n ÀÌ·± ½ÄÀÌ µÇ°ÚÁÒ.


1.2. À̵¿

¹®¼­³»¿ëÀ» ¼öÁ¤ÇÏ·Á¸é ÆíÁýÇÏ°íÀÚ ÇÏ´Â À§Ä¡·Î ¸ÕÀú À̵¿ÇÏ¿©¾ß ÆíÁýÀÌ°¡ ´ÉÇÏ°ÚÁö¿ä. vi´Â ´Ù¸¥ ÆíÁý±â¿Í´Â ºñ±³µµ µÇÁö ¾ÊÀ» ¸¸Å­ ¸¹Àº À̵¿ ¹æ¹ýÀ» Á¦°øÇÕ ´Ï´Ù. À̵¿¸í·ÉÀº ´Ù¸¥ ¸í·É(º¹»ç, »èÁ¦, ºÙÀ̱â)µî°ú Á¶ÇÕÇؼ­ »ç¿ëÇϱ⠶§¹®¿¡ È® ½ÇÈ÷ ¾Ë¾ÆµÎ½Ã´Â °ÍÀÌ ÁÁ½À´Ï´Ù. Á¦ ³ª¸§´ë·Î ºÐ·ù¸¦ °¡±î¿î °Å¸®ÀÇ À̵¿¿¡¼­ ¿ø°Å¸® À̵¿±îÁö ºÐ·ù¸¦ ÇØ º¸¾Ò½À´Ï´Ù.


1.2.1. ªÀº À̵¿

°¡Àå ±âº»ÀûÀÎ À̵¿ÀÌ ¸í·É¸ðµå »ó¿¡¼­ h, j, k, lÅ°¸¦ ÀÌ¿ëÇÑ À̵¿ÀÔ´Ï´Ù. Â÷·Ê·Î ÁÂ, ÇÏ, »ó, ¿ì·ÎÀÇ À̵¿À» ³ªÅ¸³À´Ï´Ù. ¿ª½Ã ´Ù¸¥ ¸í·É¸ðµå ¸í·É°ú ¸¶Âù°¡Áö ·Î ȸ¼ö¸¦ ¸í·É ¾Õ¿¡ ³Ö¾î¼­ ¹Ýº¹ÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿äÁòÀº ´ëºÎºÐ Ä¿¼­ Å°¸¦ Áö¿øÇÏ°í ÀÖÁö¸¸ ¼Õ°¡¶ôÀÌ ¿À°¡´Â °Å¸® »ó »ç¿ëÇÏÁö ¾ÊÀ¸½Ã´Â °ÍÀÌ ÁÁ½À´Ï´Ù. ´Ü¾î°£ÀÇ À̵¿Àº w, b, e, EÅ°·Î ÇÕ´Ï´Ù. wÅ°´Â ´ÙÀ½ ´Ü¾îÀÇ Ã¹ ¹ø° ¹®ÀÚ·Î À̵¿À» ÇÕ´Ï´Ù. b´Â ¹Ý´ë·Î ¾Õ ´Ü¾îÀÇ Ã¹ ¹ø° ¹®ÀÚ·ÎÀÇ À̵¿À» ³ªÅ¸³À´Ï´Ù. e, E´Â ù ¹ø° ¹®ÀÚ·ÎÀÇ À̵¿ÀÌ ¾Æ´Ñ ´Ü¾îÀÇ ¸¶Áö¸· ¹®ÀÚ·ÎÀÇ À̵¿ÀÔ´Ï´Ù. ¿ª½Ã ȸ¼ö¸¦ ¾Õ ¿¡ ³Ö¾î¼­ ¸î ´Ü¾î¸¦ ÇÑ ¹øÀÌ À̵¿ÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ ¹Û¿¡µµ ÇöÀçÇà »ó¿¡¼­ À̵¿À» ÇÏ´Â ¸í·ÉµéÀÌ ¸¹ÀÌ ÀÖ½À´Ï´Ù. 0Å°¸¦ ´©¸£ ¸é ÇöÀç ÇàÀÇ ¸Ç ¾ÕÀ¸·Î À̵¿ÇÕ´Ï´Ù. ^ À̳ª | ¿ª½Ã ÇàÀÇ ¸Ç óÀ½À¸·Î À̵¿ÇÕ´Ï´Ù. 0 Å°´Â ÇàÀÇ Ã³À½¿¡ °ø¹éÀÌ ³ª¿À´Ù ¹®ÀÚ¿­ÀÌ ³ª¿À´Â °æ¿ì¿¡´Â °ø¹éÀ» ¹«½ÃÇÏ°í ¸Ç Ã³À½ ³ªÅ¸³ª´Â ¹®ÀÚ·Î À̵¿ÇÕ´Ï´Ù. ÇÏÁö¸¸ ^ À̳ª |´Â 0¹ø° ¿­·Î À̵¿ÇÏ°Ô µË´Ï´Ù. ƯÁ¤ ¿­·Î À̵¿ÇÏ·Á¸é [¼ýÀÚ]| Áï 10¹ø° ¿­·Î À̵¿ÇÏ·Á¸é 10|À» ÀÔ·ÂÇϸé 10¹ø° ¿­·Î ÀÌ µ¿À» ÇÏ°Ô µË´Ï´Ù. ÇöÀç ÇàÀÇ ³¡À¸·Î À̵¿ÇÏ·Á¸é $±âÈ£¸¦ »ç¿ëÇÕ´Ï´Ù. ÀÌÁ¦ Çà°£ÀÇ À̵¿ÀÔ´Ï´Ù. ÇÑ Çà ¹ØÀ¸·Î À̵¿Àº + ¶Ç´Â [enter], À§·ÎÀÇ À̵¿ Àº - Å°¸¦ »ç¿ëÇÕ´Ï´Ù. 10[enter]¶ó°í ÀÔ·ÂÇØ º¸½Ê½Ã¿À. ¿£Å͸¦ ÇÑ ¹øÀÔ·ÂÇϸé ÇÑ Çà¹ØÀ¸·Î À̵¿ÇÏÁö¸¸ ÇÑ ¹ø¿¡ 10 Ç྿ ÆÅÆÅ ¶³¾îÁöÁö ¾Ê½À´Ï±î? 10+µµ °°Àº °á°ú¸¦ º¸¿©ÁÝ´Ï´Ù.

h, j, k, l ÁÂ, ÇÏ, »ó, ¿ì
+ or [enter] ´ÙÀ½ÁÙÀÇ Ã¹¹ø° ¹®ÀÚ·Î
- ÀÌÀüÁÙÀÇ Ã¹¹ø° ¹®ÀÚ·Î
e, E ´Ü¾îÀÇ ³¡À¸·Î
w, W ´ÙÀ½ ´Ü¾î·Î
b, B ÀÌÀü ´Ü¾î·Î
$ ÇàÀÇ ³¡À¸·Î
0 ÇàÀÇ Ã³À½À¸·Î ( 'A' ÀÎ °æ¿ì A¾ÕÀ¸·Î Ä¿¼­À̵¿)
^ ÇàÀÇ Ã³À½À¸·Î ( 'A' ÀÎ °æ¿ì¿¡µµ ¸Ç¾ÕÀ¸·Î Ä¿¼­À̵¿)
), ( ´ÙÀ½, ÀÌÀü ¹®ÀåÀÇ Ã³À½À¸·Î
}, { ´ÙÀ½, ÀÌÀü¹®´ÜÀÇ Ã³À½À¸·Î
]], [[ ´ÙÀ½, ÀÌÀü ±¸ÀýÀÇ Ã³À½À¸·Î


1.2.2. ¿ø°Å¸® À̵¿

ÀÌÁ¦ Á¶±Ý ¿ø°Å¸® À̵¿À¸·Î ³Ñ¾î°©´Ï´Ù. ¹®¼­°¡ 20000Çà Á¤µµ µÈ´Ù°í Çսà ´Ù. óÀ½¿¡ ¹®¼­¸¦ ¿­°Ô µÇ¸é Ä¿¼­´Â 1Çà¿¡ À§Ä¡ÇÕ´Ï´Ù. ¿¡·¯°¡ 10000Çà Á¤µµ¿¡ ¹ß»ý ÇÑ ¼Ò½ºÄڵ带 ¼öÁ¤ÇÑ´Ù°í Ä¡¸é, ¾î¶»°Ô À̵¿Çϸé ÁÁÀ»±î¿ä? ¹°·Ð µÚ¿¡¼­ ÆÄÀÏ ¿­±â ¿¡¼­ ¹è¿ì°ÚÁö¸¸ ÇöÀç±îÁö ÀúÈñ°¡ ¾ð±ÞÇÑ ¹Ù·Î´Â 10000+¸¦ ÇϵçÁö Çؾ߰ÚÁö¿ä. ¹°·Ð ÀÌ·¸°Ô Çصµ µÇ°ÚÁö¸¸ ƯÁ¤ ÇàÀ¸·Î Á÷Á¢ À̵¿ÇÏ´Â ¸í·ÉÀÌ ÀÖ½À´Ï´Ù. ¹Ù·Î G¸í·ÉÀÔ´Ï ´Ù. 10G¶ó°í ÀÔ·ÂÇϸé 10¹ø° ÇàÀ¸·Î À̵¿ÇÏ°Ô µÇ´Â °ÍÀÌÁÒ. ´Ù¸¥ ¹æ¹ýÀ¸·Î´Â ex¸í·É ¿¡¼­ :10¶ó°í ÀÔ·ÂÇÏ°í ¿£Å͸¦ ÀÔ·ÂÇÏ¸é ±× ÇàÀ¸·Î À̵¿ÇÏ°Ô µË´Ï´Ù. ¸Ç óÀ½ ÁÙ·ÎÀÇ À̵¿Àº gg ³ª 1G ³ª :1 µîÀ» »ç¿ëÇÏ°í ¸¶Áö¸· ÁÙ·ÎÀÇ À̵¿Àº G ³ª :$ µîÀÌ °¡´ÉÇÕ´Ï ´Ù. ¿©±â¼­ $´Â µÚ¿¡¼­ ¾ð±ÞÀ» ÇÏ°ÚÁö¸¸ ex¸ðµå¿¡¼­´Â ¸¶Áö¸· ÁÙÀ» ³ªÅ¸³À´Ï´Ù. ¸í·É ¸ðµå¿¡¼­´Â ÇàÀÇ ³¡À¸·Î À̵¿¿¡ »ç¿ëµÇ¾úÁÒ.

^F ÇÑ È­¸é ¾ÕÀ¸·Î ½ºÅ©·Ñ (means CTRL-F)
^B ÇÑ È­¸é µÚ·Î ½ºÅ©·Ñ
^D ¹Ý È­¸é ¾ÕÀ¸·Î ½ºÅ©·Ñ
^U ¹Ý È­¸é µÚ·Î ½ºÅ©·Ñ
^E ÇÑ ÁÙ ¾ÕÀ¸·Î ½ºÅ©·Ñ
^Y ÇÑ ÁÙ µÚ·Î ½ºÅ©·Ñ
H È­¸éÀÇ ¸Ç À§ÁÙ·Î ( nHÀÎ °æ¿ì ¸Ç À§¿¡¼­ nÇà ¹ØÀ¸·Î )
M È­¸éÀÇ Áß°£ ÁÙ·Î
L È­¸éÀÇ ¸Ç ¾Æ·¡ÁÙ·Î ( nLÀÎ °æ¿ì ¸Ç ¹Ø¿¡¼­ nÇà À§·Î )


1.2.3. ã±â·Î À̵¿

ÀÚ¼¼ÇÑ ³»¿ëÀÇ Ã£±â´Â 3Àå¿¡¼­ ´Ù¸¦ °ÍÀÌ°í ¿©±â¼­´Â À̵¿¿¡ »ç¿ëµÇ´Â ã±â ¸í·É¿¡ ´ëÇؼ­ ¼³¸íÇϵµ·Ï ÇÏ°Ú½À´Ï´Ù. ÇöÀç Çà¿¡¼­ ¼ø¹æÇâÀ¸·ÎÀÇ Æ¯Á¤ ¹®ÀÚ¸¦ ãÀ» ¶§´Â f Å°¸¦ »ç¿ëÇÕ´Ï´Ù. ÇöÀç Çà¿¡¼­ Ä¿¼­À§Ä¡¿¡¼­ ù ¹ø° ³ªÅ¸³ª´Â o ¹®ÀÚ±îÁö ÀÌ µ¿ÇÏ°í ½Í´Ù¸é fo¸¦ ÀÔ·ÂÇÏ¸é µË´Ï´Ù. ¹Ý´ë ¹æÇâÀ̶ó¸é Fo¸¦ ÀÔ·ÂÇÏ¸é µÇ°ÚÁÒ. ÀÌ ¸í ·ÉÀÇ ¹Ýº¹Àº ¾î¶»°Ô ÇÒ±î¿ä? ´Ù¸¥ ¸í·Éó·³ ¾Õ¿¡ ¹Ýº¹È¸¼ö¸¦ ¸í½ÃÇصµ µÇÁö¸¸ ãÀº ÈÄ¿¡ ´Ù½Ã ã±â¸¦ °°Àº ¹æÇâÀ¸·Î ÇÏ·Á¸é Å°¸¦ ¹Ý´ë¹æÇâÀ¸·Î ÇÏ·Á¸é , Å°¸¦ »ç¿ëÇØ ¼­ ¸í·ÉÀ» ¹Ýº¹ÇÕ´Ï´Ù. ÇÑ ÇàÀ» ¶°³ª¼­ ¼ø¹æÇâÀ¸·Î ¾î¶² ÆÐÅÏÀÌ ³ªÅ¸³ª´Â °÷À¸·Î À̵¿ÇÏ·Á¸é /patternÀ» ¿ª½Ã ¹Ý´ë ¹æÇâÀ̶ó¸é ?patternÀ» ÀÔ·ÂÇÏ¸é µË´Ï´Ù. ÀÌ ¿ª½Ã °°Àº ¹æÇâÀ¸ ·Î ¹Ýº¹À» ÇÏ·Á¸é n, ¹Ý´ë ¹æÇâÀº NÅ°¸¦ »ç¿ëÇÕ´Ï´Ù.

/pattern ¹®ÀÚ¿­ÀÇ Ã³À½¿¡¼­ ¾ÕÀ¸·Î °Ë»ö
?pattern ¹®ÀÚ¿­ÀÇ Ã³À½¿¡¼­ µÚ·Î °Ë»ö
n °Ë»öÀ» ´Ù½Ã ¹Ýº¹ (°°Àº ¹æÇâ)
N °Ë»öÀ» ´Ù½Ã ¹Ýº¹ (¹Ý´ë ¹æÇâ)
fx ÇöÀç ÁÙ¿¡¼­ x°¡ ÀÖ´Â °÷À¸·Î À̵¿ (¾ÕÀ¸·Î)
Fx ÇöÀç ÁÙ¿¡¼­ x°¡ ÀÖ´Â °÷À¸·Î À̵¿ (¿ª¹æÇâ)
tx nÇà ¹Ø¿¡¼­ x°¡ ÀÖ´Â °÷À¸·Î À̵¿
Tx nÇà À§¿¡¼­ x°¡ ÀÖ´Â °÷À¸·Î À̵¿
; ÁÙ¿¡¼­ ã±â¸¦ °°Àº ¹æÇâÀ¸·Î ¹Ýº¹
, ÁÙ¿¡¼­ ã±â¸¦ ¹Ý´ë ¹æÇâÀ¸·Î ¹Ýº¹
nG, :n Çà À̵¿ n¹ø° ÁÙ·Î À̵¿ (nÀÌ »ý·«µÇ¸é ¸¶Áö¸·ÁÙ·Î) --º¯È¯ÀÚ ÁÖ: ÀÌ
±â´ÉÀº :n À¸·Î Çϴ°ÍÀÌ ÆíÇÕ´Ï´Ù :)
nl ¿­ À̵¿ (nÀÌ »ý·«µÇ¸é óÀ½ ¿­·Î)
*  ÇöÀç Ä¿¼­°¡ À§Ä¡ÇÑ ´Ü¾î ã±â (¾Õ¹æÇâ)
# ÇöÀç Ä¿¼­°¡ À§Ä¡ÇÑ ´Ü¾î ã±â (¿ª¹æÇâ)


1.2.4. ¸¶Å©¸¦ ÀÌ¿ëÇÑ À̵¿

Ã¥À» Àд٠ºÏ¸¶Å©¸¦ Çϴ°Íó·³ ¹®¼­¸¦ ÆíÁýÇÏ´Ù°¡ ƯÁ¤ ºÎºÐÀ» ¸¶Å©ÇÒ¼ö ¼ö ÀÖÀ¸¸é Æí¸®ÇÏ°ÚÁö¿ä. vi¿¡¼­´Â ¿ª½Ã ¾ËÆĺª °³¼ö¸¸Å­ÀÇ ¸¶Å©¸¦ ÇÏ°í ¸¶Å©ÇÑ °÷À̳ª ±× ÁÙ·Î ¹Ù·Î À̵¿ÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿ì¼± ¸¶Å©¸¦ ÇÏ·Á¸é ma ~ mz¸¦ ¸¶Å© ÇÒ °÷¿¡¼­ ÀÔ ·ÂÇÕ´Ï´Ù. ¸¶Å©ÇÑ °÷À¸·Î À̵¿Àº µÎ °¡Áö°¡ °¡´ÉÇÕ´Ï´Ù. Áï ¸¶Å©ÇÑ ÁÙ°ú ¿­ÀÌ ÀÏÄ¡ÇÏ ´Â À̵¿Àº `a ~ `z À¸·Î ¸¶Å©ÇÑ ÁÙÀÇ Ã³À½À¸·Î À̵¿Àº 'a ~ 'z¸¦ ÀÌ¿ëÇÕ´Ï´Ù.

mx ÇöÀç À§Ä¡¸¦ x À̸§ÀÇ ¸¶Å©·Î ÀúÀå	
`x ¸¶Å©ÇÑ À§Ä¡(Çà, ¿­)·Î À̵¿		
'x ¸¶Å©ÇÑ ÁÙ·Î À̵¿			
`` ÀÌÀü¿¡ ¸¶Å©ÇÑ À§Ä¡·Î À̵¿
'' ÀÌÀü¿¡ ¸¶Å©ÇÑ ÁÙ·Î À̵¿	


1.3. ÆÄÀÏ ÀúÀå, ¿­±â, Á¾·á

ÆÄÀÏÀ» ¿­ ¶§ ¿©·¯ °¡Áö ¿É¼ÇÀ» Á־ ¿­ ¼ö ÀÖ½À´Ï´Ù. Áï ƯÁ¤ Çà¿¡ Ä¿¼­ °¡ À§Ä¡Çϵµ·Ï ¿­ ¼ö Àִµ¥, ¸¶Áö¸· ÁÙ¿¡ À§Ä¡ÇÏ·Á¸é vi + [filename] °ú °°ÀÌ ¿­ °í, n¹ø° Çà¿¡ À§Ä¡½ÃÅ°·Á¸é vi +n [filename] °ú °°Àº ¹æ½ÄÀ¸·Î ¿­¸é µË´Ï´Ù. ƯÁ¤ ¹®ÀÚ¿­ÀÌ ÀÖ´Â ÁÙ¿¡ Ä¿¼­¸¦ À§Ä¡½ÃÅ°·Á¸é vi +/pattern [filename]·Î ¿±´Ï´Ù. vi +R [filename] Àº ÆÄÀÏÀ» Àбâ Àü¿ëÀ¸·Î ¿±´Ï´Ù. ÆÄÀÏÀÇ ÀúÀåÀ» »ìÆ캼±î¿ä. ÆÄÀÏÀ» ÀúÀåÇϸ鼭 Á¾·áÇÏ´Â ¹æ¹ýÀº ¸Ç óÀ½¿¡ µÎ °¡Áö¸¦ ¼³¸íÇß¾ú½À´Ï´Ù. :wq ¿Í ZZÀÔ´Ï´Ù. ´Ù¸¥ ÀúÀå¹æ¹ýÀ̶ó¸é :x ÀÌ ¸í·ÉÀº ÆÄ ÀÏÀÌ º¯°æµÇ¾úÀ» ¶§¿¡´Â ÀúÀåÇÏ°í Á¾·á¸¦ ÇÏÁö¸¸ ¾Æ´Ï¸é ±×³É Á¾·á¸¦ ÇÕ´Ï´Ù. ZZ¿Í °°Àº ±â´ÉÀÌ °°ÁÒ. ÀúÀå°ú ¿­ ¶§ ex¸ðµå¿¡¼­ »ç¿ëÇÏ´Â ¸î °¡Áö ±âÈ£¸¦ ¾Ë¾ÆµÎ½Ã¸é Æí ¸®ÇÕ´Ï´Ù. Áï %´Â ÀÛ¼ºÁßÀÎ ÆÄÀϸíÀ» ³ªÅ¸³À´Ï´Ù. µû¶ó¼­ ÇöÀç ÆÄÀÏÀ» ÆíÁý Áß¿¡ ¹é ¾÷ÆÄÀÏÀ» ÀúÀåÇÏ°í ½Í´Ù¸é :w %.bak ÀÌ·± ½ÄÀ¸·Î ÇÏ½Ã¸é ½±°Ô ¹é¾÷À» ¸¸µé ¼ö ÀÖ½À´Ï ´Ù. ±×¸®°í #´Â alternative ÆÄÀÏÀ» ³ªÅ¸³½´Ù°í Çϴµ¥ ÀÌÀü¿¡ ¿­¾î¼­ ÀÛ¼ºÇÑ ÆÄÀÏÀ» ³ªÅ¸³À´Ï´Ù. vi file1 À¸·Î ÆíÁýÀ» ÇÏ´Ù°¡ :e file2·Î ÆíÁý ÆÄÀÏÀ» »õ·Î ¿¬ °æ¿ì ´Ù ½Ã ¸ÕÀúÀÇ file1À» ¿­·Á¸é :e # ¶ó°í ÇÏ½Ã¸é µË´Ï´Ù.

vi [filename] file ¿­±â					
vi [filename1] [filename2 ¿©·¯ ÆÄÀÏ ¿­±â			
view [filename] ¶Ç´Â vi -R [filename]Àбâ Àü¿ëÀ¸·Î ¿­±â
vi + [filename] ¿­°í ¸¶Áö¸· Çà¿¡ À§Ä¡		
vi +n [filename] ÆÄÀÏÀ» ¿­°í n ¹ø° Çà¿¡ À§Ä¡	
vi +/pattern [filename] ÆÐÅÏÀÌ ³ªÅ¸³ª´Â °÷¿¡ Çà À§Ä¡	
ZZ ¶Ç´Â :x º¯°æµÈ ÆÄÀÏÀ̸é ÀúÀåÇÏ°í Á¾·á
:wq ÀúÀåÇÏ°í Á¾·á				
w ÆÄÀÏÀÇ ÀúÀå							
:<¹üÀ§>w [filename] ƯÁ¤ ¹üÀ§¸¸ ÀúÀå		
:<¹üÀ§>w >> [filename] ƯÁ¤ ¹üÀ§¸¦ ´Ù¸¥ÆÄÀÏ¿¡ µ¡ºÙÀÓ	


1.4. Á¤¸® ¹× ¿¬½À¹®Á¦

¸í·É Áß¿¡¼­ ´ëºÎºÐÀÌ case°¡ ´Ù¸£¸é ¹æÇ⸸ ¹Ý´ë·Î ÀÛ¿ëÇÏ´Â °æ¿ì°¡ ¸¹½À´Ï ´Ù. Ff, Oo, Pp, Tt, Nn, XxµîÀº case¿¡ µû¶ó¼­ ¹æÇâÀÌ ¹Ý´ëÀÎ °æ¿ìÀÔ´Ï´Ù. ´Ù¸¥ ¹® Àڵ鵵 case¿¡ µû¶ó¼­ ¾à°£¾¿ Àǹ̰¡ ´Þ¶óÁ³À½À» º¼ ¼ö ÀÖ½À´Ï´Ù. ÀÌÁ¡¿¡ À¯ÀÇÇؼ­ ¸í·ÉÀ» ±â¾ïÇÏ¸é ½±°Ô ±â¾ïÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÚ À§¿¡¼­ ¹è¿î ³»¿ëµéÀ» Á¶ÇÕÇؼ­ Å° ÀÔ·ÂÀ» ¸¸µé¾î º¾½Ã´Ù. ¿¹¹®À» °¡Áö°í ¼³¸íÀ» Çϵµ·Ï ÇÏ°Ú½À´Ï´Ù. ¾Æ·¡¿Í °°Àº ¹®¼­¸¦ ÆíÁýÇÏ°í ÀÖ°í ÇöÀç Ä¿¼­°¡ 4¹ø° ÁÙ ÀÇ sutffÀÇ s¿¡ À§Ä¡ÇØ ÀÖ´Ù°í ÇսôÙ. õõÈ÷ µû¶ó¿À¼¼¿ä. stuff ´Ü¾î Çϳª¸¸ Áö¿ì ·Á¸é dw¸¦ ÀÔ·ÂÇÏ¸é µË´Ï´Ù. ´ÙÀ½ ´Ü¾îÀÎ goes±îÁö °°ÀÌ Áö¿ì·Á¸é dw¸¦ µÎ ¹ø ¹Ýº¹ÇÏ ¸é µÇ°ÚÁö¿ä? 2dw, ȤÀº d2w¸¦ ÀÔ·ÂÇصµ µË´Ï´Ù. ÇöÀç Ä¿¼­ À§Ä¡¿¡¼­ 2w Áï µÎ ´Ü¾î À̵¿ÇÑ °÷±îÁö Áö¿ì´Â °ÍÀÌÁÒ. d´ÙÀ½ÀÌ À̵¿¸í·ÉÀÌ ¿À¸é À̵¿ÇÑ °÷±îÁö Áö¿ì´Â±º ¿ä... ±×·³ ¿ì¸®°¡ ¹è¿î À̵¿¸í·ÉÀ» ÃÑ µ¿¿øÇØ º¸µµ·Ï ÇÏÁÒ. d$ À̸é $°¡ ÇàÀÇ ³¡±î ÁöÀ̴ϱî stuffºÎÅÍ Çà ³¡±îÁö Áö¿öÁö°Ú±º¿ä. ÀÌ ¸í·ÉÀº D¸¦ ÀÔ·ÂÇصµ °°Àº °á°ú¸¦ ³ªÅ¸³À´Ï´Ù. À̹ø¿£ ã±â·Î À̵¿°ú Á¶ÇÕÇØ º¾½Ã´Ù. dflÀ» ÀÔ·ÂÇϸé ù ¹ø° lÀÌ ³ªÅ¸³ª´Â °÷±îÁö Ä¿¼­°¡ À̵¿Çϴϱî l±îÁö Áö¿öÁö°ÚÁÒ? d/bash¸¦ ÀÔ·ÂÇØ º¾½Ã´Ù. 6Çà¿¡ bash¾Õ ±îÁö »èÁ¦°¡ µÇ¾ú³ª¿ä? ÀÚ À̹ø¿£ mark·Îµµ À̵¿ÀÌ °¡´ÉÇÏ´Ù°í ÇßÀ¸´Ï mark¸¦ ÀÌ¿ëÇؼ­ Áö¿öº¾½Ã´Ù. 7ÇàÀÇ someÀÇ sÀ§¿¡¼­ ma¶ó°í ÇսôÙ. ´Ù½Ã stuffÀÇ s·Î µ¹¾Æ°¡¼­ d`a¶ó°í ÀÔ·ÂÇØ º¸ ¼¼¿ä. »ý°¢Çß´ø °Íó·³ ³ª¿Ô´Ù¸é ´Ù¸¥ Á¶ÇÕµéÀ» »ý°¢ÇØ º¸½Ã±æ ¹Ù¶ø´Ï´Ù. º¹»ç´Â d´ë ½Å y¸¦ ³Ö¾îÁÖ¸é µË´Ï´Ù. ±×·³ ¿¬½À¹®Á¦¸¦ Ç®¾îº¸¼¼¿ä.

# /etc/bashrc
# System wide functions and aliases
# Environment stuff goes in /etc/profile

# For some unknown reason bash refuses to inherit
# PS1 in some circumstances that I can't figure out.
# Putting PS1 here ensures that it gets loaded every time.		
PS1=[\u@\h \W]\\$ 
alias which=type -path
   ¿¬½À¹®Á¦ 2
¹®Á¦ 1) ÇöÀç Ä¿¼­ À§Ä¡°¡ unknownÀÇ u¿¡ ÀÖ´Ù°í ÇÏÀÚ. ´Ü °¢°¢ ¹®Á¦¿¡ °á°ú´Â 
´ÙÀ½ ¹®Á¦¿¡ ¿µÇâÀ» ¹ÌÄ¡Áö ¾Ê´Â´Ù°í °¡Á¤... 

ÇöÀçÀ§Ä¡¿¡¼­ ±×ÁÙ ³¡±îÁö »èÁ¦, º¹»ç 
4ÁÙ º¹»ç ÈÄ ¸¶Áö¸· ÁÙ ¾Æ·¡¿¡¼­ »ðÀÔ, º¹»ç 
ÇöÀç À§Ä¡¿¡¼­ figure outÀÇ out¾Õ ±îÁö »èÁ¦, º¹»ç 
ÇöÀç ÁÙ¿¡¼­ ¸¶Áö¸· ÁÙ±îÁö »èÁ¦, º¹»ç 
ÇöÀç À§Ä¡¿¡¼­ ÁÙÀÇ Ã³À½±îÁö »èÁ¦, º¹»ç 
ÇöÀç À§Ä¡¿¡¼­ 25¿­±îÁö¸¸ »èÁ¦, º¹»ç 

¹®Á¦ 2)
1.À§¿¡¼­ 3¹ø° Çà°ú 4¹ø° ÇàÀ» ÇÕÃĶó. 

»èÁ¦ : d$, D  º¹»ç : y$ 
4yyGp 
»èÁ¦ : d/out º¹»ç : y/out 
»èÁ¦ : dG, 6dd º¹»ç : yG, 6yy 
»èÁ¦ : d0, d|, d1|, 3db, d3b, d?#, dF# º¹»ç : y0, y|, y1|, 3yb, y3b, 
y?#, dF# 
»èÁ¦ : d25| º¹»ç : y25| 

2. µÎ ÁÙÀ» ÇÕÄ¡´Â ¸í·ÉÀ» Ç¥¿¡¼­ ã¾Æ¼­ Çغ¸µµ·Ï.


1. ã±â, ġȯ

vi¿¡¼­ ã±â ¸í·É°ú ġȯ ¸í·ÉÀº °ÅÀÇ ¿¹¼ú¿¡ °¡±õ½À´Ï´Ù. °ÅÀÇ ¸ðµç ¹®ÀÚ¿­ À» ã°í ´Ù¸¥ ¹®ÀÚ¿­·Î ´ëüÇÒ ¼ö ÀÖ´Â µí ÇÕ´Ï´Ù. ±× ¸¸Å­ ¸í·É¿¡ ±â´Éµµ ¸¹°í »ç¿ë Çϱ⵵ Á¶±ÝÀº º¹ÀâÇÕ´Ï´Ù. ã±â¿Í ġȯÀº ex ¸ðµå¿¡¼­ ÇàÇØÁý´Ï´Ù. ¿ì¼±Àº Á¤±Ô Ç¥ Çö½ÄÀ» ¾Ë¾ÆµÎ½Ã¸é ã°íÀÚ ÇÏ´Â ÆÐÅÏÀ» ½±°Ô ã´Âµ¥ ¸¹Àº µµ¿òÀÌ µË´Ï´Ù.


1.1. Á¤±ÔÇ¥Çö½Ä

Á¤±ÔÇ¥Çö½ÄÀº vimÀÇ °æ¿ì :help¶ó°í ÀÔ·ÂÇÏ¸é ³ª¿À´Â Á¤±ÔÇ¥Çö½Ä ±âÈ£°¡ ¼³ ¸íÀÌ Àß µÇ¾îÀÖ½À´Ï´Ù. Á¤±ÔÇ¥Çö½ÄÀº °¢ÀÚ °øºÎÇÏ½Ã±æ ¹Ù¶ø´Ï´Ù. ¿©±â¼­´Â ¸Å¿ì °£´Ü ÇÏ°Ô ±âÈ£ ¼³¸í°ú °£´ÜÇÑ ¿¹¸¸ µé°í ³Ñ¾î°¡°Ú½À´Ï´Ù. ÀÚ¼¼È÷ Çϸé À̰͸¸ °¡Áö°íµµ ÇÑÂüÀ» ¼³¸íÇÏ¿©¾ß Çϴϱî¿ä... ¾Æ·¡ÀÇ Ç¥¿¡ º¹ÀâÇÑ ±âÈ£µéÀÌ ¸¹ÀÌ ³ª¿ÍÀִµ¥¿ä. ¿ì¼± ., ^, \+, *, [], \< \>ÀÇ ±âÈ£´Â ¹Ýµå½Ã ¾Æ¼Å¾ß ÇÕ´Ï´Ù. Á¤¸» ±âº»ÀûÀÎ ±âÈ£µéÀÌ°í ¸î °³´Â shell»óÀ̳ª ´Ù¸¥ °÷¿¡¼­µµ »ç¿ëÇÏ½Ç ¼ö ÀÖ´Â °ÍµéÀÌ´Ï±î ¾Ë¾ÆµÎ½Ã¸é µµ¿òÀÌ µÇ½Ç °Ì´Ï´Ù. ÀÌ ±â È£µéÀ» °£·«È÷ ¼³¸íÇϸé .´Â ÇϳªÀÇ ¸ðµç ¹®ÀÚ¸¦ ³ªÅ¸³À´Ï´Ù. .¶ó°í Çϸé ÀÌ ±âÈ£¿¡ ¾î¶°ÇÑ ÇÑ ¹®ÀÚ°¡ ´ëÄ¡µÉ ¼ö ÀÖ´Â °ÍÀÌÁö¿ä. ^Àº ´ë°ýÈ£ ¾È°ú ¹Û¿¡¼­ Àǹ̰¡ ´Þ¶óÁö ´Â µ¥ ´ë°ýÈ£ ¾È¿¡¼­´Â notÀÇ Àǹ̸¦ °¡Áö°í, ¹Û¿¡¼­´Â À§¿¡¼­ ¸í·É¸ðµå¿¡¼­ ^±âÈ£ÀÇ ¿ëµµ¿Í ºñ½ÁÇÏ°Ô ÇàÀÇ Ã³À½À» ³ªÅ¸³À´Ï´Ù. \+´Â 1ȸ ÀÌ»ó ³ªÅ¸³­´Ù´Â °ÍÀ» ÀǹÌÇÕ´Ï ´Ù. *µµ ºñ½ÁÇѵ¥ ÀÌ°ÍÀº 0¹ø ÀÌ»ó Áï ³ªÅ¸³¯ ¼öµµ ÀÖ°í ±×·¸Áö ¾ÊÀ» ¼öµµ ÀÖ½À´Ï´Ù. ¸¶Áö¸·À¸·Î []Àº ³ªÅ¸³¯ ÇÑ ¹®ÀÚÀÇ ¹üÀ§¸¦ ÁöÁ¤ÇÒ ¶§ »ç¿ëµË´Ï´Ù. Áï [abc]´Â a ¶Ç´Â b ¶Ç´Â cÀÔ´Ï´Ù. [a-z]´Â a¿¡¼­ zÁß¿¡¼­ ÇÑ ¹®ÀÚ¸¦ ³ªÅ¸³»°ÚÁö¿ä. ±×·³ ÀÌ ±âÈ£µéÀ» °¡Áö°í ã°íÀÚ ÇÏ´Â ¹®ÀÚ¿­ÀÇ ÆÐÅÏÀ» ¸¸µé¾î º¾½Ã´Ù. The ³ª the¸¦ ±âÈ£·Î ³ªÅ¸³»¸é [Tt]he °¡ µË´Ï´Ù. ¸ÂÁÒ? []°¡ Á¤ÇØÁø ¹üÀ§¿¡¼­ ÇÑ ¹®ÀÚ¸¦ ³ªÅ¸³½´Ù°í ÇßÀ¸´Ï±î¿ä. ±×·³ ÇàÀÇ ¸Ç óÀ½¿¡ ³ªÅ¸³ª´Â The³ª the¸¦ ãÀ¸·Á¸é ¾î¶»°Ô ÇØ¾ß ÇÒ±î¿ä? ^[Tt]he°¡ µÇ°ÚÁÒ. À̹ø¿£ th·Î ½ÃÀÛÇÏ´Â ¾Æ¹« ¹®ÀÚ¸¦ ¸¸µé¾î º¾½Ã´Ù. th·Î ½ÃÀÛÇϴϱî th¸¦ ¾Õ¿¡ ½áÁÖ°í µÚ¿¡ ¾Æ¹« ¹®ÀÚ³ª ³ª¿ÀµçÁö ¾È³ª¿ÀµçÁö »ó°üÀÌ ¾øÁÒ? th.* ÀÌ·¸°Ô °Ë»öÀ» Çϸé the, this, that µîµîÀÌ °Ë»öÀÌ µÇÁö¸¸ althoughµîµµ °Ë»öÀÌ µË´Ï´Ù. th·Î ½ÃÀÛÇÏ´Â ¹®ÀÚ¸¸ °Ë»öÀ» ÇÏ·Á¸é ´Ü¾îÀÇ ½ÃÀÛ°ú ³¡À» ¸í½ÃÇØÁÖ¾î ¾ß°ÚÁÒ. ±×·¡¼­ ÇÊ¿äÇÑ °ÍÀÌ \< \>ÀÔ´Ï´Ù. ÀÌ »çÀÌ¿¡ À§ÀÇ Ç¥Çö½ÄÀ» ³Ö¾î¼­ °Ë»öÀ» Çϸé the, this, thatµî°ú °°ÀÌ th·Î ½ÃÀÛÇÏ´Â ¹®ÀÚ¿­À» °Ë»öÇÏ°Ô µË´Ï´Ù. *´ë½Å¿¡ \+¸¦ ³ÖÀ¸¸é ¾î¶»°Ô ´Ù¸¦±î¿ä? th ÀÇ °æ¿ì *¶ó¸é ÇØ´çµÇ°ÚÁö¸¸ \+¶ó¸é ÇØ´çµÇÁö ¾Ê½À ´Ï´Ù. ÀÌ»óÀÌ °£´ÜÇÑ Á¤±Ô Ç¥Çö½Ä¿¡ ´ëÇÑ ±âÈ£ÀÌ°í ÀÌÁ¦ º»°ÝÀûÀ¸·Î °Ë»ö°ú ġȯÀ» ÇØ º¸µµ·Ï ÇÏÁÒ.

(ÀÌ ¾ÈÀº ¿ø·¡ ¹®ÀÚ¸¦ ³ªÅ¸³»´Â ½Ä)
., (\.) ¾Æ¹« ¹®ÀÚ³ª ÇÑ ¹®ÀÚ
^, (^) ÇàÀÇ Ã³À½¿¡ ½ÃÀÛ				
$, ($) ÇàÀÇ ³¡À» ÀǹÌ			
\<, (\<) ´Ü¾îÀÇ ½ÃÀÛ					
\>, (\>) ´Ü¾îÀÇ ³¡			
[a-z], (\[a-z]) ÁÖ¾îÁø ¹üÀ§ ³»¿¡¼­ÀÇ ÇÑ ¹®ÀÚ		
[^a-z], (\[^a-z]) ÁÖ¾îÁø ¹øÀ§ ¹Û¿¡¼­ÀÇ ÇÑ ¹®ÀÚ		
\e, (\e) Esc							
\t, (\t) Tab					
\r, (\r) CR							
\b, (\b) BS						
*, (\*) 0 ¹ø ȤÀº 1¹ø ÀÌ»ó ³ªÅ¸³²
\+, (\+) Àû¾îµµ ÇÑ ¹ø ÀÌ»ó ³ªÅ¸³²	
\l, (\l) ¶Ç´Â 			
POSIX character classes¶ó´Â °Íµµ Àִµ¥ À̰͵µ Á¤±ÔÇ¥Çö½Ä ³»¿¡¼­ ¾µ ¼ö ÀÖ½À´Ï´Ù. ÀÌ·¯ÇÑ »õ·Î¿î ±âÈ£µéÀº ¸ðµÎ À§¿¡¼­ Á¦°¡ ¼³¸íÇÑ °Í¸¸À¸·Îµµ ¸¸µé ¼ö ÀÖ Áö¸¸ ½ÄÀ» ª°Ô Çϱâ À§Çؼ­ ¹Ì¸® ¸¸µé¾î ³õÀº °ÍÀ̶ó°í »ý°¢ÇÏ½Ã¸é µË´Ï´Ù. ¿¹¸¦ µé ¾î µÚ¿¡ È®Àå Á¤±ÔÇ¥Çö½Ä¿¡ \p¸¦ Á¤±ÔÇ¥Çö½ÄÀ¸·Î ÇÏ·Á¸é [0-9a-zA-Z \t][0-9a-zA-Z \t]* ¹¹ ÀÌ·± ½ÄÀ¸·Î Ç¥½ÃÇؾ߰ÚÁÒ(Ʋ¸± ¼öµµ ÀÖ½À´Ï´Ù). Á¤±ÔÇ¥Çö½Ä¿¡ ÀڽŠÀÖ´Â ºÐ Àº ¸ð¸£°ÚÁö¸¸ ´ëºÎºÐÀº ¸¹ÀÌ »ý°¢ÇÏ¿©¾ß ÇÏ°í Àú ó·³ Ȥ½Ã »©¸ÔÀº ¹®ÀÚ°¡ »ý±æÁöµµ ¸ð¸£±â ¶§¹®¿¡ ÀÌ·± ½ÄÀ¸·Î ¶Ç ´Ù¸¥ ±âÈ£¸¦ ¸¸µé¾î Ç¥ÇöÇÏ´Â °ÍÀÌÁÒ.
[:alnum:]	¾ËÆĺª, ¼ýÀÚ
[:alpha:]	¾ËÆĺª
[:blank:]	°ø¹é¹®ÀÚ Åǹ®ÀÚ Æ÷ÇÔ
[:cntrl:]	control ¹®ÀÚ
[:digit:]	¼ýÀÚ
[:graph:]	°ø¹é¹®ÀÚ¸¦ Á¦¿ÜÇÑ
[:lower:]	¼Ò¹®ÀÚ
[:upper:]	´ë¹®ÀÚ
[:print:]	ÇÁ¸°Æ®°¡ °¡´ÉÇÑ ¹®ÀÚ °ø¹é Æ÷ÇÔ
[:punct:]	±¸µÎÁ¡¹®ÀÚ ) ( , . " ' : ; - µî
[:space:]	°ø¹é¹®ÀÚ
[:xdigit:]	16Áø¼ö ¼ýÀÚ


1.2. ã±â

´Ü¼øÈ÷ ÆÐÅϸ¸ ã´Â °Å¶ó¸é ¸í·É¸ðµå¿¡¼­ /pattern ¶Ç´Â ?pattern °ú n, NÅ° ¸¦ ÀÌ¿ëÇؼ­ ã´Â °ÍÀÌ Æí¸®ÇÕ´Ï´Ù. ex¸ðµå¿¡¼­ÀÇ ÆÐÅÏÀ» ã±â À§Çؼ­´Â :/pattern/ Çü½ÄÀ» »ç¿ëÇÕ´Ï´Ù. ex¸ðµå¿¡ ÀÌ Ã£±â ¸í·ÉÀÌ ÀÖÀ½À¸·Î Çؼ­ ´Ù¸¥ ex¸í·Éµé°ú Á¶ÇÕÀÌ °¡´ÉÅä·Ï ÇÏ´Â °Í °°½À´Ï´Ù. ex¸ðµå°¡ Çà´ÜÀ§·Î µ¿ÀÛÇÑ´Ù´Â °ÍÀº ¾Ë°í °è½Ã¸®¶ó »ý°¢ ÇÕ´Ï´Ù. :/pattern/Çü½ÄÀ¸·Î ÀÔ·ÂÀ» Çϸé ÆÐÅÏÀÌ ÀÖ´Â ÇàÀ¸·Î À̵¿À» ÇÏÁö¿ä. ÀÌ°ÍÀÌ ¾î¶»°Ô ¾²ÀÏ ¼ö ÀÖÀ»Áö »ý°¢ÇØ º¸½Ã±â ¹Ù¶ø´Ï´Ù. ^^ À§¿¡¼­Ã³·³ ã°Ô µÇ¸é :/pattern/ ãÀº °÷À¸·Î À̵¿¸¸ ÇÏ°Ô µË´Ï´Ù. ¿©±â¿¡ ¸î °¡Áö ¸í·É°ú ¿É¼ÇÀ» µ¡ºÙ¿©¼­ Á¶±Ý º¹ÀâÇÑ Ã£±â¸¦ ÇÒ ¼ö ÀÖ½À´Ï´Ù. °£´ÜÇÑ °ÍºÎÅÍ ¿¹¸¦ µéÁÒ. :=¸¦ ÀÔ·ÂÇØ º¾½Ã´Ù. ÇöÀç Ä¿¼­°¡ À§Ä¡ÇÑ ÇàÀÇ ¹øÈ£°¡ Ãâ·ÂÀÌ µË´Ï´Ù. :g/pattern/À» ÇØ º¾½Ã´Ù. ÆÐÅÏÀÌ ³ªÅ¸³­ ÁÙÀÇ ³»¿ëÀ» ¸ðµÎ Ç¥½ÃÇϸ鼭 ¸¶Áö¸·¿¡ ³ª Ÿ³­ ÇàÀ¸·Î À̵¿ÇÒ °ÍÀÔ´Ï´Ù. ´Ù½Ã :/pattern/= À̳ª :g/pattern/=À» ÀÔ·ÂÇØ º¾½Ã ´Ù. ¾Õ¿¡ °ÍÀº óÀ½ patternÀÌ ³ªÅ¸³­ Çà ¹øÈ£¸¸ Ç¥½Ã¸¦ ÇÕ´Ï´Ù. µÎ ¹ø° °ÍÀº patternÀÌ ³ªÅ¸³ª´Â Çà ¹øÈ£¸¦ ¸ðµÎ Ç¥½Ã¸¦ ÇÕ´Ï´Ù.


1.3. ġȯ

Á¦°¡ vi¸¦ ¾²¸é¼­ °¨µ¿(TT)À» ¹Þ´Â °ÍÀÌ ¹Ù·Î ÀÌ Ä¡È¯ ¸í·ÉÀÇ °­·ÂÇÔÀÔ´Ï´Ù. ÀϹÝÀûÀΠġȯ¹®ÀÇ Çü½ÄÀº ´Ù¸¥ ex¸í·Éµé°ú ¸¶Âù°¡Áö·Î [¹üÀ§] /old/new/ [¿É¼Ç] ÀÇ Çü½ÄÀ» »ç¿ëÇÕ´Ï´Ù. ¿©±â¼­ ÇÑ°¡Áö º¸Ãæ ¼³¸íÀ» ÇÏ°í ³Ñ¾î°¡¾ß ÇÏ´Â °ÍÀÌ ÀÖ½À´Ï´Ù. hold buffer ¶ó´Â °ÍÀε¥ °Ë»öÀ» Çϸ鼭 °Ë»öµÈ ¹®ÀÚ¿­À» º¸°üÇÏ´Â ÀÏÁ¾ÀÇ ±â¾ïÀå¼ÒÀÔ´Ï´Ù. »ç¿ë ¹ýÀº °Ë»öÇÒ ¹®ÀÚ¿­À» \( \)·Î µÑ·¯½Î¸é µË´Ï´Ù. ±×·³ ¾Õ¿¡¼­ ¼ø¼­´ë·Î \1 ~ \9±îÁö ÀÇ ¹öÆÛ¿¡ ãÀº ¹®ÀÚ¿­ÀÌ º¹»ç°¡ µÇÁö¿ä. ºñ½ÁÇÑ ±âÈ£·Î &°¡ Àִµ¥ À̴ ã¾Æ³½ ¹® ÀÚ¿­À» ³ªÅ¸³À´Ï´Ù. ¶Ç ÇÑ°¡Áö ~±âÈ£Àε¥ ÀÌ°ÍÀº ¹Ù·Î Àü¿¡ ¼öÇàÇÑ °Ë»öÀ̳ª ġȯÀÇ Á¤±ÔÇ¥Çö½ÄÀ» ³ªÅ¸³À´Ï´Ù. ¿¹¸¦ µé¾î¼­ ¼³¸íÇØ º¸µµ·Ï ÇÏÁÒ. ¿ì¼± ¹®¼­°¡ Çϳª ÇÊ¿äÇϱº¿ä... ÀÌÀü¿¡ »ç¿ëÇÑ ¹®¼­¸¦ ´Ù½Ã »ç¿ëÇϵµ·Ï ÇÏÁÒ.

# /etc/bashrc

# System wide functions and aliases
# Environment stuff goes in /etc/profile

# For some unknown reason bash refuses to inherit
# PS1 in some circumstances that I can't figure out.
# Putting PS1 here ensures that it gets loaded every time.
PS1=[\u@\h \W]\\$ 

alias which=type -path
:%s/#/_&_/g¶ó°í Çϸé #°¡ ¸ðµÎ _#_¹Ù²î¾î ÀÖÀ» °ÍÀÔ´Ï´Ù. ã´Â ¹®ÀÚ¿­ÀÌ ±æ ¾îÁö´Â °æ¿ì¿¡ &¸¦ »ç¿ëÇÏ¸é °£´ÜÇÏ°ÚÁö¿ä? À̹ø¿£ À§¿¡¼­ ¾ð±ÞÇÑ hold buffer¸¦ »ç ¿ëÇØ º¾½Ã´Ù. :%s/\(goes\) \(in\)/\2 \1/g ÀÌ·¸°Ô ÀÔ·ÂÇÏ¸é ¾î¶»°Ô ¹Ù²ð±î¿ä? goes inÀ» ã¾Æ¼­ °¢°¢ hold ¹öÆÛ 1, 2 ¿¡ ÀúÀåÀ» ÇØ µÓ´Ï´Ù. µÚ¿¡¼­ ġȯÇÒ ¶§ ¹öÆÛ À̸§ ÀÌ ¼ø¼­°¡ ¹Ù²î¾î ÀÖÀ¸¹Ç·Î ±× ³»¿ëÀÎ in goes¸¦ Ãâ·ÂÇÏ°Ô µË´Ï´Ù.
# Environment stuff goes in /etc/profile ¸í·É Àü 
# Environment stuff in goes /etc/profile ¸í·É ÈÄ


1.4. Á¤¸® ¹× ¿¬½À¹®Á¦

¸î °¡Áö ¼³¸íÀ» ÇÏÁö ¾ÊÀº °ÍµéÀÌ ÀÖ½À´Ï´Ù. À§ÀÇ ¿¹Á¦¿¡¼­Ã³·³ ¼³Á¤ ÆÄÀϵé Àº ¹®¼­ ³»¿¡ / (¿ª½½·¡½¬)±âÈ£µéÀÌ ¸¹ÀÌ À־ ÆÐÅÏÀ» ã´Âµ¥ ¾²´Â Çü½ÄÀÇ /°ú È¥ µ¿µÉ ¼ö ÀÖ½À´Ï´Ù. ¹°·Ð ¿ø·¡ÀÇ ¹®ÀÚ¸¦ ÀǹÌÇÒ ¶§´Â \/·Î ¸ðµÎ ´ëÄ¡ÇÏ¸é µÇÁö¸¸ ÀÌ·± °æ¿ì¿¡´Â Çê°¥¸®ÁÒ. /´ë½Å ±âÈ£³ª :À» »ç¿ëÇؼ­ °¢°¢À» ±¸ºÐ Áþ½À´Ï´Ù. :%s:/etc/:/etc/local/:g¸¦ Çϸé /etc/¸¦ /etc/local/·Î ġȯÀ» ÇÏ°Ô µÇÁÒ. À§¿¡¼­ ¹è¿î °ÍµéÀÇ Á¶ÇÕÀ¸·Îµµ ¸¹Àº ÆÐÅÏÀ» ã°í ¼öÁ¤À» ÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾îº¸µµ·Ï ÇÏÁö¿ä. ¿¬½À¹®Á¦·Î ´ÙÀ½ÀÌ ¾î¶² ÀÏÀ» ÇÒÁö »ý°¢ÇØ º¸½Ã°í Ç®À̸¦ º¸½Ã±â ¹Ù¶ø´Ï´Ù. ¾Æ·¡ (1)°ú (2) ¹øÀº À§¿¡¼­ ¾ð±ÞÀ» ÇÏÁö ¾Ê¾ÒÁö¸¸ Çغ¸½Ã¸é ¾î¶² Àǹ̸¦ °®´ÂÁö ¾Æ½Ç ¼ö ÀÖÀ¸¸®¶ó »ý°¢ÇÕ´Ï´Ù.

  ¿¬½À¹®Á¦ 3. ´ÙÀ½ ġȯ¹®ÀÇ Àǹ̸¦ ¼³¸íÇϽÃÁÒ.... ^^ 
    
:%s/.*/\U&/g 
:%s/.*/\L&/g 
:%s/\(.*\) *$/\1/ 
:%s/^ \+\(.*\)/\1/ 
:%s/^ \+\|^\t\+\(.*\)/\1/ 
:%s/^M//g (¿©±â¼­ ^MÀº CTRL-VÈÄ¿¡ [ENTER]¸¦ ´©¸¥ °ª) ´ÙÀ½ 
¸í·ÉÀÇ Àǹ̸¦ ¼³¸íÇϼ¼¿ä. 
:n out.txt | g/pattern/, .w >> out.txt (out.txtÈ­ÀÏÀÌ Á¸ÀçÇØ¾ß 
ÇÕ´Ï´Ù.) Âü°í) :g/pattern/y A 
:g/pattern/d 


2. The power of ex

Á¦°¡ »ý°¢Çϱ⿡ vi°¡ °­·ÂÇÑ ¿¡µðÅÍ°¡ µÉ ¼ö ÀÖ¾ú´ø °¡Àå Å« ÀÌÀ¯°¡ ÀÌ ex ¸ðµå ¶§¹®ÀÎ µíÇÕ´Ï´Ù. ex¸ðµå´Â vi¿¡ ¿©·¯ °¡Áö È®ÀåµÈ ±â´É°ú ¿ÜºÎ ÇÁ·Î±×·¥À» »ç ¿ëÇÒ ¼ö ÀÖ´Â Åë·Î¸¦ Á¦°øÇÕ´Ï´Ù. ¼¿ ¸í·ÉÀº ±âº»ÀÌ°í, À¯´Ð½ºÀÇ ±âº»ÀûÀÌ°í À¯¿ëÇÑ À¯Æ¿¸®Æ¼¸¦ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.

    ex ¸í·ÉÀÇ Çü½Ä
	:<¹üÀ§> ex¸í·É¾î [| ¸í·É ...]
¿ì¼± ex¸í·ÉÀº Çà ´ÜÀ§·Î ¸í·ÉÀÌ ½ÇÇàµÈ´Ù°í ¾Ë¾ÆµÎ½Ã±â ¹Ù¶ø´Ï´Ù.(¿ø·¡ ex ¿¡µðÅÍ°¡ ¶óÀδÜÀ§ ¿¡µðÅÍÁÒ) ÀÌ·¸°Ô ÀÌÇØÇÏ´Â °ÍÀÌ °¡Àå ½±½À´Ï´Ù. ¹üÀ§ ¼³Á¤µµ ¹° ·Ð Çà ´ÜÀ§·Î ¼³Á¤ÀÌ µÇ°ÚÁö¿ä? ¹üÀ§¸¦ ¼³Á¤ÇÒ ¶§´Â ,·Î ±¸ºÐÇؼ­ ½ÃÀÛ°ú ³¡À» ³ªÅ¸ ³À´Ï´Ù. Áï 1, 10 À̸é 1~10Çà¿¡ ´ëÇؼ­ ¸í·ÉÀ» Àû¿ëÇÑ´Ù´Â °ÍÀÔ´Ï´Ù. ¸¸¾à¿¡ »ý·«ÇÏ ¸é ÇöÀç À§Ä¡ÇÑ ÇàÀÌ ÇØ´çµË´Ï´Ù. Á¦°¡ À§¿¡¼­ ã±â ¸í·ÉÀÌ ¾î¶»°Ô »ç¿ëµÉÁö »ý°¢ÇØ º¸¶ó°í Çß´ø ¾ê±â°¡ ±â¾ïÀÌ ³ª½Ê´Ï±î? ¹üÀ§ ³»¿¡¼­ ¸í·ÉÀ» ¼öÇàÇÒ ¼öµµ ÀÖÁö¸¸ ¾î¶² ã±â¸¦ ÇÑ ÈÄ¿¡ ±× ÁÙ¿¡, ȤÀº ¾î¶² óÀ½ ÁÙÀ» ÁÖ¾îÁÖ°í ã±â°¡ ¼º°øÇÑ ÁÙ±îÁö ex¸í ·ÉÀ» ¼öÇàÇÒ ¼ö ÀÖ´Ù´Â ¾ê±â°¡ µÇ´Â °ÅÁÒ... ÀÚ¼¼ÇÑ °ÍÀº ¿ª½Ã µÚ¿¡¼­ ³ª¿À´Â ¿¹¿¡¼­ ã¾Æº¸½Ã±â ¹Ù¶ø´Ï´Ù.
:d	»èÁ¦
:co, t	º¹»ç
:m	À̵¿
:pu	ºÙ¿© ³Ö±â
:y	¹öÆÛ¿¡ º¹»ç
:=	ÇöÀç Çà¹øÈ£ Ç¥½Ã(¹öÀü¿¡ µû¶ó Ʋ¸²)
:p	ÁÙÀÇ ³»¿ëÀ» Ç¥½Ã
¿¹¸¦ µé¾î°¡¸é¼­ ¼³¸íÀ» ÇÏ°Ú½À´Ï´Ù. :1, $d (¹®¼­ ÀüüÀÇ »èÁ¦) $±âÈ£´Â ¹® ¼­ÀÇ ³¡À» ³ªÅ¸³À´Ï´Ù. Á¤±ÔÇ¥Çö½ÄÀÇ ¸¶Áö¸·¿¡¼­´Â ÁÙÀÇ ³¡À» ³ªÅ¸³»°í ¸í·É¸ðµå¿¡¼­ µµ ÁÙÀÇ ³¡À» ³ªÅ¸³»ÁÒ. $±âÈ£¸¦ ¾Ë¾ÆµÎ½Ã¶ó ¿¹¸¦ µé¾ú½À´Ï´Ù. :%d (¹®¼­ ÀüüÀÇ »è Á¦) %±âÈ£´Â ¹®¼­ Àüü¸¦ ³ªÅ¸³À´Ï´Ù. À§¿¡¼­ ¾´ ½Ä°ú °°Àº ÀÏÀ» ÇÏÁö¸¸ ÈξÀ ª¾ÆÁ³ ÁÒ. :.,+10y (ÇöÀç À§Ä¡¿¡¼­ 10Çà ¾Æ·¡±îÁö ¹öÆÛ¿¡ º¹»ç) ¹öÆÛ¿¡ º¹»ç¸¸ ÇÕ´Ï´Ù. :.,+10y|$|pu (ÇöÀç À§Ä¡¿¡¼­ 10Çà ¾Æ·¡±îÁö ¹öÆÛ¿¡ º¹»ç, ¸¶Áö¸·ÁÙ·Î À̵¿, ºÙ¿©³Ö ±â) | ±âÈ£¸¦ »ç¿ëÇϸé ÇÑ Çà¿¡ ¿©·¯ °³ÀÇ ex¸í·ÉÀ» ½áÁÙ ¼ö ÀÖ½À´Ï´Ù. :.m$ (ÇöÀç ÁÙÀ» Àß¶ó³½ ÈÄ ÁÙÀÇ ¸Ç ¸¶Áö¸·¿¡ Ãß°¡) :-, +y (ÇöÀç ÁÙ°ú À§, ¾Æ·¡ ÁÙÀ» º¹»ç) +- ±âÈ£¸¦ »ç¿ëÇÏ´Â ¹æ¹ýÀ» ¼³¸íÇÏ°í ÀÖ½À´Ï´Ù. ÇöÀç Çà¿¡¼­ -´Â À§ÂÊÀ» +´Â ¾Æ·¡ÂÊ Çà À» ÀǹÌÇÏÁÒ. :.,'xd (ÇöÀç ÁÙ¿¡¼­ x¿¡ ¸¶Å©ÇÑ ÁÙ±îÁö »èÁ¦) ¸¶Å©¸¦ ÅëÇÑ À̵¿ Áß¿¡ ¼­µµ 'X ·Î À̵¿Çϸé Çà´ÜÀ§·Î À̵¿ÇÏ´Â °ÍÀ» À§¿¡¼­ ¼³¸íÀ» Çß¾úÁÒ. ex¸ðµå¿¡¼­µµ ¹Ù·Î ¸¶Å©¸¦ ÀÌ¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ''µîÀÇ ±âÈ£µµ ´ç¿¬È÷ »ç¿ëÀÌ °¡´ÉÇÕ´Ï´Ù. ´Ü Çà´Ü À§´Ï±î `´Â ¹«È¿ÇÕ´Ï´Ù. :., /pattern/d (ÇöÀç ÁÙ¿¡¼­ patternÀÌ Ã³À½ ³ªÅ¸³ª´Â ÁÙ±î Áö »èÁ¦) °Ë»öÀ» ÀÌ¿ëÇÏ¿© ¹üÀ§¸¦ ÁöÁ¤ÇÏ´Â ¹æ¹ýÀÔ´Ï´Ù. ´Ü ÀÌ·¸°Ô Áö¿ì¸é ÆÐÅÏÀÌ ³ª Ÿ³­ ÁÙ±îÁö »èÁ¦µÈ´Ù´Â Á¡¿¡ À¯ÀÇÇϽñ⠹ٶø´Ï´Ù. :.y a (ÇöÀç ÁÙÀ» named buffer a¿¡ ÀúÀå) named bufferµµ ¿ª½Ã »ç¿ëÀÌ °¡´ÉÇÕ´Ï´Ù. º¹»ç ÇÒ ¹öÆÛ¸¦ ÁöÁ¤ÇÏ¿© yanking À» ÇÏ¿´½À´Ï´Ù. À̸¦ ºÒ·¯³¾ ¶§¿¡´Â :pu a (¹öÆÛ a¿¡ º¹»çµÈ °ÍÀ» ºÙÀ̱â) ¶Ç´Â ap ·Î ÇÏ¸é µÇ°ÚÁÒ... :.co$ (ÇöÀç ÁÙÀ» º¹»çÇؼ­ ÁÙÀÇ ¸¶Áö¸·¿¡ ºÙÀ̱â) :/pattern/= (ÆÐÅÏÀÌ ³ªÅ¸³­ ÁÙ ¹øÈ£¸¦ Ç¥½Ã), :10+20d (10¹ø° ÁÙ¿¡¼­ +20±îÁö »èÁ¦) ÀÌ´Â ÇöÀç À§Ä¡°¡ 10 Çà ÀÌ¿ÜÀÏ ¶§ ÁöÁ¤ÇÑ 10ÁÙ¿¡¼­ +20±îÁö Áö¿î´Ù´Â ÀǹÌÀÔ´Ï´Ù. :10,+20d·Î ÇÏ¸é ¹¹°¡ ´Þ¶óÁú±î¿ä? ÀÌ·¸°Ô Çϸé 10Çà¿¡¼­ ÇöÀç Çà¿¡¼­ 20À» ´õÇÑ ÁÙ±îÁö Áö¿î´Ù ´Â Àǹ̰¡ µË´Ï´Ù. ´õ ±íÀÌ µé¾î°¡½Ã°í ½ÍÀ¸½Å ºÐÀº ¹®¼­¸¦ ÆíÁýÇÒ ¶§ ex¸ðµå·Î ÆíÁý À» Çغ¸½Ã±â ¹Ù¶ø´Ï´Ù. ex [filename]ÇÏ½Ã¸é µË´Ï´Ù. ÀÌ·¸°Ô Çغ¸½Ã¸é Á» °©°©ÇÏ°ÚÁö ¸¸ ex¸í·É¾î¸¦ È®½ÇÈ÷ ÀÍÈ÷½Ç ¼ö ÀÖÀ¸¸®¶ó »ý°¢ÇÕ´Ï´Ù.


2.1. abbreviations

ÀÌ ±â´Éµµ Àß ¾²¸é ¸Å¿ì À¯¿ëÇÑ ±â´ÉÀÔ´Ï´Ù. ±ä ¹®ÀÚ¿­À» ¾à¾î ÀÔ·ÂÀ¸·Î ¾ò ¾î³»´Â °ÍÀÌÁÒ. ´Ù¸¥ ¹æ¹ýÀ¸·Î´Â ÀÚÁÖ Å¸ÀÌÇεǴ ¿ÀŸ¿Í Á¤Å¸¸¦ ¹­¾î¼­ ÀÚµ¿ ¼öÁ¤ ±â´ÉÀ» ÇÏ°Ô ÇÏ´Â °ÍÀÔ´Ï´Ù. ¿ª½Ã ¿¹¸¦ µé¾î ¼³¸íÀ» ÇÏÁÒ. :ab univ. university ¶ó °í ÇØ µÓ½Ã´Ù. ÆíÁý¸ðµå¿¡¼­ univ.¶ó°í ÀÔ·ÂÇÏ°í white character¸¦ ÀÔ·ÂÇÏ´Â ¼ø°£ univ.°¡ university·Î ¹Ù²ð °ÍÀÔ´Ï´Ù. ³»°¡ the¸¦ teh¶ó°í ÀÚÁÖ ¿ÀŸ¸¦ ³½´Ù¸é :ab teh the¸¦ µî·ÏÇØ µÎ¸é µÇ°ÚÁÒ.


2.2. map, map!

ÀÌ ±â´Éµµ ¸Å¿ì À¯¿ëÇÕ´Ï´Ù. ¸ÅÅ©·Î¸¦ ¸¸µé¾î ¾µ ¼ö ÀÖµµ·Ï µµ¿ÍÁÝ´Ï´Ù. ¿ì ¼± Ư¼öÅ°ÀÇ ÀԷ¿¡ ´ëÇؼ­ ¾Ë°í ³Ñ¾î°©½Ã´Ù. ex¿¡¼­ [ctrl]-v¸¦ ´©¸£°í [enter]¸¦ ´©¸£¸é ^MÀ̶ó°í Ç¥½ÃµÉ °ÍÀÔ´Ï´Ù. ÀÌ ¹®ÀÚ°¡ [enter]¸¦ ³ªÅ¸³À´Ï´Ù. ºñ½ÁÇÏ°Ô [ctrl]-v¸¦ ´©¸£°í Ư¼öÅ°¸¦ ´©¸£¸é ÇØ´çÇÏ´Â ¹®ÀÚ°¡ Ç¥½ÃµË´Ï´Ù. mapÀ¸·Î Á¤ÀÇÇØ ³õ Àº Å° ÀÔ·ÂÀº ¸í·É¸ðµå¿¡¼­ µ¿ÀÛÀ» ÇÏ°í map!·Î ¸¸µé¾î ³õÀ¸¸é ÆíÁý¸ðµå¿¡¼­ »ç¿ëÇÒ ¼ö ÀÖ°Ô µË´Ï´Ù. [esc]Å°°¡ ³Ê¹« ¸Ö¾î¼­ ´©¸£±â Èûµå½Å ºÐÀº :map! ^H ^[ ·Î ÇØ º¸½Ã ±â ¹Ù¶ø´Ï´Ù. [bs]Å°¸¦ ´©¸£°Ô µÇ¸é ÆíÁý¸ðµå¿¡¼­ ¸í·É¸ðµå·Î ¹Ù²î°Ô µË´Ï´Ù. ÀÚÁÖ »ç¿ëÇÏÁö ¾Ê´Â Å°¸¦ ¸ÅÇÎÇؼ­ »ç¿ëÇÒ ¼ö ÀÖ°ÚÁö¿ä. óÀ½ ½ÃÀÛ¸¸ ¸í·É¾î ¸ðµå¿¡¼­ »ç ¿ëÇÏ°í ÆíÁý¸ðµå¿¡¼­ »ç¿ëÇÑ´Ù´Â Àǹ̰¡ ÀÖÀ» »Ó Å° ÀÔ·ÂÀ» ±×´ë·Î ´ë½ÅÇØ ÁֹǷΠ½Ç Á¦·Î´Â µÎ ¸ðµå°£À» ÀÚÀ¯·Ó°Ô ³Ñ³ªµé ¼ö ÀÖ½À´Ï´Ù. Áï :map & I/*^[A*/^[ ÀÌ·¸°Ô ÇØ ³õÀ¸¸é &Å°¸¦ ´©¸£¸é ÇöÀç ÁÙÀ» C¹®ÀÇ ÁÖ¼®À¸·Î ¸¸µé¾î ¹ö¸³´Ï´Ù. ÀÌ ¸í·É¿¡¼­´Â »ð ÀÔ°ú ¸í·É ¸ðµå¸¦ µÎ ¹øÀ̳ª ³Ñ³ªµé¾úÁÒ. FunctionÅ°¿¡ ´ëÇؼ­µµ ÀÌ·¯ÇÑ ¸ÅÇÎÇÏ´Â °Í ÀÌ °¡´ÉÇѵ¥ Â÷·Ê·Î #1 ~ #9 ¹øÀÌ functionÅ°¸¦ ³ªÅ¸³À´Ï´Ù. :map #1 commands ÀÌ·± Çü½ÄÀÔ´Ï´Ù. ¾Æ´Ï¸é À§¿¡¼­ Çß´ø °Íó·³ [ctrl]-v ´ÙÀ½¿¡ functionÅ°¸¦ ´­·¯¼­ ÀÔ·Â À» ¹Þ¾Æµµ µË´Ï´Ù. ¾Æ´Ï¸é [F1] ~ [F9]¸¦ ´ë½Å ½áÁ־ µÇ°í (ÀÌ

¿¡ °ªÀº /etc/termcap ¿¡ Á¤ÀǵǾî¾ß ÇÕ´Ï´Ù.)


2.3. @-function

Named buffer¸¦ ÀÌ¿ëÇÑ macroÀÔ´Ï´Ù. °³³äÀº ¸Å¿ì °£´ÜÇÑ °ÍÀÌÁÒ. insert¸ð µå¿¡¼­ ¸ÅÅ©·Î·Î »ç¿ëÇÒ Å° ÀÔ·ÂÀ» ±×´ë·Î Ä£ ÈÄ¿¡ add ayyµîÀÇ Çü½ÄÀ¸·Î named buffer a¿¡ ÀúÀåÀ» ÇÕ´Ï´Ù. ÀÌ ¸ÅÅ©·Î¸¦ ºÒ·¯¼­ ¾µ ¶§ @¸¦ ¾Õ¿¡ ¾²°í µÚ¿¡ ¹öÆÛ¸íÀ» ¾¹´Ï´Ù. Áï @a¶ó°í Ä¡°Ô µÇ¸é ¾Æ±î ¸¸µé¾î¼­ a¹öÆÛ¿¡ ³Ö¾ú´ø Å° ÀÔ·ÂÀÌ ±×´ë·Î ¹Ýº¹ µÇ´Â °ÍÀÌÁÒ. @@¶ó¸é ¸¶Áö¸·¿¡ ¹öÆÛ¿¡ µé¾î°£ °ÍÀ» ½ÇÇàÇÏ°Ô µË´Ï´Ù. Çã ÀÌ°Ç ex¸í·É °ú º° °ü°è°¡ ¾ø´Â ±ÛÀ̱º¿ä. ÂÁ~ ¼öÁ¤ÇÏ·Á¸é Â÷·Êµµ ¼öÁ¤ÇÏ¿©¾ß ÇÏ´Â ... --


2.4. shell command

¿ì¼± ´Ù¸¥ ¿¡µðÅÍ¿¡¼­Ã³·³ shell¸ðµå·Î ºüÁ®³ª°¡·Á¸é :sh ¶ó°í ÀÔ·ÂÇÏ¸é µË ´Ï´Ù. ´Ù½Ã º¹±ÍÇÏ·Á¸é [ctrl]-d¸¦ ´©¸£¸é ´Ù½Ã vi·Î µÇµ¹¾Æ ¿À°Ô µË´Ï´Ù. ÇÏÁö¸¸ vi ´Â shell·Î ³ª°¡Áö ¾Ê°í ex¿¡¼­ ¹Ù·Î shell»óÀÇ ¸í·ÉÀ» ½ÇÇà ½Ãų ¼ö ÀÖ½À´Ï´Ù. ¹Ù·Î ! ±âÈ£¸¦ ÀÌ¿ëÇÕ´Ï´Ù. !gcc -c % ÀÌ·± ½Äµµ °¡´ÉÇÏ°ÚÁÒ. :r !ls¶ó°í ÃÄ º¾½Ã´Ù. ls°¡ ½ÇÇàµÇ°í ±× °á°ú°¡ Áö±Ý À§Ä¡¿¡ µ¡ºÙ¿©Áý´Ï´Ù.

total 18
drwxrwxr-x 2 nu11 nu11 1024 May 25 22:01 .
drwx------ 11 nu11 nu11 2048 May 25 22:01 ..
-rw------- 1 nu11 nu11 12288 May 25 22:01 .vi-beginner.txt.swp
-rw-rw-r-- 1 nu11 nu11 14 May 25 21:59 test
-rw-rw-r-- 1 nu11 nu11 1583 May 25 22:01 vi-beginner.txt
°°Àº ¹æ¹ýÀ¸·Î ÀÚüÀûÀÎ Á¤·ÄÀ» ÇÏ´Â ¸í·ÉÀº ¾øÁö¸¸ sort¶ó´Â °­·ÂÇÑ ¼ÒÆ® ÇÁ·Î±×·¥À» ÀÌ¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. sort¿¡ ´ëÇÑ ÀÚ¼¼ÇÑ ³»¿ëÀº ´Ù¸¥ Ã¥À» Âü°í ÇÏ½Ã±æ ¹Ù¶ó°í, ´ÙÀ½°ú °°ÀÌ °£´ÜÇÑ ¿¹¸¸ µé¾îº¸À̵µ·Ï ÇÏ°Ú½À´Ï´Ù. À§ÀÇ ³»¿ëÀ» Å©±â¿¡ µû ¶ó¼­ Á¤·ÄÀ» ÇØ º¼±î¿ä?
:2,$ !sort +4

total 18
-rw-rw-r-- 1 nu11 nu11 14 May 25 21:59 test
drwxrwxr-x 2 nu11 nu11 1024 May 25 22:01 .
-rw-rw-r-- 1 nu11 nu11 1583 May 25 22:01 vi-beginner.txt
drwx------ 11 nu11 nu11 2048 May 25 22:01 ..
-rw------- 1 nu11 nu11 12288 May 25 22:01 .vi-beginner.txt.swp
ÀÚ ÀÌÁ¦ ¸¹°í ¸¹Àº À¯´Ð½º ¼¿ ¸í·É¾îµéÀ» ¸ðµÎ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ¹«¾ùÀ» ´õ ÇÒ ¼ö ÀÖÀ»Áö´Â ... ^^ 4.5 set, Àڽſ¡ ¸Â´Â vi ¸¸µé±â ÀÚ½ÅÀÇ ÀÛ¾÷ȯ°æ¿¡ ¸Â°Ô vi¸¦ ¼¼ÆÃÇÏ´Â ¹ýÀÔ´Ï´Ù. ¿ì¼± setÇÒ ¼ö ÀÖ´Â ¸ñ·Ï Àº set allÇϸé ÁÖ·ç·è ½ºÅ©·ÑÀÌ µÇ¸é¼­ ¿Ã¶ó°©´Ï´Ù. Çϳª¾¿ ¼³¸íÇϸé Áö±Ý±îÁö ½á¿Â °Í ¸¸Å­À̳ª ½á¾ß ÇÒ °Í °°³×¿ä. ^^ ½Ã°£ÀÌ ³ª¸é ³ªÁß¿¡ Ãß°¡Çϵµ·Ï ÇÏÁÒ... set nu È­¸éÀÇ ÁÂÃø¿¡ Çà¹øÈ£¸¦ Ãâ·ÂÇÕ´Ï´Ù. set ruler Ä¿¼­ÀÇ À§Ä¡°¡ ¿ìÃø ÇÏ´Ü¿¡ Ç¥½ÃµË´Ï´Ù. set aw , set ai ...Àú´Â À§¿¡ °ÍµéÀ» ÀÚÁÖ »ç¿ëÇϴ±º¿ä. ÇÑ°¡Áö¸¸ ¾ð±ÞÇÏ°í ³Ñ¾î°¡ÁÒ. Àúµµ óÀ½¿¡ ¸ô¶ó¼­ °í»ý Á» ÇßÁÒ. set aw µî À¸·Î ¼¼ÆÃÀ» Çß´Ù¸é ÀÌ¿¡ ´ëÇÑ ÇØÁ¦´Â set noaw ÀÌ·± ½ÄÀ¸·Î ¾Õ¿¡ no¸¸ ºÙÀÌ¸é µÈ´Ù ´Â °Ì´Ï´Ù. -- ( ÀÚ¿ì¶û : Àúµµ ÀÌ ±â´ÉÀ» »ó´çÈ÷ ÁÁ¾ÆÇÕ´Ï´Ù :) )


2.5. ¿¬½À¹®Á¦

(1) ÇöÀç Ä¿¼­°¡ À§Ä¡ÇÑ ¶óÀÎÀ» ÁÖ¼®À¸·Î ¸¸µå´Â @-functionÀ» ¸¸µé¾î¶ó.


3. vim¿¡ Ãß°¡µÈ ±â´Éµé

3.1. multi-window

vimÀº ¸ÖƼ À©µµ¿ì ±â´ÉÀ» Áö¿øÇÕ´Ï´Ù. ÀÌ ±â´ÉÀº âÀ» ºÐÇÒÇؼ­ ÇϳªÀÇ vi ¿¡ ¿©·¯ °³ÀÇ ÆÄÀÏÀ» º¸¸é¼­ ÆíÁýÇÒ ¼ö ÀÖµµ·Ï ÇØ ÁÖ´Â ±â´ÉÀÔ´Ï´Ù. :sp ·Î âÀ» ºÐ ÇÒÇϰųª [ctrl]-wn À¸·Î âÀ» »õ·Î ¸¸µé ¼ö ÀÖ½À´Ï´Ù. â°£ÀÇ À̵¿Àº command ¸ðµå ¿¡¼­ [ctrl]-ww³ª [ctrl]-wk, [ctrl]-wj µîÀ¸·Î ÇÒ ¼ö ÀÖ½À´Ï´Ù. Á÷Á¢ Çغ¸½Ã´Â ÆíÀÌ ÀÌÇØ°¡ ½¬¿ì¸®¶ó´Â »ý°¢ÀÌ µå³×¿ä. âÀ» ´ÝÀ» ¶§´Â °¢ â¿¡¼­ ÆÄÀÏÀ» ´Ý¾Æµµ µÇ°í [ctrl]-wc ·Î ´ÝÀ» ¼ö ÀÖ½À´Ï´Ù. Àú´Â °³/ÀÎ/Àû/À¸·Î´Â â ±â´ÉÀ» °ÅÀÇ ¾²Áö ¾Ê½À´Ï ´Ù. °¡¶àÀ̳ª ÀûÀº ¸ð´ÏÅÍ¿¡ â±îÁö ºÐÇÒÇÏ¸é º¼ ¼ö ÀÖ´Â ³»¿ëÀÌ ÁÙ¾îµå´Ï±î¿ä. ^^ ¹°·Ð :resize µîÀÇ ¸í·ÉÀ̳ª [ctrl]-w+ [ctrl]-w- [ctrl]-w=µîÀÇ ¸í·ÉÀ¸·Î âÀÇ Å©±â ÀÇ Á¶ÀýÀÌ °¡´ÉÇÕ´Ï´Ù. ÀÌ·¯¸é Á» ¾µ¸¸ÇÕ´Ï´Ù.


3.2. È®Àå Á¤±ÔÇ¥Çö½Ä

¾Æ·¡ ³»¿ëÀº vim ÆÐÅ°Áö¿¡ Æ÷ÇÔµÈ Á¤±ÔÇ¥Çö½Ä¿¡ »ç¿ëµÇ´Â ±âÈ£µéÀÔ´Ï´Ù. ÀÌ °ÍµéÀÌ ´Ù ÇÊ¿äÇÑÁö´Â Àǽɽº·´±º¿ä. À§¿¡¼­µµ Àá±ñ ¸»ÇßµíÀÌ ÀÚÁÖ »ç¿ëµÇ´Â Á¤±Ô½Ä µéÀ» ±âȣȭ ÇØ ³õ¾ÒÀ» »ÓÀÔ´Ï´Ù.

 	Character classes {not in Vi}:
\i \i isident=@,48-57,-,192-255 ¿¡ ÇØ´çÇÏ´Â ±ÛÀÚµéÀÔ´Ï´Ù.
set isident ¸í·ÉÀ¸·Î È®ÀÎ ¹× Á¤ÀÇÇÒ ¼ö ÀÖ½À´Ï´Ù.
\I \I \i¿Í °°Áö¸¸ ¼ýÀÚ´Â Á¦¿Ü
\k \k keyword·Î »ç¿ëÇÏ´Â ¹®ÀÚ, set iskeyword Âü°í
\K \K \k¿Í °°Áö¸¸ ¼ýÀÚÁ¦¿Ü
\f \f ÆÄÀÏÀ̸§À¸·Î »ç¿ëÇÏ´Â ¹®ÀÚ, set isfnameÂü°í
\F \F \f¿Í °°Áö¸¸ ¼ýÀÚ Á¦¿Ü
\p \p ÇÁ¸°Æ® °¡´ÉÇÑ ¹®ÀÚ, set isprintÂü°í
\P \P \p¿Í °°Áö¸¸, ¼ýÀÚ Á¦¿Ü
\s \s whitespace character: [Space] and [Tab]
\S \S non-whitespace character opposite of \s
\d \d digit: [0-9]
\D \D non-digit: [^0-9]
\x \x hex digit: [0-9A-Fa-f]
\X \X non-hex digit: [^0-9A-Fa-f]
\o \o octal digit: [0-7]
\O \O non-octal digit: [^0-7]
\w \w word character: [0-9A-Za-z-]
\W \W non-word character: [^0-9A-Za-z-] 
\h \h head of word character: [A-Za-z-] 
\H \H non-head of word character: [^A-Za-z-] 
\a \a alphabetic character: [A-Za-z] 
\A \A non-alphabetic character: [^A-Za-z] 
\l \l lowercase character: [a-z] 
\L \L non-lowercase character: [^a-z] 
\u \u uppercase character: [A-Z] 
\U \U non-uppercase character [^A-Z] 
\e \e [ESC] 
\t \t [tab] 
\r \r [CR] 
\b \b [BS]
\n \n matches [NL] Not available yet! Will be used 
for multi-line patterns 
~ \~ matches the last given substitute string 
			


3.3. visual mode

vim¿¡¼­ [ctrl]-v ¸¦ ´©¸¥ ä·Î À̵¿À» ÇÏ¸é ¹ÝÀüµÈ ¿µ¿ªÀÌ »ý±â´Â °ÍÀ» º¼ ¼ö ÀÖ½À´Ï´Ù. óÀ½¿¡ [ctrl]-v¸¦ ´©¸£¸é blockÀ¸·Î ¿µ¿ªÀÌ »ý±é´Ï´Ù. À̶§ v¸¦ ÀÔ·Â ÇÏ¸é ¿µ¿ªÀÌ ¹®ÀÚ ´ÜÀ§·Î ÀâÈ÷°í, V¸¦ ´©¸£¸é ¶óÀδÜÀ§·Î ¿µ¿ªÀÌ »ý±é´Ï´Ù.

				¼±ÅÃµÈ ¿µ¿ªÀÌ »ý°åÀ» ¶§ ¾µ ¼ö ÀÖ´Â ¸í·Éµé 
~	´ë¹®ÀÚ <-> ¼Ò¹®ÀÚ Àüȯ
d	»èÁ¦
c	ġȯ
y	¹öÆÛ¿¡ º¹»ç
>	set shiftwidth·Î Á¤ÀÇÇØ ³õÀº ¸¸Å­ ¿ì·Î À̵¿
<	set shiftwidth·Î Á¤ÀÇÇØ ³õÀº ¸¸Å­ Á·ΠÀ̵¿
:	¼±ÅÃÇÑ ¿µ¿ª¿¡ ´ëÇؼ­ ex ¸í·ÉÀ» ¼öÇà
J	ÁÙÀ» ÇÕÄ£´Ù.
U	´ë¹®ÀÚ·Î ¸¸µç´Ù.
u	¼Ò¹®ÀÚ·Î ¸¸µç´Ù.
^]	tag¸¦ ã´Â´Ù.
	
´ë¹®ÀÚ <-> ¼Ò¹®ÀÚ Àüȯ »èÁ¦ ġȯ ¹öÆÛ¿¡ º¹»ç set shiftwidth·Î Á¤ÀÇÇØ ³õÀº ¸¸Å­ ¿ì·Î À̵¿ set shiftwidth·Î Á¤ÀÇÇØ ³õÀº ¸¸Å­ Á·ΠÀ̵¿ ¼±ÅÃÇÑ ¿µ¿ª¿¡ ´ëÇؼ­ ex ¸í·ÉÀ» ¼öÇà ÁÙÀ» ÇÕÄ£´Ù. ´ë¹®ÀÚ·Î ¸¸µç´Ù. ¼Ò¹®ÀÚ·Î ¸¸µç´Ù. tag¸¦ ã´Â´Ù.


3.4. tag stack

tag¶õ ÇÑ ¸¶µð·Î ¼³¸íÇÏÀÚ¸é tags ÆÄÀÏ¿¡ Á¸ÀçÇÏ´Â Á÷Á¢ À̵¿À» À§ÇÑ Ç¥½ÃÀÔ ´Ï´Ù. (³»¿ëÀ» º¸¸é À̰͵µ ¸ÅÅ©·ÎÀÔ´Ï´Ù.--) ÇÁ·Î±×·¥À» ÀÛ¼ºÇÏ´Ùº¸¸é ÇÔ¼öÀÇ ³»¿ë À» ¾Ë°í ½ÍÀº °æ¿ì°¡ »ý±âÁÒ. ÀÌ·± ¶§ ±× ÇÔ¼ö·Î Á÷Á¢ À̵¿À» Çß´Ù°¡ ´Ù½Ã ÆíÁýÇÏ´ø °÷À¸·Î À̵¿À» ÇÒ ¼ö ÀÖµµ·Ï ÇØ ÁÝ´Ï´Ù. ´ÙÀ½°ú °°Àº ÇÁ·Î±×·¥ÀÌ ÀÖ´Ù°í ÇսôÙ.

main.c

void main(){
hello()
bye()
}
			
my.h
					
void hello(){
puts(Hello, vi user)
}
void bye(){
puts(Good bye)
}
			
ÀÚ ÀÌÁ¦ ctags·Î tags ÆÄÀÏÀ» ¸¸µì´Ï´Ù. ´ÙÀ½°ú °°ÀÌ ÇÏ¸é µÇ°ÚÁö¿ä. :!ctags *.[ch] ȤÀº ´Ù¸¥ ¼¿»ó¿¡¼­ [nu11@foo vi-test]$ ctags *.[ch] ÀÌÁ¦ tag stackÀÇ ±â´ÉÀ» È°¿ëÇØ º¾½Ã´Ù. vi main.c·Î main.c¸¦ ¿­¾îº¾½Ã´Ù. hello() ¾ÕÀ¸·Î À̵¿À» ÇÕ´Ï´Ù. ¾î¶»°Ô °¥Áö´Â ¾Ë¾Æ¼­µé ÇϽñæ... ÀÌ À§Ä¡¿¡¼­ [ctrl]] Å°¸¦ ´©¸¨´Ï´Ù. (^]ÀÔ´Ï´Ù. ÄÁÆ®·ÑÅ°¸¦ ´©¸¥ »óÅ¿¡¼­ ]) È­¸éÀÌ ¹Ù²î¸é¼­ void hello(){ ÀÇ ¸Ç ¾Õ¿¡ hello°¡ À§Ä¡ÇÏ°Ô µÇÁÒ. ÇÔ¼öÀÇ ³»¿ëÀ» È®ÀÎÇÏ¿´À¸¸é ´Ù½Ã [ctrl]t¸¦ ´© ¸¨´Ï´Ù. ´Ù½Ã ¿ø·¡ À§Ä¡·Î º¹±Í¸¦ ÇÕ´Ï´Ù. ´Ù½Ã bye()°¡ ÀÖ´Â ÁÙ¿¡¼­ [ctrl]]¸¦ ´©¸£ ¸é ´Ù½Ã my.h°¡ ¿­¸®¸é¼­ void bye()ÁÙ¿¡ Ä¿¼­°¡ À§Ä¡ÇÕ´Ï´Ù. ´Ù½Ã º¹±Í´Â [ctrl]t. vimÀÇ HELP¿¡µµ tagsÈ­ÀÏÀÌ Á¸ÀçÇÕ´Ï´Ù. :help·Î help ¹®¼­¸¦ º¸´Ùº¸¸é ||·Î µÑ·¯½ÎÀÎ °ÍµéÀÌ Àִµ¥ ÀÌ À§¿¡¼­ ^]¸¦ ´©¸£¸é HYPER TEXTó·³ ±× ÆÄÀÏ·Î À̵¿À» ÇÕ ´Ï´Ù. ´Ù½Ã ^t¸¦ ´©¸£¸é º¹±Í±¸¿ä.


3.5. ÇÁ·Î±×·¡¹ÖÀ» À§ÇÑ ¸í·Éµé

vim¿¡´Â tag stackÀÌ¿Ü¿¡µµ ÇÁ·Î±×·¡¹Ö¿¡ Æí¸®ÇÑ ±â´ÉÀ» Á¦°øÇÕ´Ï´Ù. ¹Ù·Î ÄÄÆÄÀÏ ÈÄ¿¡ ¿¡·¯°¡ ³­ °÷À¸·Î ¹Ù·Î À̵¿À» ÇÒ ¼ö ÀÖµµ·Ï ÇØ ÁÖ´Â ±â´ÉÀÔ´Ï´Ù. ¿ì¼± ÄÄÆÄÀϽÿ¡ ¸¸µé¾îÁø error ÆÄÀÏÀ» ÀúÀåÇØ¾ß ÇÕ´Ï´Ù. ¸¸¾à¿¡ MakefileÀÌ ¸¸µé¾îÁ® ÀÖ ´Ù¸é :make ¸í·É ÇÑ ¹ø¸¸ ³»¸®¸é ÀÚµ¿À¸·Î errorfileÀÌ ¸¸µé¾îÁö°í ¿¡·¯°¡ ¹ß»ýÇÑ Çà À¸·Î À̵¿À» ÇÕ´Ï´Ù. :clÀ» ÀÔ·ÂÇÏ¸é ¿¡·¯ ¸®½ºÆ®°¡ ³ª¿À°í :cnÀ» ÀÔ·ÂÇÏ¸é ¿¡·¯°¡ ³­ ´ÙÀ½ ÇàÀ¸·Î ÀÚµ¿À¸·Î À̵¿À» ÇÕ´Ï´Ù. :cN Àº ¹Ý´ë ¹æÇâÀ¸·Î ¿¡·¯°¡ ³­ ÇàÀ¸·Î ÀÌ µ¿À» ÇÕ´Ï´Ù. ¿©·¯ ÆÄÀÏ·Î ÀÌ·ç¾îÁø ¼Ò½ºÀÇ °æ¿ì¿¡µµ ´Ù ¿­¾î°¡¸é¼­ µé¾î°©´Ï´Ù.

main.c

void added(){
This makes error
}
void main(){
hello()
bye()
added()
}
my.h

		
void hello(){
this also makes error
puts(Hello, vi user)
}
void bye(){
puts(Good bye)
}
			

Makefile

all : main.c my.h
gcc -o test main.c my.h
clean : test
rm -f test
				
ÀÌ·¸°Ô ¸¸µé¾î ³õ°í vi main.c¿¡¼­ :make¸¦ ÇØ º¾½Ã´Ù. ¿¡·¯°¡ ÇÑ ¹ø Ãâ·ÂµÈ ÈÄ¿¡ my.hÀÇ this also makes error ¶óÀο¡ Ä¿¼­°¡ À§Ä¡ÇÏ°í viÀÇ ¸Ç ¾Æ·¡ÁÙ¿¡´Â (4 of 12): `this' undeclared (first use this function) ¶ó°í Ãâ·ÂÀÌ µÉ ²®´Ï´Ù. :cnÀ» ÇØ º¾½Ã´Ù. (5 of 12): (Each undeclared identifier is reported only once·Î ¸Þ ½ÃÁö°¡ ¹Ù²î¾úÁö¿ä. ¸î ¹ø :cnÀ» ÇÏ´Ùº¸¸é ´Ù½Ã main.cÀÇ This makes error ¶óÀο¡ Ä¿¼­°¡ À§Ä¡ÇÏÁÒ. ¸î ¹ø Çغ¸½Ã¸é ÃæºÐÈ÷ ÀÌÇØÇϸ®¶ó »ý°¢ÇÕ´Ï´Ù. Makefile ÆÄÀÏÀ» ¸¸µéÁö ¾Ê°í ÇÒ ¼ö ÀÖ´Â ¹æ¹ýÀº ¾ø´Â°¡? ºÐ¸íÈ÷ ÀÖ°ÚÁÒ. ´Ü¼øÈ÷ ÄÄÆÄÀÏ ¿¡·¯ ¸Þ½ÃÁö°¡ µé¾î ÀÖ´Â ÆÄÀϸ¸ ÀÖÀ¸¸é µ¿ÀÛÀ» Çϴϱî¿ä. Çغ¸µµ·Ï ÇÏ ÁÒ. :!gcc -c main.c >& err.out ÀÌ·¸°Ô Çϸé error ¸Þ½ÃÁö°¡ err.out¿¡ ÀúÀåÀÌ µÇ°Ú Áö¿ä. ´ÙÀ½¿¡ ÇÒ ÀÏÀº ÆÄÀÏÀ» ÁöÁ¤ÇØ ÁÖ´Â °ÍÀÔ´Ï´Ù. :cf err.out ÀÚ ÀÌÁ¦ :makeÇß´ø °Í°ú °°ÀÌ :cnÀ» Çϸ鼭 µð¹ö±ëÀ» ÇÒ ¼ö ÀÖ½À´Ï´Ù.


4. ±âŸ ÆÁ

  • À©µµ¿ìÅ° ¸ÅÇÎÇϱâ - xmodmap À̶õ ¸í·É¾î¸¦ ÀÌ¿ëÇؼ­ 106Å°º¸µå¿¡¼­ »ç¿ëÇÏÁö ¾Ê´Â windowsÅ°¸¦ [esc]Å° ´ë¿ëÀ¸·Î »ç¿ëÇÏ´Â ¹æ¹ýÀÔ´Ï´Ù. xmodmap -e keycode 115=Escape

  • bash¿¡¼­ vi¸ðµå·Î »ç¿ëÇϱâ- bash¸¦ »ç¿ëÇÏ°í °è½Ã´Ù¸é command line ÆíÁý±â°¡ viÀÇ ¼÷ÀûÀÎ emacs¸ðµå·Î ¼¼ÆõǾî ÀÖ½À´Ï´Ù. ¸í·ÉÀ» Çϳª Ä¡°í [ctrl]-a¸¦ ´©¸£¸é Ä¿¼­°¡ ¸í·ÉÀÇ ¸Ç óÀ½À¸·Î À̵¿À» ÇÏÁö¿ä? ±×·³ emacs¸ðµå ¸Â½À´Ï´Ù. set -o vi ·Î ´çÀå vi ¸ðµå·Î ¹Ù²ãÁֽñ⠹ٶø´Ï´Ù. ^^ ÀÚ ÀÌÁ¦ command line»ó¿¡¼­ Å° À̵¿Àº Áö±Ý±îÁö ¹è¿ö¿Ô´ø Å° ÀԷ°ú °°½À´Ï´Ù.

    [nu11@foo nu11]$ cd /usr/X11R6/lib/X11/ko/app-defaults/-

    »óŶó°í Çսà ´Ù. ÀÌ°É [nu11@foo nu11]$ du /usr/X11R6/lib/X11/ko/app-defaults/ ·Î ¹Ù ²Ù·Á¸é [esc]0cwdu¸¦ Â÷·Ê·Î ´©¸£¸é µÇ°ÚÁÒ. ÀÌÀü¿¡ »ç¿ëÇß´ø ¸í·ÉÀ» ÇÑ ¹ø ã¾Æº¼±î¿ä? [esc]¸¦ ´©¸£°í /cut ¶ó°í ÇØ º¸ ¼¼¿ä. ÀÌÀü¿¡ »ç¿ëÇß´ø cut¶õ ¸í·É¾î°¡ ÇöÀç ÁÙ¿¡ ³ªÅ¸³ª³×¿ä. [nu11@foo nu11]$ ls -l *.EXE |grep ^- |cut -c33-41 ÀÌ°Ô ¾Æ´Ï¶ó°í¿ä? nÅ°¸¦ ´©¸£¸é °Ë»öÀ» °è¼Ó ÇÏ°ÚÁÒ? [nu11@foo nu11]$ ls -l *.EXE |grep ^- |cut -c35- °¡ ³ª¿À´Â±º¿ä. ƯÁ¤ ÆÄÀÏÀÌ µé¾î°¡ ÀÖ´Â ¸í·ÉÀ» ãÀ» ¶§µµ ±×·¸°í command mode¿¡¼­ »ç¿ëÇß´ø ¸í·ÉÀ» ¸ðµÎ °Ë»öÇÒ ¼ö ÀÖ½À´Ï´Ù. »ç½ÇÀº .bash-history ÆÄÀÏÀ» °Ë»öÇÏ´Â °ÍÀÌ°ÚÁÒ. [esc]/doc ¶ó°í Çϴϱî Àú´Â cd doc°¡ °¡Àå ¸ÕÀú ³ªÅ¸³ª´Â±º¿ä. ÇàÀ̵¿ ¸í·Éµéµµ °ÅÀÇ °¡´ÉÇÕ´Ï´Ù. °è¼Ó °Ë»öÀº ¹°·Ð n, NÀÌ°ÚÁÒ. [esc]11G µîÀ» ´© ¸£¸é .bash-history ÆÄÀÏ¿¡ µé¾î°¡ ÀÖ´Â 11¹ø° Ç׸ñÀ¸·Î À̵¿ÀÌ µÇ´Â °ÍÀ» º¼ ¼ö ÀÖ ½À´Ï´Ù.

  • tcsh & csh¿¡¼­ vi¸ðµå·Î »ç¿ëÇϱâ - ÇÁ·ÒÇÁÆ® »ó¿¡¼­ ´ÙÀ½°ú °°ÀÌ ÀÔ·ÂÇÏ¸é µË´Ï´Ù. bindkey -v ´Ù½Ã emacs¸ðµå·Î »ç¿ëÇϽ÷Á¸é bindkey -e


ID
Password
Join
Expect a letter from a friend who will ask a favor of you.


sponsored by andamiro
sponsored by cdnetworks
sponsored by HP

Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2010-01-19 11:34:05
Processing time 0.0023 sec