grep 문법 설명 좀...급해요. 도와주세요

lets1980의 이미지

grep 용법이 너무 까다롭네요ㅠ

grep 'program\?' greptest1.txt 에서
'의 의미,
\의 의미,
?의 의미, 3가지가 궁금합니다.
근데, 이건, grep program greptest1.txt 하고 결과가 같던데
무슨 이유인건 가요.........

grep 'programmmer\+' greptest1.txt 에서
+ 의 의미가 궁금합니다.
결과값은 알겠는데.....이게 문장채로 나와서 도통 무슨 근거로 나오는건지 모르겠네요

grep '\<[A-Z]\{5\}' greptest1.txt 에서
전체 해석이 어떻게 되는건가요;;

grep -E fff* greptest1.txt 에서
*의 의미가 궁금하네요..........
-E는 검색 단어의 위치를 무시하는 명령어로 보입니다만..........

grep -E '(GPL)' greptest1.txt 에서
()의 의미가 궁금합니다. 예상은 되는데.......혹시 또 몰라서 이것도 여쭈어봅니다

ps. egrep 이 다루기 쉬운듯--a...........

jachin의 이미지

# man grep
명령을 이용해서 Repetition 부분을 읽어보시면 될 겁니다.
====
( - -)a 이제는 학생으로 가장한 백수가 아닌 진짜 백수가 되어야겠다.

Hyun의 이미지

Quote:
grep 'program\?' greptest1.txt 에서
'의 의미,

작은 따옴표(')는 쉘이 작은따옴표 안의 특수문자 등을 변환하지 말고 그대로 사용하라는 뜻입니다. 즉 program\?를 grep 프로그램의 파라미터로 바로 넘기라는 의미죠. 작은따옴표를 사용하지 않으면 역슬래쉬(\)를 다르게 번역할껍니다(아마도).
나도 세벌식을 씁니다
lets1980의 이미지

man grep 하면 영어로 뜨는지라..............
해석이 되도 이해가 안 되네요......

쿠크다스의 이미지


Quote:
결과값은 알겠는데.....이게 문장채로 나와서 도통 무슨 근거로 나오는건지 모르겠네요

grep명령을 실행할 때 -o옵션을 붙히시면, 패턴에 매치되는 부분만 출력해 줍니다.

과자가 아닙니다.
cuckoo dozen, 즉.12마리의 뻐꾸기란 뜻입니다.

과자가 아닙니다.
cuckoo dozen, 즉.12마리의 뻐꾸기란 뜻입니다.

jachin의 이미지

Repetition (반복)
 A regular expression may be followed by one of several repetition operators:
 정규표현식은 다음의 몇몇 반복연산자에 대한 규칙을 따르고 있습니다.

?
The preceding item is optional and matched at most once.
연산자 앞에 붙을 항목은 부가적이며, 적어도 하나의 문자와 일치합니다.
*
The preceding item will be matched zero or more times.
연산자 앞에 붙은 항목이 일치하지 않거나 하나 이상의 단어와 일치합니다.
+
The preceding item will be matched one or more times.
연산자 앞에 붙은 항목은 한 번 이상 일치합니다.
{n}
The preceding item is matched exactly n times.
연산자 앞의 항목이 정확히 n번 일치합니다.
{n,}
The preceding item is matched n or more times.
연산자 앞의 항목이 n번 이상 일치합니다.
{,m}
The preceding item is matched at most m times.
연산자 앞의 항목이 최대 m번 이상 일치합니다.
{n,m}
The preceding item is matched at least n times, but not more than m times.
연산자 앞의 항목이 n번 이상 m번 이하로 일치합니다.

grep 'programmmer\+' greptest1.txt
programmmer로 시작하는 단어를 greptest1.txt에서 찾습니다.

grep '\<[A-Z]\{5\}' greptest1.txt
단어의 시작이 5글자 영문 대문자로 시작하는 단어를 greptest1.txt 에서 찾습니다.

grep -E '(GPL)' greptest1.txt
POSIX에서 지원하는 확장된 GREP 문법을 이용하여 (GPL)이라는 단어를 greptest1.txt에서 찾습니다.

라는 뜻입니다. 영어라서 모르는 것이 아니라, 실험해보지 않았기 때문에 그런 것이 아닐까요?
====
( - -)a 이제는 학생으로 가장한 백수가 아닌 진짜 백수가 되어야겠다.

lets1980의 이미지


제가 궁금했던건......\ ' ? + * 이런.....괴상한 표시 때문에
이해가 잘 안 되더군요.
덕분에 조금이나마 이해가 갑니다.
신세졌습니다

댓글 달기

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