I have a file with 8 columns using | as a delimiter and I want to count the occurence frequency of the words in the 8th column. I tried awk like this
You can just awk to do this:
awk -F '|' '{freq[$8]++} END{for (i in freq) print freq[i], i}' file
This awk command uses | as delimiter and uses an array seen with key as $8. When it finds a key $8 increments the frequency (value) by 1.
Btw you need to add custom delimiter | in your command and use it like this:
awk -F '|' '{print $8}' file | sort | uniq -c