¸®´ª½º ½©¿¡¼­ ¹®ÀÚ¿­ ³¡ÀÇ ¹®ÀÚ¿­ ¸î°³¸¦ »« ¹®ÀÚ¿­ °¡Á®¿À±â

   Á¶È¸ 1641   Ãßõ 0    

뒤에서 부터 문자열 추출하기도 아닙니다.

앞에서 몇 째까지의 문자열 가져오기도 아닙니다

그냥 뒤에서 몇개를 빼고 나머지 나머지 문자열을 가져오는 간단한 방법도 있나요?


예를들어

 2cpu.co.kr 이면

뒤에서 .kr 를 빼고 나머지 2cpu.co 까지 문자열 자르기로 가져오는 것입니다.


물론 이것은 하려면

전체 문자열 갯수를 파악하고

전체 문자열 갯수에서 삭제하고자 하는 뒷 문자열 갯수를 제외한 것을 가져오는 방법이 있을 것입니다.


예를들면

echo $str | cut -c 0-7

이렇게 되겠지요?


오늘은 어떻게 하다보니 Q/A에 글을 쓰게 되었습니다.ㅎㅎ

자문 자답으로 글을 써 봤습니다.

참고하실 분은 참고하세요.


참고로

리눅스 쉘 스크립트를 공부하는 방식으로 이렇게 합니다.

스스로 질문을 만들고

그것에 대한 답을 계속적으로 댓글 형식으로 답을 붙이고

보완하는 방식으로 합니다.

이렇게 해두면 나중에 나중에도 좋고 많은 공부가 됩니다.


혹시라도 

더 좋은 힌트와 방법이 있다면 댓글로 주시길 바랍니다.


예전에 나를 도와준 마틴님이란 분이 있어 그분을 기억합니다.
2cpu의 도움주신 많은 분들께 늘 감사드립니다.
☎ HP 010-9678-7900
ªÀº±Û Àϼö·Ï ½ÅÁßÇÏ°Ô.
% ¿¬»êÀÚ¸¦ È°¿ëÇÏ´Â ¹æ½ÄÀ¸·Î  »ç¿ëÇϸé ÁÁÀº °Í °°½À´Ï´Ù.

Áï
Á¦°ÅÇÒ ¸¶Áö¸· ¹®ÀÚ¿­ °¹¼ö¸¦ ¾È´Ù¸é
ÀÌ·¸°Ô °¡´ÉÇÕ´Ï´Ù
¿¹¸¦µé¾î 4°³¶ó¸é echo ${str%????}.

ÀÌ·¸°Ôµµ °¡´ÉÇÕ´Ï´Ù.
echo ${str/%????/}
ù ¹®ÀÚ¿Í Áß°£ ¹®ÀÚ¿­Àº Á¦°ÅÇÏÁö ¾Ê°í Ç×»ó ¸¶Áö¸· ³¡ÀÇ ¹®ÀÚ¿­¸¸ Á¦°ÅµË´Ï´Ù.

¹°·Ð ? ´ë½Å¿¡ ¹®ÀÚ¿­À» ¾Ë°í ÀÖ´Ù¸é ³Ö¾îµµ µË´Ï´Ù.
¿¹¸¦µé¾î .kr¸¦ Á¦°ÅÇÏ°í ½Í´Ù¸é
echo ${str/%.kr}

±×·¸´Ù°í Á¤±Ô½Ä Çü½ÄÀº ¾Æ´Ï´õ±º¿ä.¤¾¤¾
¹®ÀÚ¿­ ³¡ÀÇ ±¸ºÐÀÚ(.)À¸·Î ½ÃÀ۵Ƞ ÀÌÈÄÀÇ ¹®ÀÚ¿­À» Á¦°ÅÇÑ´Ù¸é
echo ${str%.*}
ÀÌ·¸°Ôµµ µÇ³×¿ä ¤¾¤¾

