Next: , Previous: Programming Commands, Up: sed Programs   [Contents][Index]


3.8 GNU sedÆÃÍ­¤Î¥³¥Þ¥ó¥É

°Ê²¼¤Î¥³¥Þ¥ó¥É¤ÏGNU sedÆÃÍ­¤Ê¤Î¤Ç¡¤Ãí°Õ¤·¤Æ»ÈÍѤ¹¤ëɬÍפ¬¤¢¤ê¡¤°Ü ¿¢À­¤Î¼ÙË⤬ÌäÂê¤Ê¤¤¤³¤È¤¬Ê¬¤«¤Ã¤Æ¤¤¤ë¤È¤­¤À¤±»ÈÍѤ·¤Æ¤¯¤À¤µ¤¤¡¥¤½¤ì¤Ç GNU sed¤Î³ÈÄ¥¤òÄ´ºº¤·¤¿¤ê¡¤É¸½àŪ¤Êsed¤Ç¤Ï¤Þ¤À¥µ¥Ý¡¼¥È¤µ ¤ì¤Æ¤¤¤Ê¤¤¤¬¡¤¤è¤¯Í׵ᤵ¤ì¤ëºî¶È¤ò¹Ô¤Ê¤¦¤³¤È¤¬²Äǽ¤Ë¤Ê¤ê¤Þ¤¹¡¥

e [command]

¤³¤Î¥³¥Þ¥ó¥É¤Ç¡¤¥·¥§¥ë¥³¥Þ¥ó¥É¤«¤é¤ÎÆþÎϤò¥Ñ¥¿¡¼¥ó¶õ´Ö¤Ø¥Ñ¥¤¥×¤ÇÅϤ¹¤³ ¤È¤¬²Äǽ¤Ë¤Ê¤ê¤Þ¤¹¡¥¥Ñ¥é¥á¡¼¥¿¤òÍѤ¤¤Æ¤¤¤Ê¤¤¾ì¹ç¡¤e¥³¥Þ¥ó¥É¤Ï¥Ñ ¥¿¡¼¥ó¶õ´Ö¤Ç¸«¤Ä¤«¤Ã¤¿¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¡¤¥Ñ¥¿¡¼¥ó¶õ´Ö¤ò½ÐÎϤÇÃÖ´¹¤·¤Þ¤¹¡¥ ¸åÃÖ¤µ¤ì¤ë²þ¹Ô¤ÏÍÞÀ©¤µ¤ì¤Þ¤¹¡¥

¥Ñ¥é¥á¡¼¥¿¤¬»ØÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï¡¤Âå¤ï¤ê¤Ëe¥³¥Þ¥ó¥É¤¬¤½¤ì¤ò¥³¥Þ ¥ó¥É¤È¤·¤Æ²ò¼á¤·¡¤(r¤¬¹Ô¤Ê¤¦¤è¤¦¤Ë)¤½¤ì¤ò½ÐÎÏ¥¹¥È¥ê¡¼¥à¤ËÁ÷¤ê¤Þ ¤¹¡¥¤½¤Î¥³¥Þ¥ó¥É¤Ï¡¤ºÇ¸å¤Î½ª¤ê¤¬¥Ð¥Ã¥¯¥¹¥é¥Ã¥·¥å¤Ç¤Ê¤¤¸Â¤ê¡¤Ê£¿ô¤Î¹Ô¤ò ¸Ù¤Ã¤Æ¼Â¹Ô¤¹¤ë¤³¤È¤¬²Äǽ¤Ç¤¹¡¥

¤¤¤º¤ì¤Î¾ì¹ç¤Ç¤â¡¤¼Â¹Ô¤µ¤ì¤¿¥³¥Þ¥ó¥É¤ËNULʸ»ú¤¬´Þ¤Þ¤ì¤ë¾ì¹ç¡¤·ë²Ì ¤ÏÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡¥

L n

