LeetCode-in-Java

192. Word Frequency

Medium

Write a bash script to calculate the frequency of each word in a text file words.txt.

For simplicity sake, you may assume:

Example:

Assume that words.txt has the following content:

the day is sunny the the
the sunny is is 

Your script should output the following, sorted by descending frequency:

the 4
is 3
sunny 2
day 1 

Note:

Solution

# Read from the file words.txt and output the word frequency list to stdout.
sed -e 's/ /\n/g' words.txt | sed -e '/^$/d' | sort | uniq -c | sort -r | awk '{print $2" "$1}'