Introducing UNIX and Linux |
Overview |
Answer to chapter 10 question 5Begin by replacing all characters which are not digits by blanks, then translate each blank to a newline, remove all empty lines, and finally sort the result to be in numerical (rather than lexical) order, removing duplicates: sed 's/[^0-9]/ /g' | # Pattern [^0-9] matches # any non-digit tr " " "\n" | # Replace blanks by newlines grep -v '^$' | # Select all lines NOT # matching ^$ sort -u -n # Sort, remove duplicated lines # into numerical order |
Copyright © 2002 Mike Joy, Stephen Jarvis and Michael Luck