......
10. screen »ç¿ë¹ýÀ» ÀÍÇô¶ó. µ¥¸óÀ¸·Î ¸¸µéÁö ¾Ê¾Æµµ ¼ºñ½º°¡ °¡´ÉÇÏ´Ù.
......
ÀÀ? screen? ±×°Ô ¹¹Áö???
ÀÏ´Ü KLDPÀÇ °ÁµéÀ» ÀÐÀ¸¸ç °³³ä ÆľÇ~ ¿À¿Ã!! Á¤¸» ¸ÚÁö´õ±º¿ä.
http://kldp.org/node/18744http://kldp.org/node/18767½±°Ô ¸»ÇØ screenÀ» ¶ç¿î ÈÄ °Å±â¿¡¼ ¾î¶² ÀÛ¾÷À» ÁøÇàÇϸé ÀÌÈÄ ¾ðÁ¦µç ¿øÇÒ ¶§´Â ´Ù½Ã ±× ȸéÀ»
¶ç¿ï ¼ö Àֳ׿ä. ¹°·Ð ¿¬°áÀÌ ²÷±ä ÈÄ¿¡µµ ÀÌ ¼¼¼ÇÀº °è¼Ó ³²¾ÆÀÖ±¸¿ä.
°£´ÜÇÑ ¿¹¸¦ µé¾î º¸°Ú½À´Ï´Ù. ¸ÕÀú screen ÀÌ ±ò·ÁÀÖ´Â ¼¹ö¿¡ Á¢¼ÓÇÕ´Ï´Ù.
screen ¸í·ÉÀ» ÀÔ·ÂÇϸé Â¥ÀÜ~~ ¹¹¶ó¹¹¶ó ¸Þ½ÃÁö°¡ ³ª¿À°í
½ºÆäÀ̽ºÅ°¸¦ ´©¸£¸é º°´Ù¸¦ ¹Ù ¾ø´Â Æò¹üÇÑ ¼ÐÀÌ ³ªÅ¸³³´Ï´Ù.
¸¸¸¸ÇÑ ls ¸í·ÉÀ» ¶§·Áº¾½Ã´Ù. ¹¹ ¿ÏÀüÈ÷ ¶È°°½ÀÁÒ.
ÀÌÁ¦ ¿©±â¼ ºñÀåÀÇ Å°! Ctrl+A ¸¦ ´·¯ÁÖ°í ´Ù½Ã D Å°¸¦ ´©¸¨´Ï´Ù. ¾ó·¡??
detached µÇ¾ú´Ù´Â ¸Þ½ÃÁö¿Í ÇÔ²² ¾Æ±î screenÀ» ÀÔ·ÂÇϱâ Àü ȸéÀ¸·Î µ¹¾Æ¿Ô½À´Ï´Ù. ¿ÀÈ£~ °¨ÀÌ ÀâÈ÷½Ã³ª¿ä?
ÀÏ´Ü ¿©±â¼ Á¢¼ÓÀ» ²÷°í ´Ù½Ã Á¢¼Ó ÇØ º¸°Ú½À´Ï´Ù.
±×¸®°í -ls ¿É¼ÇÀ¸·Î ÇöÀç È°¼ºÈµÈ ½ºÅ©¸°À» »ìÆ캸ÁÒ.
ÇÁ·Î¼¼½º ¾ÆÀ̵ð 23337ÀÌ°í pts-0 À̶ó´Â À̸§À» °¡Áø ½ºÅ©¸° ¼¼¼ÇÀÌ º¸ÀÔ´Ï´Ù. ÀÌÁ¦ screen -r ¸í·ÉÀ» ³»·Áº¸¸é
¾Æ±î ÀÛ¾÷ÁßÀÌ´ø ȸéÀ¸·Î µ¹¾Æ°¥ ¼ö ÀÖ½ÀÁÒ.
Áï, ÇÁ·Î±×·¥ÀÇ ½ÇÇàȸéÀ» »ç¿ëÀÚÀÇ ¼¼¼Ç¿¡ À¯Áö½ÃÄѳõÁö ¾Ê¾Æµµ ½ºÅ©¸°À» »ç¿ëÇÏ¸é °è¼Ó ¹é±×¶ó¿îµå¿¡¼
µ¿ÀÛÇϵµ·Ï ¸¸µé ¼ö ÀÖ°í ½ÇÇàÁßÀÎ ³»¿ëµµ ¾ðÁ¦µçÁö È®ÀÎÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ ¶§¹®¿¡ µ¥¸óÀ¸·Î ¸¸µéÁö ¾Ê°íµµ
¼ºñ½º°¡ °¡´ÉÇÏ°Ô µÇ´Â °ÅÁÒ.
À̾ß~ ¸ÚÁö´Ù~ ½Å³´Ù~~ ´Ù ÁÁ´Ù~~~
±×·¯³ª...
¿©±â ¿À½Ã´Â ´ëºÎºÐÀÇ °³¹ßÀÚó·³ Àú ¿ª½Ã À©µµ ¾îÇø®ÄÉÀÌ¼Ç °³¹ß·Î ¹ä¸Ô°í »ì°í ÀÖ½À´Ï´Ù.
¾Æ¹«¸® Screen ÀÌ ÁÁ´Ù°í Çصµ ´ÜÁö ÀÌ ³ð Çϳª ¶§¹®¿¡ ¼¹ö¸¦ ¸®´ª½º·Î °¥¾Æ¾þÀ» ¼ö´Â ¾øÁÒ.
±×·¡¼ ÇØ°á»ç·Î µîÀåÇÏ´Â ³à¼®ÀÌ ¹Ù·Î
CYGWIN! ¼ÒÀ§ ¸»ÇÏ´Â À©µµ¿ë POSIX ȯ°æ ¿¡¹Ä·¹ÀÌÅÍÀÔ´Ï´Ù.
´ÙÇེ·´°Ôµµ ÃֽŠ¹öÀüÀÇ Cygwin¿¡´Â ÀÌ screenÀÌ Á¤½Ä ÆÐÅ°Áö·Î ¹èÆ÷µÇ°í ÀÖ´õ±º¿ä.
ÀÌ »ðÁúÀÇ ¿øÀÎÀÌ µÇ¾ú´ø ±ÛÀ» Áö±Ý Á¦ »óȲ¿¡ ¸Â°Ô ´Ù½Ã ¹Ù²ãº¸¸é
10. screen »ç¿ë¹ýÀ» ÀÍÇô¶ó. ¼ºñ½º·Î ¸¸µéÁö ¾Ê¾Æµµ ¼ºñ½º°¡ °¡´ÉÇÏ´Ù.
Á¤µµ°¡ µÇ°Ú±º¿ä. Äָܼðµå¿¡¼ µ¿ÀÛÇÏ´Â °ÔÀÓ¼¹ö¸¦ ¸¸µå´Â ÀÔÀå¿¡¼´Â ¸¶Ä¡ ±¸¼¼ÁÖ¿Í °°Àº ¹°°ÇÀ̶ó°í
ÇÒ ¼ö ÀÖ½À´Ï´Ù.
Cygwin ÀÇ ¼³Ä¡ »ðÁúÀº Á¦ ºí·Î±×¿¡ Á¤¸® ÇØ µÎ¾úÀ¸´Ï Âü°í ÇϽñ¸¿ä.
http://oranke.tistory.com/category/Ž±¸»ýÈ°/CYGWIN´Ù¸¸ µ¨ÆÄÀÌ¿¡¼ ÄÜ¼Ö ÀÔÃâ·ÂÀ» À§ÇØ »ç¿ëÇÏ´Â ReadLn(), WriteLn() ÇÔ¼ö´Â Cygwin¿¡¼´Â Á¦´ë·Î
µ¿ÀÛÇÏÁö ¾Ê½À´Ï´Ù. Á» ´õ Á¤È®È÷´Â Cygwin¿¡¼ ReadLn()À» ¾²¸é ÀÌÈÄ ÀÔÃâ·ÂÀÌ ¾Èµå·Î¸Þ´Ù·Î °¡
¹ö¸°´Ù´Â °Çµ¥, À©µµ¿¡¼ Á¦°øµÇ´Â msvcrt ¶ó´Â ¹°°ÇÀÌ CygwinÀÇ PTY¿Í´Â º°·Î ¾È Ä£Çϱ⠶§¹®ÀÔ´Ï´Ù.
CygwinÀº ȯ°æº¯¼öÀÇ CYGWIN°ªÀÌ TTYÀÏ °æ¿ì PTY¸¦ ¿¡¹Ä·¹ÀÌÆ® ÇØ Áִµ¥ ÀÌ ¶§ »ç¿ëÇÏ´Â ¹æ¹ýÀÌ
ÇÁ·Î¼¼½º¿¡ ÆÄÀÌÇÁ¸¦ ¹Ú¾Æ³Ö´Â °ÍÀÌ°í ÀÌ ¶§¹®¿¡ ÆÄÀÌÇÁ ÀÔÃâ·ÂÀ» °í·ÁÇÏÁö ¾ÊÀº ´ëºÎºÐÀÇ ÄܼÖ
¾îÇø®ÄÉÀ̼ǿ¡¼´Â ÀÔÃâ·ÂÀÌ ºÒ°¡´ÉÇØÁý´Ï´Ù.
CreateProcess·Î µµ½ºÃ¢ÀÇ ÀÔÃâ·ÂÀ» Á¦¾îÇÏ´Â ¿¹Á¦°¡ À¯µ¶ ÀÚ½ÅÀÇ ¾îÇø®ÄÉÀ̼ǿ¡¼´Â Àß µ¿ÀÛÇÏ´Ï
¾Ê´Â ÀÌÀ¯µµ »ç½Ç °Å±â¿¡ ÀÖ½ÀÁÒ. µû¶ó¼ ´ÙÀ½°ú °°Àº ¹æ¹ýÀ¸·Î ÇöÀç ÀÔÃâ·Â ´ë»óÀÌ ÄܼÖÀÎÁö ¾Æ´Ï¸é
ÆÄÀÌÇÁÀÎÁö ÆÇ´ÜÇØ
OutputHandle := GetStdHandle(STD_OUTPUT_HANDLE);
case GetFileType(OutputHandl) of
FILE_TYPE_UNKNOWN: WriteLn('Unknown output ') ;
FILE_TYPE_DISK: WriteLn('Output to a File') ;
FILE_TYPE_CHAR: WriteLn('Console output') ;
FILE_TYPE_PIPE: WriteLn('Pipe output') ;
end;
InputHandle := GetStdHandle(STD_INPUT_HANDLE);
case GetFileType(InputHandle) of
FILE_TYPE_UNKNOWN: WriteLn('Unknown input ') ;
FILE_TYPE_DISK: WriteLn('input from a File') ;
FILE_TYPE_CHAR: WriteLn('Console input') ;
FILE_TYPE_PIPE: WriteLn('Pipe input') ;
end;
ÄܼÖÀÌ ¾Æ´Ò °æ¿ì´Â ÀÔÃâ·Â¿¡ ReadFile, WriteFile À» »ç¿ë ÇØ ÁÖ¾î¾ß ÇÕ´Ï´Ù (¿µÀç¾ß °í¸¶¿ö~~).
¿¹¸¦ µé¾î ȸéÀÇ ±ÛÂ¥»öÀ» ¹Ù²Ü ¶§µµ ÄܼÖÀ̶ó¸é SetConsoleTextAttribute() API¸¦, ÆÄÀÌÇÁ¶ó¸é
TTY¿ë ¾È½ÃÄڵ带 º¸³»ÁÖ´Â ¹æ½ÄÀ¸·Î ¸»ÀÌÁÒ. ^^ (Âü°í·Î ¾È½ÃÄÚµå´Â
¿©±â¿¡ Àß ¼³¸íµÇ¾î ÀÖ´õ±º¿ä.)
ÁÖÀý ÁÖÀý ¶°µé¾î ºÃ½À´Ï´Ù¸¸, Á¤ÀÛ ½á¸ÔÀ¸·Á¸é ÀÌÈķεµ ¸¸¸¸Ä¡ ¾ÊÀº »ðÁúÀÌ µÇ¹Ç·Î ½ÇÁ¦·Î µµ¿òÀÌ
µÉ·±Áö´Â ÀÚ½ÅÀÌ ¾ø½À´Ï´Ù¸¸... ^^;
¾îÁ¦ ¼úÀ» Çϵµ ¸¹ÀÌ ÆÛ¸¶¼Ì´õ´Ï Äڵ尡 ´«¿¡ ¾Èµé¾î¿À±æ·¡, ±×·¡ Àؾî¸Ô±â Àü¿¡ À̰ųª Á¤¸®ÇÏÀÚ°í
½ÃÀÛÇÑ ±ÛÀÌ »ý°¢º¸´Ù ±æ¾îÁ®¹ö·È³×¿ä.
ÁÁÀº ÇÏ·ç µÇ¼¼¿ä~~ ^^