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

   Á¶È¸ 1707   Ãßõ 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 5365/5689
2014-05   5010916   Á¤ÀºÁØ1
2015-12   1546588   ¹é¸Þ°¡
04-01   1708   ±èÁ¦¿¬
2022-06   1708   ½Ãµµ´Ï
2022-01   1708   ÇãÀα¸¸¶Æ¾
2021-11   1707   Ç㿵Áø
2022-04   1707   Initu2
03-11   1707   comcom1515
2023-10   1707   ½Ã°øÀÇÆødz
2022-11   1707   cho609495
2021-12   1707   Xecus
2023-01   1706   yummy
2022-10   1706   ¹üÀÌ´Ô
2022-06   1706   9chani
2022-04   1706   ¹«¾Æ
2023-07   1706   ´ÙµÎ
2021-10   1706   Æ®·»µå
2023-10   1706   ¹Ú¹®Çü
06-19   1706   ÇÚÁî
2021-06   1706   ³×ÀÌÃÄ
06-30   1705   Rich
2021-07   1705   ¾çÂ÷¿ì