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


3.5 s¥³¥Þ¥ó¥É

(ÃÖ´¹¤Ç¤Î)s¥³¥Þ¥ó¥É¤Î¹½Ê¸¤Ï¡¤ ‘s/regexp/replacement/flags’¤Ç¤¹¡¥/ʸ»ú¤Ï¡¤ ¾¤Îñ°ìʸ»ú¤òs¥³¥Þ¥ó¥É¤ÇÍ¿¤¨¤ë¤³¤È¤Ç°ìÍͤËÃÖ´¹¤·¤Æ¤â¤«¤Þ¤¤¤Þ¤» ¤ó¡¥/ʸ»ú(¤Þ¤¿¤Ï¡¤¤½¤ì¤ÎÂå¤ï¤ê¤Î»ÈÍѤµ¤ì¤Æ¤¤¤ë¤½¤Î¾¤Îʸ»ú)¤Ï¡¤ \ʸ»ú¤òÁ°ÃÖ¤·¤¿¾ì¹ç¤À¤±regexp¤äreplacement¤Ë½ñ¤¯¤³¤È ¤¬²Äǽ¤Ç¤¹¡¥

s¥³¥Þ¥ó¥É¤Ï¡¤¤ª¤½¤é¤¯sed¤ÇºÇ¤â½ÅÍפǡ¤ÍÍ¡¹¤Ê¥ª¥×¥·¥ç¥ó ¤¬Â¿¤¯¤¢¤ê¤Þ¤¹¡¥´ðËÜŪ¤Ê³µÇ°¤Ïñ½ã¤Ç¤¹¡¥s¥³¥Þ¥ó¥É¤Ï¡¤Ä󶡤µ¤ì¤Æ ¤¤¤ëregexp¤ËÂФ·¥Ñ¥¿¡¼¥ó¶õ´Ö¤Î¥Þ¥Ã¥Á¤ò»î¤ß¤Þ¤¹¡¥¥Þ¥Ã¥Á¤¬À®¸ù¤¹¤ë ¾ì¹ç¡¥¥Þ¥Ã¥Á¤·¤¿¥Ñ¥¿¡¼¥ó¶õ´Ö¤Î°ÌÃÖ¤¬replacement¤ÇÃÖ´¹¤µ¤ì¤Þ¤¹¡¥

replacement¤Ë\n(n¤Ï1¤«¤é9¤Þ¤Ç¤Î¿ô»ú¤Ç¡¤1¤È9¤â ´Þ¤Þ¤ì¤Þ¤¹)¤Ç¤Î»²¾È¤ò´Þ¤á¤ë¤³¤È¤¬²Äǽ¤Ç¡¤¤½¤ì¤ÏnÈÖÌܤÎ\(¤È ¤½¤Î¥Þ¥Ã¥Á¤È\)¤Ë´Þ¤Þ¤ì¤Æ¤¤¤ë¥Þ¥Ã¥Á¤Î°ÌÃÖ¤ò»²¾È¤·¤Þ¤¹¡¥¤Þ¤¿¡¤ replacement¤Ë¡¤¥Ñ¥¿¡¼¥ó¶õ´Ö¤Î¥Þ¥Ã¥Á°ÌÃÖÁ´ÂΤò»²¾È¤¹¤ë¡¤¥¨¥¹¥±¡¼¥× ¤µ¤ì¤Æ¤¤¤Ê¤¤&ʸ»ú¤ò´Þ¤á¤ë¤³¤È¤â²Äǽ¤Ç¤¹¡¥

ºÇ¸å¤Ë(¤³¤ì¤ÏGNU sed¤Î³ÈÄ¥¤Ç¤¹)¡¤ÆÃÊ̤ʥХ寥¹¥é¥Ã¥·¥å¤Î¥·¡¼¥±¥ó ¥¹¤Èʸ»úL¡¤l¡¤U¡¤u¡¤¤Þ¤¿¤ÏE¤Î°ì¤Ä¤ò ´Þ¤á¤ë¤³¤È¤¬²Äǽ¤Ç¤¹¡¥¤½¤ì¤¾¤ì¤Î°ÕÌ£¤Ï°Ê²¼¤Î¤È¤ª¤ê¤Ç¤¹¡¥

\L

