19.1. Á¤±Ô Ç¥Çö½ÄÀÇ °£·«ÇÑ ¼Ò°³

Ç¥Çö½Ä(expression)À̶õ ¹®ÀÚ ±×´ë·ÎÀÇ ÀÇ¹Ì ÀÌ»óÀ¸·Î Çؼ®µÇ´Â ¸ÞŸ¹®ÀÚ(metacharacters)¶ó°í ºÎ¸£´Â ¹®ÀÚµéÀÇ ÁýÇÕÀ» ¸»ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, ÀÎ¿ë ºÎÈ£(quote symbol)´Â ¾î¶² »ç¶÷ÀÌ ¸»ÇÑ °ÍÀ» ³ªÅ¸³» Áֱ⵵ ÇÏÁö¸¸ ¶ÇÇÑ ±× µÚ¿¡ ³ª¿À´Â ½Éº¼¿¡ ´ëÇؼ­ ¸ÞŸÀû Àǹ̸¦ ºÎ¿©Çϱ⵵ ÇÕ´Ï´Ù. Á¤±Ô Ç¥Çö½ÄÀº À¯´Ð½º¿¡ Ưº°ÇÑ Æ¯Â¡À» ºÎ¿©ÇÏ´Â ¹®ÀÚµé°ú ¸ÞŸ¹®ÀÚµéÀÇ ÁýÇÕÀÔ´Ï´Ù. [1]

Á¤±Ô Ç¥Çö½ÄÀº ÁÖ·Î ÅؽºÆ® Ž»ö°ú ¹®ÀÚ¿­ Á¶ÀÛ¿¡ ¾²ÀÔ´Ï´Ù. Á¤±Ô Ç¥Çö½ÄÀº ÇϳªÀÇ ¹®ÀÚ¿Í ÀÏÄ¡(match)Çϰųª, ȤÀº ¹®ÀÚ¿­ÀÇ ÀϺκÐ(substring)À̳ª Àüü ¹®ÀÚ¿­ÀÎ ¹®ÀÚ ÁýÇÕµé°ú ÀÏÄ¡ÇÏ°Ô µË´Ï´Ù.

Sed, awk, ÆÞÀº ½ºÅ©¸³Æ®¿¡¼­ Á¤±Ô Ç¥Çö½ÄÀ» ÀÎÀÚ·Î ¹Þ¾Æ ÆÄÀÏÀ̳ª I/O ½ºÅ©¸²À» °É·¯Áְųª ÇÊÅ͸µ ÇØÁÝ´Ï´Ù. ÀÌ·± ¿¹Á¦´Â ¿¹ A-7 ¿Í ¿¹ A-12 ¸¦ Âü°íÇϼ¼¿ä.

Dougherty¿Í Robbins°¡ ¾´ "Sed & Awk"¿¡¼­ Á¤±Ô Ç¥Çö½Ä¿¡ ´ëÇÑ ¿ÏÀüÇÏ°í ¸íÄèÇÑ »ç¿ë¹ýÀ» º¼ ¼ö ÀÖ½À´Ï´Ù(¼­Áö»çÇ× Âü°í).

ÁÖ¼®

[1]

¾î¶² ¸ÞŸ¹®ÀÚµµ Æ÷ÇÔÇÏÁö ¾Ê¾Æ¼­ ¹®ÀÚ¿­ ÀÚüÀÇ ¶æÀ» ±×´ë·Î °®°í ÀÖ´Â ¹®ÀÚ¿­ÀÌ °¡Àå °£´ÜÇÑ ÇüÅÂÀÇ Á¤±Ô Ç¥Çö½ÄÀÔ´Ï´Ù.

[2]

sed, awk, grepÀº ÇÑ ÁÙ¿¡ ´ëÇؼ­ 󸮸¦ Çϱ⠶§¹®¿¡ ´º¶óÀÎÀ» ó¸®ÇÏÁö ¸ø ÇÕ´Ï´Ù. ´º¶óÀÎÀÌ µé¾î ÀÖ´Â ¿©·¯ ÁÙ¿¡ °ÉÄ£ Ç¥Çö½Ä¿¡¼­ Á¡(.)Àº ´º¶óÀΰú ÀÏÄ¡ÇÕ´Ï´Ù.
#!/bin/bash

sed -e 'N;s/.*/[&]/' << EOF   # Here Document
line1
line2
EOF
# Ãâ·Â:
# [line1
# line2]



echo

awk '{ $0=$1 "\n" $2; if (/line.1/) {print}}' << EOF
line 1
line 2
EOF
# Ãâ·Â:
# line
# 1


# Thanks, S.C.

exit 0