• Posts
  • RSS
  • ◂◂RSS
  • Contact

  • Colored grep

    January 19th, 2009
    programming, shell  [html]
    I figured out some cool stuff I can do with colored grep. I often want to, when grepping, see the bit that matched in a different color. I knew grep --color would do this, but I'd wanted to be able to do this with multiple greps and multiple colors. Then I noticed the GREP_COLOR environment variable and the grep --color=always options. So I made the aliases:
    alias grey-grep="GREP_COLOR='1;30' grep --color=always"
    alias red-grep="GREP_COLOR='1;31' grep --color=always"
    alias green-grep="GREP_COLOR='1;32' grep --color=always"
    alias yellow-grep="GREP_COLOR='1;33' grep --color=always"
    alias blue-grep="GREP_COLOR='1;34' grep --color=always"
    alias magenta-grep="GREP_COLOR='1;35' grep --color=always"
    alias cyan-grep="GREP_COLOR='1;36' grep --color=always"
    alias white-grep="GREP_COLOR='1;37' grep --color=always"
    
    These let me do things like:
    user@host /path/to/cwd $ echo hello there | blue_grep ll | yellow_grep ere
    hello there
    The primary use for me is when I want to look for something and don't really know what it is yet. Often this will include wanting to find things that are near each other, but I'm not sure how near. The color helps immensely with visual grepping.

    The main downside to this method is that I have to specify the color. What I really want to have is something where multiple calls to color grep in the same pipe automagically use different colors.

    Update 2012-09-25: If you want to just highlight things in the output, you can run these with a -C 10000 argument. Or define some more commands:

    alias highlight-grey="grey-grep -C 10000"
    alias highlight-red="red-grep -C 10000"
    
    I've found multiple colors too much work, though, and so just have:
    alias highlight="grep --color=always -C 10000"
    

    Comment via: facebook

    Recent posts on blogs I like:

    Willingness to look stupid

    People frequently1 think that I'm very stupid. I don't find this surprising, since I don't mind if other people think I'm stupid, which means that I don't adjust my behavior to avoid seeming stupid, which results in people thinking tha…

    via Posts on Dan Luu October 21, 2021

    Experiences in raising children in shared housing

    Sometimes I see posts about people’s hope to raise children in a group housing situation, and it often seems overly optimistic to me. In particular they seem to expect that there will be more shared childcare than I think should be expected. Today I talke…

    via The whole sky October 18, 2021

    EDT with updating double counts

    I recently got confused thinking about the following case: Calculator bet: I am offered the opportunity to bet on a mathematical statement X to which I initially assign 50% probability (perhaps X = 139926 is a quadratic residue modulo 314159). I have acce…

    via The sideways view October 12, 2021

    more     (via openring)


  • Posts
  • RSS
  • ◂◂RSS
  • Contact