\U¤ä\E¤¬¸«¤Ä¤«¤ë¤Þ¤Ç¾®Ê¸»ú¤ËÃÖ´¹¤·¤Þ¤¹¡¥

\l

¼¡¤Îʸ»ú¤ò¾®Ê¸»ú¤ËÃÖ´¹¤·¤Þ¤¹¡¥

\U

\L¤ä\E¤¬¸«¤Ä¤«¤ë¤Þ¤ÇÂçʸ»ú¤ËÃÖ´¹¤·¤Þ¤¹¡¥

\u

¼¡¤Îʸ»ú¤òÂçʸ»ú¤ËÃÖ´¹¤·¤Þ¤¹¡¥

\E

\L¤ä\U¤Ç³«»Ï¤·¤¿Âçʸ»ú¾®Ê¸»ú¤ÎÊÑ´¹¤òÄä»ß¤·¤Þ¤¹¡¥

\¡¤&¡¤¤Þ¤¿¤Ï²þ¹Ô¤½¤Î¤â¤Î¤òºÇ½ªÅª¤ÊÃÖ´¹Êª¤Ë´Þ¤á¤ë¤¿¤á¡¤ replacementÆâ¤Î\¡¤&¡¤¤Þ¤¿¤Ï²þ¹Ô¤ËɬÍפÊ\¤ò³Î ¼Â¤ËÁ°ÃÖ¤·¤Æ¤¯¤À¤µ¤¤¡¥

s¥³¥Þ¥ó¥É¤Ë¤Ï¥¼¥í°Ê¾å¤Î²¼µ­¤Îflags¤ò³¤±¤ë¤³¤È¤¬²Äǽ¤Ç¤¹¡¥

g

ºÇ½é¤Î¤â¤Î¤À¤±¤Ç¤Ê¤¯¤¹¤Ù¤Æ¤Îregexp¤Ø¤Î¥Þ¥Ã¥Á¤òÃÖ´¹¤·¤Þ¤¹¡¥

number

regexp¤ÎnumberÈÖÌܤΥޥåÁ¤Î¤ßÃÖ´¹¤·¤Þ¤¹¡¥

Ãí°Õ¡§POSIX¤Îɸ½à¤Ï¡¤g¤Ènumber»Ø¼¨¸ì¤òº®¤¼¤¿¤È¤­¤ËÀ¸ ¤¸¤ë¤³¤È¤ò»ØÄꤷ¤Æ¤ª¤é¤º¡¤¸½ºß¤Ïsed¤Î¼ÂÁõ¾å¤ÇÉý¹­¤¤Æ±°Õ¤Ï¤¢¤ê ¤Þ¤»¤ó¡¥GNU sed¤Ç¤Ï¡¤Áê¸ßºîÍѤò°Ê²¼¤Î¤è¤¦¤ËÄêµÁ¤·¤Æ¤¤¤Þ¤¹¡¥ numberÈÖÌܤޤǤΥޥåÁ¤ò̵»ë¤·¡¤numberÈÖÌܤ«¤é¥Þ¥Ã¥Á¤·¤·¤¿ ¤¹¤Ù¤Æ¤Î¥Þ¥Ã¥Á¤òÃÖ´¹¤·¤Þ¤¹¡¥

p

ÃÖ´¹¤¬¹Ô¤Ê¤ï¤ì¤¿¾ì¹ç¡¤¿·¤·¤¤¥Ñ¥¿¡¼¥ó¶õ´Ö¤ò½ÐÎϤ·¤Þ¤¹¡¥

