vi – changing case

As most system administrators, I use the vi text editor a ton in my job. So I am familiar with all the common commands you can run. Today I was wondering if it was possible to change lower case to upper case letters and the opposite, from upper case to lower case letters.

Here’s how you do it:

change all lower case to upper case (CAPITAL LETTERS):

:%s/^.*$/U&/g

change all upper case to lower case (small letters):

:%s/^.*$/L&/g

Of course, the % is the entire document, the s///g is search and replace the entire line, ^.*$ matches everything, and the important part L& converts to lower case and U& converts to upper case.

5 thoughts on “vi – changing case

  1. The example posted in the original post does not work for my version of vi. It only adds an “L” to the beginning of each line.

    The commands mike posted did the trick for me.

Leave a Comment