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 [2023/08/11 13:49] – [wordscapes] rajugrep_usage [2023/09/07 21:03] (current) – [repeat previous character N times] raju
Line 1: Line 1:
 ==== dummy ==== ==== dummy ====
 +  * [[Remove lines with duplicate letters]]
   * [[grep on find results]]   * [[grep on find results]]
  
Line 9: 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 32: Line 57:
  % grep -Ei "^([dunes]){2}u([dunes]){2}d$" /usr/share/dict/american-english  % grep -Ei "^([dunes]){2}u([dunes]){2}d$" /usr/share/dict/american-english
 unused 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.1691761779.txt.gz · Last modified: 2023/08/11 13:49 by raju