Ãí°Õ¡§p¤Èe¥ª¥×¥·¥ç¥ó¤ÎξÊý¤¬»ØÄꤵ¤ì¤Æ¤¤¤ë¤È¤­¡¤Æó¤Ä¤Î½ç ½ø¤Ë´ØÏ¢¤·¤Æ¡¤Á´¤¯°Û¤Ê¤ë·ë²Ì¤òÀ¸À®¤·¤Þ¤¹¡¥°ìÈÌŪ¤Ë¡¤ep(ɾ²Á¤·¤Æ ½ÐÎÏ)¤Ç¤Ï´üÂÔ¤·¤¿¤â¤Î¤Ë¤Ê¤ë¤Ç¤·¤ç¤¦¤¬¡¤¤â¤¦°ìÊý¤Î½çÈ֤ϥǥХå°¤ÇÌò¤ËΩ ¤Ä¤â¤Î¤Ë¤Ê¤ê¤Þ¤¹¡¥¤³¤ÎÍýͳ¤Ï¡¤¸½ºß¤Î¥Ð¡¼¥¸¥ç¥ó¤ÎGNU sed¤¬¡¤ eÁ°¸å¤Îp¥ª¥×¥·¥ç¥ó¤Î¸ºß¤òÆÃÊ̤ʤâ¤Î¤È¤·¤Æ²ò¼á¤·¤Þ¤¹¤¬¡¤ s¥³¥Þ¥ó¥É¤ËÂФ¹¤ë°ìÈÌŪ¤Ê¥Õ¥é¥°¤Ï¤½¤Î¸ú²Ì¤ò°ìÅÙ¤À¤±É½¼¨¤¹¤ë¤¿¤á ¤Ç¤¹¡¥¤³¤Îưºî¤Ï¡¤¥É¥­¥å¥á¥ó¥È¤Ë¤Ï½ñ¤«¤ì¤Æ¤¤¤Þ¤¹¤¬¡¤¾­Íè¤Î¥Ð¡¼¥¸¥ç¥ó¤Ç ¤ÏÊѹ¹¤¹¤ë¤«¤â¤·¤ì¤Þ¤»¤ó¡¥

w file-name

ÃÖ´¹¤¬¹Ô¤Ê¤ï¤ì¤¿¾ì¹ç¡¤·ë²Ì¤ò»ØÌ¾¤µ¤ì¤¿¥Õ¥¡¥¤¥ë¤Ë½ñ¤­½Ð¤·¤Þ¤¹¡¥ GNU sed¤Î³ÈÄ¥¤È¤·¤Æ¡¤file-name¤ÎÆÃ¼ì¤ÊÃͤò¥µ¥Ý¡¼¥È¤·¤Þ¤¹¡¥·ë ²Ì¤òɸ½à¥¨¥é¡¼½ÐÎϤ˽ñ¤­½Ð¤¹/dev/stderr¡¤¤½¤·¤ÆÉ¸½à½ÐÎϤ˽ñ¤­½Ð ¤¹/dev/stdout¤Ç¤¹¡¥4

e

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

I
i

Àµµ¬É½¸½¤Ë¥Þ¥Ã¥Á¤µ¤»¤ëI»Ø¼¨¸ì¤ÏGNU¤Î³ÈÄ¥¤Ç¡¤Âçʸ»ú¾®Ê¸ »ú¤ò̵»ë¤¹¤ëÊýË¡¤Ç¡¤sed¤Ëregexp¤Ë¥Þ¥Ã¥Á¤µ¤»¤Þ¤¹¡¥

M
m

Àµµ¬É½¸½¤Î¥Þ¥Ã¥Á¤ËÂФ¹¤ëM»Ø¼¨¸ì¤Ï¡¤GNU sed¤Î³ÈÄ¥¤Ç¡¤ ^¤È$¤ò(Ä̾ï¤Îưºî¤Ë²Ã¤¨)¡¤¤½¤ì¤¾¤ì²þ¹Ô¸å¤Î¶õ¤Îʸ»úÎó¤È²þ ¹ÔÁ°¤Î¶õ¤Îʸ»úÎó¤Ë¥Þ¥Ã¥Á¤µ¤»¤Þ¤¹¡¥ÆÃ¼ì¤Êʸ»ú¤ÎʤӤ¬¤¢¤ê¤Þ¤¹¡¥

(\`¤È\') ¤³¤ì¤é¤Ï¾ï¤Ë¥Ð¥Ã¥Õ¥¡¤ÎºÇ½é¤Þ¤¿¤ÏºÇ¸å¤Ë¥Þ¥Ã¥Á¤·¤Þ¤¹¡¥M¤Ï multi-line¤ò°ÕÌ£¤·¤Þ¤¹¡¥


Footnotes

(4)

¤³¤ì¤Ï¡¤-i¥¹¥¤¥Ã¥Á¤¬»ÈÍѤµ¤ì ¤Æ¤¤¤Ê¤¤¸Â¤ê¡¤p¤ÈÅù²Á¤Ç¤¹¡¥