±¸ºÐÀÚ°¡ Á¤È®ÇÏ´Ù¸é  ÀÌ ¹æ½ÄÀÌ ´õ ÁÁÀ» °Í °°½À´Ï´Ù.
±âº»ÀûÀ¸·Î Àüü ¹®ÀÚ¿­  ±æÀÌ ±¸Çؼ­ ÇÏ´Â ¹æ½Ä
len=${#str}
echo ${str::len-4}
ÀÌ·¸°Ô °¡´ÉÇÕ´Ï´Ù.
´Ü, Àüü ¹®ÀÚ¿­ ±æÀ̸¦ ¸ÕÀú ±¸ÇØ¾ß ÇÏ´Â ºÒÆíÇÔÀÌ Àֳ׿ä.

ÀÌ°ÍÀ» ´õ °£´ÜÈ÷ ¾Æ·¡¿Í °°ÀÌ ¾Æ·¡¿Í °°Àº ¸í·ÉÀº ¼¾Å佺¿¡¼­´Â Áö¿øÇÏÁö ¾Ê½À´Ï´Ù.¤¾¤¾¤¾
echo ${str::-4}
Àüü ¹®ÀÚ¿­ °¹¼ö¸¦ ±¸ÇÏÁö ¾Ê°í
À§ÀÇ ¹æ¹ýÀ» ÇÑ ÁÙ·Î °£´ÜÈ÷ ÇÏ´Â ¹æ¹ýµµ Àֳ׿ä
echo $(echo -n $str | head -c -4)

ÀÌ°ÍÀº Á¤È®ÇÑ Çؼ®Àº ¾ÈµÇÁö¸¸ ÀÌ ¹æ¹ýÀÌ Âü ±¦ÂúÀº °Í °°½À´Ï´Ù.
sed À¸·Î ÇÏ´Â ¹æ½ÄÀÌ ÀÖ½À´Ï´Ù.
sed 's/.\{4\}$//' <<< $str
È­¶õ 2022-01
±¸ºÐÀÚ¸¸ È®½ÇÇÏ´Ù¸é ¹®ÀÚ¿­ ±æÀ̸¦ °è»êÇÏÁö ¾Ê¾Æµµ µÇˆf cut ÀÌ °¡Àå ÆíÇÏ´õ±º¿ä ¤»

¹°·Ð, ¹®ÀÚ¿­ ÇÁ·Î¼¼½ÌÀÇ ³¡ÆÇ¿Õ awk( ¾ÆÈ£ ¿ÍÀιö°Å Ä¿´Ï°Ç )µµ ÀÖ½À´Ï´Ù ¤¾

´Ù¸¸, ½©ÀÇ Á¾·ù¿Í ¹öÀü¿¡ µû¶ó Àû¿ëÀÌ µÇ°í ¾ÈµÇ°í ÀÌ·¯ÇÑ ÀßÀßÇÑ °ÍÀº ²À ½ÇÇèÈÄ¿¡...
     
°¨»çµå¸³´Ï´Ù


QnA
Á¦¸ñPage 567/5680
2015-12   1483271   ¹é¸Þ°¡
2014-05   4946609   Á¤ÀºÁØ1
2006-11   4161   À±È£¿ë
2005-01   6747   ÃÖ¿¬½Â
2008-01   5575   À±ÇѽÅ
2003-01   11082   °­±¤¼±
2007-05   4995   ÃÖ½ÂÇö
2006-06   5556   ¼Û¿µ¿À
2006-06   5090   ÀüÀçÇö
2005-10   5423   ¼ÒÇöÁØ
2006-09   4469   ¹Úº´¿í
2007-01   4424   ¹ÚÀ翵
2008-01   4819   ÀÓÁø¿í
2003-06   10385   ±èµµ±Õ
2006-10   6874   ¾ÈâÁØ
2007-06   5931   ¹Úº´±¹
2005-04   7951   ±èÁ¤È£
2005-09   5329   ±èµµ¼º
2006-02   5503   ÇÏ»óÇÊ
2006-08   5323   ¿À°­¼®
2006-07   5467   ÀÌÁ¤È­
2005-12   5040   ½ÅÇöÁø