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

You are not allowed to 'Keywords'


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
Even the smallest candle burns brighter in the dark.


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.0014 sec