Shell Scripting: Convert Uppercase to Lowercase

Q. How do I convert uppercase words to lowercase or vise versa under BASH shell? I’ve a small shell script and I’d like to convert all incoming user input to lowercase using a shell script.

A. Use tr command to convert all incoming text / words / variable data from upper to lower case or vise versa (translate all uppercase characters to lowercase).


Convert all text file data from upper to lowercase:

Type the following command at shell:
$ tr '[:upper:]' '[:lower:]' < input.txt > output.txt

Convert variable data from upper to lowercase:

$ echo $VAR_NAME | tr '[:upper:]' '[:lower:]'
$ echo $VAR_NAME | tr '[:lower:]' '[:upper:]'

Recommended readings:

=> See tr command shell scripting example for more information.

Sample Shell Script

# get filename
echo -n “Enter File Name : “
read fileName

# make sure file exits for reading
if [ ! -f $fileName ]; then
echo “Filename $fileName does not exists”
exit 1

# convert uppercase to lowercase using tr command
tr ‘[A-Z]‘ ‘[a-z]‘ < $fileName

Thue server vps
digg delicious stumbleupon technorati Google live facebook Sphinn Mixx newsvine reddit yahoomyweb