¤³¤ÎGNU sed¤Î³ÈÄ¥¤Ï¡¤fmt¤¬¹Ô¤Ê¤¦¤è¤¦¤Ë¡¤(ºÇÂç)nʸ»ú¤Î ¹Ô¤Î½ÐÎϤòÀ¸À®¤¹¤ë¤¿¤á¡¤¥Ñ¥¿¡¼¥ó¶õ´Ö¤Î¹Ô¤òÊä½¼¤·¤Ä¤Ê¤²¤Þ¤¹¡¥n¤¬¾Ê ά¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¡¤¥³¥Þ¥ó¥É¥é¥¤¥ó¤Ç»ØÄꤵ¤ì¤Æ¤¤¤ë¥Ç¥Õ¥©¥ë¥È¤ò»ÈÍѤ·¤Þ¤¹¡¥ ¤³¤Î¥³¥Þ¥ó¥É¤Î»î¤ß¤Ï¼ºÇÔ¤À¤È»×¤Ã¤Æ¤¤¤Æ¡¤Í׵᤬̵¤±¤ì¤Ð(¤­¤Ã¤È̵¤¤¤Ç¤·¤ç ¤¦¤±¤É)¾­Íè¤Î¥Ð¡¼¥¸¥ç¥ó¤Ç¤Ïºï½ü¤¹¤ëͽÄê¤Ç¤¹¡¥

Q [exit-code]

¤³¤Î¥³¥Þ¥ó¥É¤Ï¡¤Ã±°ì¤Î¥¢¥É¥ì¥¹¤À¤±¤ò¼õ¤±Æþ¤ì¤Þ¤¹¡¥

¤³¤Î¥³¥Þ¥ó¥É¤Ïq¤ÈƱ¤¸¤Ç¤¹¤¬¡¤¥Ñ¥¿¡¼¥ó¶õ´Ö¤ÎÆâÍÆ¤ò½ÐÎϤ·¤Þ¤»¤ó¡¥ q¤Ë»÷¤Æ¤¤¤Æ¡¤¸Æ¤Ó½Ð¤·Â¦¤Ë½ªÎ»¥³¡¼¥É¤òÊÖ¤¹Ç½ÎϤòÄ󶡤·¤Æ¤¤¤Þ¤¹¡¥

¤³¤Î°ì¸«º³ºÙ¤Êµ¡Ç½¤òãÀ®¤¹¤ëÍ£°ì¤ÎÊ̤ÎÊýË¡¤Ï¡¤-n¥ª¥×¥·¥ç¥ó¤ò»ÈÍÑ ¤¹¤ëÊýË¡(¥¹¥¯¥ê¥×¥È¤¬ÉÔɬÍפËÊ£»¨¤Ë¤Ê¤ê¤Þ¤¹)¤ä¡¤¸«¤¿Ìܤ˱ƶÁ¤·¤Ê¤¤¤è¤¦ ¤Ë¥Õ¥¡¥¤¥ëÁ´ÂΤòÆÉ¤ß¹þ¤à¤È»þ´Ö¤¬ÌµÂ̤ˤʤë¤è¤¦¤Ê°Ê²¼¤ÎÃÇÊÒ¤òÍøÍѤ¹¤ëÊý Ë¡¤Ê¤Î¤Ç¡¤Ìò¤ËΩ¤Ä¤Ï¤º¤Ç¤¹¡¥

:eat
$d       Quit silently on the last line
N        Read another line, silently
g        Overwrite pattern space each time to save memory
b eat
R filename

filename¤Î¹Ô¤òÆÉ¤ß¹þ¤ß¡¤¸½ºß¤Î¥µ¥¤¥¯¥ë¤Î½ª¤ê¤ä¼¡¤ÎÆþÎϹԤ¬ÆÉ¤ß¹þ ¤Þ¤ì¤¿¤È¤­¤Ë½ÐÎÏ¥¹¥È¥ê¡¼¥à¤ËÁÞÆþ¤¹¤ë¤¿¤á¥­¥å¡¼¤ËÊݸ¤·¤Þ¤¹¡¥ filename¤¬ÆÉ¤ß¹þ¤ßÉÔ²Äǽ¡¤¤Þ¤¿¤Ï¥Õ¥¡¥¤¥ë¤Î½ª¤ê¤Ë㤷¤¿¾ì¹ç¡¤¥¨¥é¡¼ ¤ò¼¨¤¹¤³¤È¤Ê¤¯¡¤¹Ô¤¬Äɲ䵤ì¤Ê¤¤¤³¤È¤ËÃí°Õ¤·¤Æ¤¯¤À¤µ¤¤¡¥

