User Tools

Site Tools


grep_usage

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
grep_usage [2021/03/18 04:58] – [wordscapes] rajugrep_usage [2023/09/07 21:03] (current) – [repeat previous character N times] raju
Line 1: Line 1:
 +==== dummy ====
 +  * [[Remove lines with duplicate letters]]
 +  * [[grep on find results]]
 +
 ==== wordscapes ==== ==== wordscapes ====
-tags | word scape+tags | word scape, wordscape
 <code> <code>
 % grep -i "^[slev][slev][slev][slev]s$" /usr/share/dict/american-english  % grep -i "^[slev][slev][slev][slev]s$" /usr/share/dict/american-english 
Line 6: Line 10:
 sells sells
 </code> </code>
 +
 +Remove lines with duplicate letters
 +<code>
 + % grep -Ei "^[hikers]{5}$" /usr/share/dict/american-english | grep -Eiv "(.).*\1"
 +...
 +shire
 +shirk
 +skier
 +</code>
 +
 +compare this with
 +<code>
 + % grep -Ei "^[hikers]{5}$" /usr/share/dict/american-english
 +...
 +shire
 +shirk
 +shirr
 +sires
 +sises
 +skier
 +skies
 +</code>
 +
 +which also shows words where some letters are repeated twice.
  
 ==== repeat previous character N times ==== ==== repeat previous character N times ====
Line 23: Line 51:
 niche niche
 niece niece
 +</code>
 +
 +Another example:
 +<code>
 + % grep -Ei "^([dunes]){2}u([dunes]){2}d$" /usr/share/dict/american-english
 +unused
 +</code>
 +
 +==== print lines with less than a certain number of characters ====
 +To print lines that contain less than N characters
 +<code>
 +grep -Ev ".{N}" data.txt
 +</code>
 +
 +For example:
 +To print lines that contain less then 6 characters
 +<code>
 +grep -Ev ".{6}" data.txt
 +</code>
 +
 +You can also do
 +<code>
 +grep -v "......" data.txt
 +</code>
 +where the . is repeated N times. This is easier to type for small N.
 +
 +Sample run:
 +<code>
 +$ cat data.txt
 +a
 +ab
 +abc
 +abcd
 +abcde
 +abcdef
 +abcdefg
 +
 +$ grep -v "......" data.txt
 +a
 +ab
 +abc
 +abcd
 +abcde
 +
 +$ grep -Ev ".{6}" data.txt
 +a
 +ab
 +abc
 +abcd
 +abcde
 </code> </code>
  
grep_usage.1616043508.txt.gz · Last modified: 2021/03/18 04:58 by raju