À̹ø ±ÛÀ» ÅëÇØ¼ ÆÞÀ» ÀÌ¿ëÇÑ »ç¿ëÀÚ ÀԷ ó¸®¸¦ ¾Ë¾Æ º¸°Ú½À´Ï´Ù.
"line input operator"¶ó´Â °ÍÀÌ ÀÖ½À´Ï´Ù.
<>
¸ð¾çÀÌ ´ÙÀ̾Ƹóµå¸¦ ´à¾Æ¼ "diamond operator"¶ó°íµµ ÇÕ´Ï´Ù. ¶Ç´Â "angle operator"¶ó°íµµ ÇÕ´Ï´Ù.
´ÙÀ̾Ƹóµå ¿¬»êÀÚ´Â "line input operator"¶ó´Â À̸§Ã³·³ ÇàÀ» ÀԷ¹޴Â(line input) ¿¬»êÀÚÀÔ´Ï´Ù. ´ÙÀ̾Ƹóµå »çÀÌ¿¡ ÆÄÀÏ ÇÚµé(file handle)À» ³Ö¾îÁÖ¸é ÆÄÀÏÀ» ÇÑ ÁÙ ÀÐ¾î µéÀÔ´Ï´Ù. ÀÏ´ÜÀº ¾î¶² °ÍÀ» ÇÑ ÁÙ ÀÐ¾î µéÀÌ´Â ±â´ÉÀ» ÇÑ´Ù°í ¾Ë°í ÀÖÀ¸¸é µË´Ï´Ù.
±× ´ÙÀ½À¸·Î, STDINÀÌ ÀÖ½À´Ï´Ù. À̰ÍÀº "Standard Input"ÀÇ ¾àÀÚ·Î 'Ç¥ÁØÀÔ·Â'À̶ó´Â °ÍÀÔ´Ï´Ù. À̰ÍÀº ¶Ç ¸¹Àº ³»¿ëÀÌ ÀÖ´Â °ÍÀÔ´Ï´Ù¸¸Àº ¿ì¼±Àº 'Űº¸µå·Î ÀÔ·ÂÇÑ °Í'À» °¡¸®Å²´Ù°í ¾Ë¸é µË´Ï´Ù. Ç¥ÁØ ÀԷ°ú ¹Ý´ëµÇ´Â °ÍÀº "Standard Output"ÀÔ´Ï´Ù. STDOUTÀ̶ó°í ¾²´Â °ÍÀ¸·Î ¸ð´ÏÅÍ È¸éÀ» °¡¸®Åµ´Ï´Ù. Űº¸µå·Î ÀÔ·ÂÇÏ°í ¸ð´ÏÅÍ¿¡ Ãâ·ÂÇÏ´Â °Ô 'Ç¥ÁØ'ÀÔ´Ï´Ù.
±×·¯¸é,
<STDIN>
À̶ó°í ÇÏ¸é ¾î¶»°Ô µÉ±î¿ä? Űº¸µå·Î ÀÔ·ÂÇÑ °ÍÀ» ÇÑ ÁÙ ÀÐ¾î µéÀÌ´Â °Ô µË´Ï´Ù. ±×·¯¹Ç·Î ´ÙÀ½ÀÇ ÄÚµå´Â,
$line = <STDIN>;
print $line;
±×³É ±â´Ù¸®°í ÀÖ´Ù°¡ Űº¸µå·Î ¹«¾ùÀΰ¡ ÀÔ·ÂÇÏ¸é ±×´ë·Î ´Ù½Ã Ãâ·ÂÇÕ´Ï´Ù.
±×·±µ¥ µµ´ëü 'ÇÑ ÁÙ'À̶õ °ÍÀÌ ¹» ÀǹÌÇÒ±î¿ä?
ÆÞ¿¡¼ 'ÇÑ ÁÙ'Àº °³Ç๮ÀÚ(new line character; \n)±îÁö¸¦ ÀǹÌÇÕ´Ï´Ù. À§ Äڵ带 ½ÇÇàÇÑ ´ÙÀ½ Űº¸µå·Î abcdefgh¶ó°í ÀÔ·ÂÇÑ µÚ ¿£ÅÍ۸¦ ´·¶´Ù°í ÇØº¾½Ã´Ù. ÀÌ °æ¿ì Űº¸µå·Î ÀÔ·ÂÇÑ ¹®ÀÚ¿Àº abcdefgh\n°¡ µÉ °ÍÀÔ´Ï´Ù.
¿£ÅÍŰ¿¡ ÀÇÇØ¼ ÁٹٲÞÀÌ µÇ´Ï±î \nÀÌ ºÙ¾ú½À´Ï´Ù. \nÀÌ µîÀåÇÏ¸é ÆÞÀº 'ÀÌÁ¦ ÇÑ ÁÙÀÌ ´Ù ÀԷµǾú±¸³ª'¶ó°í »ý°¢Çϰí <STDIN>À¸·Î ÀоîµéÀÌ´Â °ÍÀ» Áß´ÜÇÕ´Ï´Ù. Àß ÀÌÇØÇϼ¼¿ä. ÀÌ ºÎºÐÀº ¹«Ã´ Áß¿äÇÕ´Ï´Ù.
µû¶ó¼ À§ÀÇ Äڵ带 ½ÇÇàÇϸé, $lineÀ̶ó´Â º¯¼ö¿¡´Â »ç¿ëÀÚ°¡ ÀÔ·ÂÇÑ ¹®ÀÚ¿ ³¡¿¡ \nÀÌ ´Þ¸° °ÍÀÌ ´ã±â¹Ç·Î, »ç¿ëÀÚ ÀÔ·Â ¹®ÀÚ¿À» Ãâ·ÂÇÑ ´ÙÀ½ ÇÑ ÁÙÀ» ¶ç¿ì°í Ä¿¼°¡ ±ô¹ÚÀÌ°Ô µË´Ï´Ù.
ÀÌÁ¦ ÀÌ °³Ç๮ÀÚ \nÀ» ¾î¶»°Ô ó¸®ÇØ¾ß ÇÒ Áö ¾ê±âÇÒ ¼ö ÀÖ½À´Ï´Ù.
»ç¿ëÀÚ°¡ Űº¸µå·Î ¹º°¡¸¦ ÀÔ·ÂÇßÀ» ¶§ ÀÔ·ÂÇÑ ³»¿ëÀÇ ³¡¿¡´Â Ç×»ó \nÀÌ ´Þ·ÁÀÖ½À´Ï´Ù. Űº¸µå·Î ÀÔ·ÂÇÏ´Â ÇÑ ¿£ÅÍ۸¦ ´·¯¾ß¸¸ ÀÔ·ÂÀÌ µÇ±â ¶§¹®ÀÔ´Ï´Ù. ±×·±µ¥ ¿ì¸®°¡ °ü½ÉÀ» °®°í ÀÖ´Â °ÍÀº \n°¡ ¾Æ´Ï¶ó ±× ¾Õ¿¡ ÀÖ´Â ³»¿ë¹°À̹ǷΠ\nÀ» ¾ø¾ÖÁÖ´Â ¿¬»êÀÚ°¡ ÇÊ¿äÇÕ´Ï´Ù. ¹Ù·Î ±× ±â´ÉÀ» chomp ¿¬»êÀÚ°¡ ÇÕ´Ï´Ù. º¸¼¼¿ä.
$line = "abcd\n";
chomp ($line);
ÀÌ°Í ¿ª½Ã ÁÖÀÇÇØ¼ Àß º¸¼¼¿ä. ù ÁÙ¿¡¼´Â $lineÀ̶ó´Â ½ºÄÉÀÏ¶ó º¯¼ö¿¡ abcd¿Í ÇÔ²² °³Ç๮ÀÚ¸¦ ÇÒ´çÇß½À´Ï´Ù. ÀÛÀº µû¿ÈÇ¥¸¦ ¾²Áö ¾Ê°í Å« µû¿ÈÇ¥¸¦ ½è´Ù´Â °ÍÀ» ÁÖ¸ñÇϼ¼¿ä. ÀÛÀº µû¿ÈÇ¥¸¦ ¾´ °æ¿ì¿£ °³Ç๮ÀÚ°¡ ¾Æ´Ï¶ó a,b,c,d,\,n À̶ó´Â 6°³ÀÇ ¹®ÀÚ°¡ ´ã±é´Ï´Ù.
±× ´ÙÀ½ ÁÙ¿¡¼´Â $line º¯¼ö¿¡ ´ã±ä ¹®ÀÚ¿¿¡¼ \n¸¸ ¾ø¾Û´Ï´Ù. ÀÌÁ¦ $line¿¡´Â "abcd"¸¸ ³²¾ÆÀÖ½À´Ï´Ù. ´ÙÀ½ÀÇ °æ¿ì¿£ ¾î¶»°Ô µÇ°Ú½À´Ï±î?
$line = "abcd\n";
$question = chomp($line);
print $question;
°ú¿¬ $questionº¯¼ö¿¡´Â ¹«¾ùÀÌ ´ã±æ±î¿ä?
¿¹»ó°ú´Â ´Ù¸£ÁÒ? $question¿¡´Â "abcd"°¡ ´ã±â´Â°Ô ¾Æ´Ï¶ó 1ÀÌ ´ã±é´Ï´Ù. °©ÀÚ±â 1Àº ¶Ç ¹«¾ùÀϱî¿ä?
chomp ¿¬»êÀÚ´Â \nÀ» ¶¼¾î³»´Â ±â´ÉÀ» ÇÑ´Ù°í Çß½À´Ï´Ù.
±×·¯¸é chompÀÇ ¸®ÅϰªÀº ¹«¾ùÀϱî¿ä. chomp´Â ÇÔ¼ö°¡ ¾Æ´Ï¶ó ¿¬»êÀÚÀ̱⠶§¹®¿¡ ±× ¿¬»êÀÌ ¼º°øÀûÀ¸·Î ½ÃÇàµÇ¸é 1, ±×·¸Áö ¾ÊÀ¸¸é 0À» ¸®ÅÏÇÕ´Ï´Ù. chomp´Â ÇÔ¼ö°¡ ¾Æ´Õ´Ï´Ù.
\nÀ» ¼º°øÀûÀ¸·Î ¶¼¾î³ÂÀ¸¸é 1À» ¸®ÅÏÇÕ´Ï´Ù.
\nÀ» ¶¼¾î³»Áö ¸øÇßÀ¸¸é 0À» ¸®ÅÏÇÕ´Ï´Ù.
\nÀ» ¶¼¾î³½ °ªÀ» ¹ÝȯÇÏ´Â °ÍÀÌ ¾Æ´Õ´Ï´Ù.
µû¶ó¼ \nÀ» ¶¼¾î³½ °ª ÀÚü¸¦ °®°í ½Í´Ù°í À̸¦ º°µµÀÇ º¯¼ö¿¡ ´ãÀ» Çʿ䰡 ¾ø½À´Ï´Ù. À§ÀÇ ¿¹¸¦ º¸ÀÚ¸é,
chomp($line);
¸¸À¸·Î $line¿¡´Â abcd¸¸ µé¾îÀÖ°Ô µË´Ï´Ù.
¸¸¾à ÀÛÀº µû¿ÈÇ¥¸¦ ÀÌ¿ëÇØ¼ ½ÇÇàÇÏ¸é ¾î¶»°Ô µÉ±î¿ä?
$line = 'abcd\n';
$question = chomp($line);
print $question;
0ÀÌ Ãâ·ÂµÇ´Â °ÍÀ» ¾Ë ¼ö ÀÖ½À´Ï´Ù.
¿Ö³ÄÇϸé ÀÛÀº µû¿ÈÇ¥ ³»¿¡¼´Â \nÀÌ °³Ç๮ÀÚ·Î Ãë±ÞµÇÁö ¾Ê¾Æ¼ chomp()¿¡ ÀÇÇØ¼ °³Ç๮ÀÚ°¡ Á¦°ÅµÇÁö ¾Ê±â ¶§¹®ÀÔ´Ï´Ù.
»ç¿ëÀÚ°¡ Űº¸µå·Î ÀÔ·ÂÇÑ °ªÀ» \n¾øÀÌ ÀоîµéÀÌ´Â ¹æ¹ýÀº °á±¹ ´ÙÀ½°ú °°ÀÌ µË´Ï´Ù.
chomp ($line = <STDIN>);
¸Å¿ì ¸¹ÀÌ ¾²ÀÌ´Â °ÍÀ̹ǷΠ¹Ýµå½Ã ¿Ü¿öµÎ´Â °Ô ÁÁ½À´Ï´Ù.
±×¸®°í <>ó·³ »çÀÌ¿¡ ¾Æ¹«°Íµµ ³ÖÁö ¾Ê´Â °æ¿ì Áß°£¿¡ STDINÀÌ µé¾îÀÖ´Â °Íó·³ Űº¸µå·Î ¹«¾ùÀΰ¡¸¦ ÀÔ·ÂÇϵµ·Ï ±â´Ù¸³´Ï´Ù. ´ÙÀ½ ÆÞ ÇÁ·Î±×·¥Àº Ä¿¸Çµå¶óÀÎÀÇ echo ¸í·É¾î¿Í ¶È°°Àº ±â´ÉÀ» ÇÕ´Ï´Ù.
#!/usr/bin/perl
print while (<>);
µû¶ó¼ Ä¿¸Çµå¶óÀο¡¼ ¾î¶² °ÍÀ» ÀÐ¾î µé¿©¼ ó¸®ÇÏ´Â °£´ÜÇÑ ÆÞ ÇÁ·Î±×·¥À» ¸¸µé ¶§´Â <>¸¦ »ç¿ëÇÕ´Ï´Ù. ÀÌó·³ ½ÇÁ¦ À¯´Ð½º Ä¿¸ÇµåµéÀ» ÆÞÀ» ÀÌ¿ëÇØ¼ ±¸ÇöÇØ º¼ ¼ö ÀÖ½À´Ï´Ù.
À̹ø ½Ã°£¿¡ ÇÑ ³»¿ëµéÀº ±âÃÊÀûÀÌÁö¸¸Àº ¾ÆÁÖ Áß¿äÇÑ ³»¿ëÀÔ´Ï´Ù. ƯÈ÷ »ç¿ëÀÚ ÀÔ·Â󸮿¡ °üÇÑ ³»¿ëÀº Àß ÀÌÇØ¸¦ ÇØµÎ¼¼¿ä.
