sed awk 질문

jiphyunjeon의 이미지

안녕하세요.
여기 와서 많은 도움을 받았습니다.
고수님이 너무 많은거 같아요.

이번에 질문할 내용
0002.0015.72e8 => 00:02:00:15:72:e8 변경이 되었으면 좋겠습니다.
아래처럼 치면 그아래와 같은 결과가 나왔으면 좋겠습니다.

/home/yeddd $ macs 0002.0015.72e8
00:02:00:15:72:e8

sed 나 awk 를 쓰면 아주 간단하게 되던데...

좀 수고스럽지만 설명을 함께 설명 해주시면 더욱 감사하겠습니다.

이 글을 읽은 분들에게 행운과 건강이 함께하길

그럼

nachnine의 이미지

 awk -F '' ' { print $1$2":"$3$4":"$6$7":"$8$9":"$11$12":"$13$14 } ' a.txt 

진짜 무식하죠 -_-??


-F 는 Field separator 입니다.

'' 으로 주면 각 문자를 1개씩 취하구요

$n 은 n 번째 field 입니다. $0은 전체구요


훨씬더 엘레강스한 방법을 고수분들께서 올려주실겁니다.

dreampia의 이미지

윗분이나 별반 다를 것은 없겠지만..

sed -e 's/\.//g' -e 's/../&:/g' -e 's/:$//'


[dreampia@w-025 test]$ ./macs 0002.0015.72e8
00:02:00:15:72:e8
[dreampia@w-025 test]$ cat macs
#!/bin/sh

echo "$1" | sed -e 's/\.//g' -e 's/../&:/g' -e 's/:$//'

[dreampia@w-025 test]$

sed -e 's/a/b/c' 는 a pattern을 찾아서 b로 변경해라 입니다. c는 옵션입니다.

sed -e 's/\.//g'

. 을 찾어서 없애 줍니다. g 는 전체를 의미합니다.

-e 's/../&:/g'

문자 2개를 찾아서 : 를 붙여줍니다. ( & 는 s/a/b/ 에서 a에 걸리는 전부를 의미합니다. ).

-e 's/:$//'

마지막이 : 일 경우 ( :$ ) 지워버립니다.

>/dev/null 2>&1

jiphyunjeon의 이미지

감사합니다.
이런 답변을 주시는 부분은 어떤분들이세요 ?
암튼 감사합니다. 잘 쓰겠습니다.
설명까지 해주셔서 너무나 감사합니다.
세상엔 고수가 많다.

몸 건강하세요.

댓글 달기

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
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.