A common problem when you’re writing bash scripts or creating one liners is to get something from the end of some text. That could be last N characters, the last word etc etc.
There are a number of ways to do this like without using
rev but you will need to remember the unique method for each problem. For example, take the following line:
Say you want to extract the five from the end of the line. The problem is that you need to grab the last word from lines that have different number of different words. This can get complicated.
Unless you use
rev reverses any input e.g.:
$ echo "one.two.three.four.five" | rev evif.ruof.eerht.owt.eno
Now you can just cut the first word:
$ echo "one.two.three.four.five" | rev | cut -d"." -f1 evif
And finally pass it back through
echo "one.two.three.four.five" | rev | cut -d"." -f1 | rev five
This will work no matter length of the line or last word e.g.:
$ echo "To be or not to be" | rev | cut -d" " -f1 | rev be
$ echo "220.127.116.11" | rev | cut -d"." -f1 | rev 4
You will find the technique surprisingly useful now you are aware of it.