[완료]c shell 에서 문자 처리. 문자 따오기. 방법좀

chojg711의 이미지

답글달아주셔서 대단히 감사합니다.
여러분들 덕분에 굉장히 많은것들 배웠습니다. ^^

다음과 같은 경우입니다.
bash shell을 이용해서

AAA=2006060100
middle=${AAA:0:8}
echo $middle

이렇게 해주면 20060601 이라고 middle 에 20060601 이 저장되잖아요..

이것처럼 csh script로 원하는 부분에서부터 문자를 잘라서 변수에 저장할려면 어떻게 해야하나요...

죄송합니다... 부탁드리겠습니다.

slc1의 이미지

set AAA="2006060100"
set middle=`echo $AAA|awk '{for(i=1;i<=length($0);i++) if(i<=8) O=sprintf("%s%s",O,substr($1,i,1));print O}'`
echo $middle

slc1의 이미지

첨부 참조하세요.

pung96의 이미지

awk에도 substr함수가 있습니다.

slc1의 이미지

set AAA="2006060100"
set middle=`echo $AAA|awk '{print substr($0,1,8)}'`
echo $middle

pung96의 이미지

갑자기 든 생각인데 echo 에 pipe까지 쓰는건 아까운것 같습니다.
set middle=`awk -v a=$AAA 'BEGIN{print substr(a,1,8)}'`
정도..

slc1의 이미지

오호라~ 좋고..
한수 배웁니다.

slc1의 이미지

awk의 -v option은 solaris의 /usr/bin/awk에서는 지원되지 않고,,
/usr/xpg4/bin/awk 혹은 nawk를 써야하네요..
호환성이 조금은 떨어지게 되는군요..

pung96의 이미지

사실은 저도 -v 옵션보다는

set middle=`awk 'BEGIN{print substr("'$AAA'",1,8)}'`
형태로 많이쓰는데.. 가독성이 좋자 않아서 -v옵션을 쓰는것이 어떨까 생각해봤습니다.

경우에 따라 다음과 같이 쓰기도 합니다.
set middle=`awk 'BEGIN{print substr(\042'$AAA'\042,1,8)}'`

이경우는 solaris에서 어떻게 작동하나요? solaris는 안써봐서 잘 모르겠네요.

추가.. 생각해 보니 일반적이지는 않지만 이경우에는
awk "BEGIN{print substr($AAA,1,5)}"
로 써도 되겠군요

ㅡ,.ㅡ;;의 이미지

cut 도 있음..
----------------------------------------------------------------------------
C Library Development Project


----------------------------------------------------------------------------

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.