Write a bash script to calculate the frequency of each word in a text file words.txt.
words.txt
For simplicity sake, you may assume:
words.txt contains only lowercase characters and space ' ' characters.
' '
Each word must consist of lowercase characters only.
Words are separated by one or more whitespace characters.
Note:
Don't worry about handling ties, it is guaranteed that each word's frequency count is unique.
Could you write it in one-line using Unix pipesarrow-up-right?
GeeksforGeeks
Leetcodearrow-up-right
ProgramCreek
YouTube
Input:
Assume that words.txt has the following content:
the day is sunny the the
the sunny is is
Output:
Your script should output the following, sorted by descending frequency:
the 4
is 3
sunny 2
day 1
Last updated 5 years ago
/** * Time complexity : * Space complexity : */ cat words.txt | tr -s ' ' '\n' | sort | uniq --count | sort -r | awk '{print $2 " " $1}'