r¥³¥Þ¥ó¥ÉƱÍÍ¡¤ÆÃ¼ì¤ÊÃÍ/dev/stdin¤¬¥Õ¥¡¥¤¥ë̾¤È¤·¤Æ¥µ¥Ý¡¼ ¥È¤µ¤ì¤Æ¤¤¤Æ¡¤¤½¤ì¤Ïɸ½àÆþÎÏ¤ÎÆâÍÆ¤òÆÉ¤ß¹þ¤ß¤Þ¤¹¡¥

T label

Á°²ó¤ÎÆþÎÏ¹Ô¤ÎÆÉ¤ß¹þ¤ß¤ä¾ò·ïʬ´ô¤¬¹Ô¤Ê¤ï¤ì¤Æ¤«¤é¡¤s¤ÎÃÖ´¹¤ÇÀ®¸ù ¤·¤Ê¤«¤Ã¤¿¤â¤Î¤¬¤¢¤ë¾ì¹ç¤À¤±label¤Ëʬ´ô¤·¤Þ¤¹¡¥label¤Ï¾Êά ²Äǽ¤Ç¡¤¤½¤Î¾ì¹ç¤Ï¼¡¤Î¥µ¥¤¥¯¥ë¤¬³«»Ï¤µ¤ì¤Þ¤¹¡¥

v version

¤³¤Î¥³¥Þ¥ó¥É¤Ï²¿¤â¤·¤Þ¤»¤ó¤¬¡¤GNU sed¤Î³ÈÄ¥¤¬¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Ê¤¤ ¾ì¹ç¤Ïsed¤Ï°Û¾ï½ªÎ»¤·¡¤¤½¤ì¤Ï¤½¤Î¾¤Îsed¤Î¼ÂÁõ¤Ç¤Ï ¤½¤ì¤ò¼ÂÁõ¤·¤Æ¤¤¤Ê¤¤¤¿¤á¤Ç¤¹¡¥¤µ¤é¤Ë¡¤4.0.5¤ÎÍͤˡ¤¥¹¥¯¥ê¥×¥È¤¬ Í׵᤹¤ësed¤Î¥Ð¡¼¥¸¥ç¥ó¤ò»ØÄꤹ¤ë¤³¤È¤â¤«¤Î¤¦¤Ç¤¹¡¥¥Ç¥Õ¥©¥ë¥È ¤Ï4.0¤Ç¡¤¤½¤ì¤Ï¡¤¤³¤Î¥³¥Þ¥ó¥É¤¬¼ÂÁõ¤µ¤ì¤¿ºÇ½é¤Î¥Ð¡¼¥¸¥ç¥ó¤À¤«¤é ¤Ç¤¹¡¥

¤³¤Î¥³¥Þ¥ó¥É¤Ï¡¤POSIXLY_CORRECT¤¬´Ä¶­ÊÑ¿ô¤ÇÀßÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ç¤â¡¤ ¤¹¤Ù¤Æ¤ÎGNU extensions¤òÍøÍѲÄǽ¤Ë¤·¤Þ¤¹¡¥

W filename

ºÇ½é¤Î²þ¹Ô¤Þ¤Ç¤Î¥Ñ¥¿¡¼¥ó¶õ´Ö¤Î°ÌÃÖ¤ò¡¤Í¿¤¨¤é¤ì¤¿filename¤Ë½ñ¤­½Ð ¤·¤Þ¤¹¡¥¤³¤³¤Ç¤Î¥Õ¥¡¥¤¥ë½èÍý¤Ïw¥³¥Þ¥ó¥É¤Ç¤¹¤Ù¤Æ½Ò¤Ù¤Æ¤¤¤Þ¤¹¡¥