Visit Our UNIX and Linux User Community


Uppercase to lowercase and vice versa


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Uppercase to lowercase and vice versa
# 1  
Old 03-26-2011
Uppercase to lowercase and vice versa

shell script to convert file names from UPPERCASE to lowercase file names or vice versa in linux
anybody please help me out!!!!
# 2  
Old 03-26-2011
Code:
# bash --version
GNU bash, version 4.1.9(2)-release (i386-portbld-freebsd7.3)
Copyright (C) 2009 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>

This is free software; you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.


# cat script
#!/bin/bash
if [ ${#} -eq 0 ];then
        echo "Usage $0 [string]"
        exit
fi

for ((i=0;i<${#1};i++))
do
        char=${1:$i:1}
        case $char in
                [a-z]) new_string=${new_string}${char^};;
                [A-Z]) new_string=${new_string}${char,};;
                    *) new_string=${new_string}${char} ;;
        esac
done
echo In: \""$1"\"   Out: \""$new_string"\"

# /temp/script
Usage /temp/script [string]

# /temp/script "TeSt StR1Ng?"
In: "TeSt StR1Ng?" Out: "tEsT sTr1nG?"

# 3  
Old 03-26-2011
Code:
#!/bin/ksh

if [[ $# != 1 ]]; then
   echo "Usage $0 [string]"
   exit 1
fi

instr=$1
typeset -u ustr=$1
typeset -l lstr=$1

echo "IN: $instr  UPPER: $ustr  LOWER: $lstr"

exit 0

# 4  
Old 03-28-2011
Code:
tr '[:lower:][:upper:]' '[:upper:][:lower:]'

# 5  
Old 03-28-2011
Code:
echo "this is small case" | tr '[[:lower:]]' '[[:upper:]]'
THIS IS SMALL CASE

# 6  
Old 03-28-2011
Quote:
Originally Posted by tene
Code:
echo "this is small case" | tr '[[:lower:]]' '[[:upper:]]'
THIS IS SMALL CASE

The syntax for a tr character class uses single brackets not double; tr does not use regular expressions. If you are unconvinced, try the following:

Code:
echo '[abc]' | tr -d '[[:lower:]]'

and compare the result to
Code:
echo '[abc]' | tr -d '[:lower:]'

which is equivalent to the following sed, which does use regular expressions
Code:
echo '[abc]' | sed 's/[[:lower:]]//g'

In your original test case, it only appears to work because '[' in the first string is matched by an identical '[' in the second, so that the translisteration does not change the result (same for ']').

Regards,
Alister

Previous Thread | Next Thread
Test Your Knowledge in Computers #662
Difficulty: Easy
The drives in DOS are referred to by identifying integers.
True or False?

9 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Command for Host Name to IP Address or Vice Versa

Hi, In unix or linux is there any command exist to identify Host Name to IP Address or Vice Versa? Thanks in advance (6 Replies)
Discussion started by: nag_sathi
6 Replies

2. UNIX for Dummies Questions & Answers

How to ping from Windows to Solaris 10 and vice versa?

Hi all, I installed Oracle virtual box 4.1.8 on my desktop. I installed Windows 2008 server R2 as one instance and Solaris 10 as another instance. When am trying to ping from Windows to solaris and vice-versa, ping not working. windows IP : 10.1.47.24 Solaris IP : 10.1.47.25 netstat... (2 Replies)
Discussion started by: kjks
2 Replies

3. Shell Programming and Scripting

Converting from Centigrade to Fahrenheit and vice versa.

I need to write a script that will take the input from a file and convert the number from centigrade to fahrenheit and vice versa. This is what I have but it doesn't seem to be correct. Also the data file has 11 numbers inside of it and the output needs to be listed as so: Fahrenheit Temperature... (18 Replies)
Discussion started by: N1ckNak
18 Replies

4. UNIX for Dummies Questions & Answers

Problem with scp from one server to the other (but not vice versa)

Hi I have a system PRIMARY where I can push or pull files to/from STANDBY using scp. I can also ssh without entering a password. On the STANDBY system if I try and use scp or ssh it asks for a password. I checked in ~/.ssh and there was no authorized_keys file on the PRIMARY server. After... (2 Replies)
Discussion started by: mrrossi
2 Replies

5. Ubuntu

What is the advantage of ubuntu over vista and vice versa?

i am thinking of replacing my vista with ubuntu. Questions: 1) what will be the advantages and disadvantages of using ubuntu instead of vista? 2) what will be the setbacks of replacing my vista? 3) how hard is it to cope up with the new OS? what must i learn to utilize ubuntu? (1 Reply)
Discussion started by: Anna Hussie
1 Replies

6. UNIX for Dummies Questions & Answers

Appending from a file to a script and vice versa

Hi, I am new to Unix and discovered this example problem online that I believe will help my learning: Run the command's below env >> xx env >> xx env >> xx env >> xx env >> xx You will now have a file called XX with the env redirected into it 5 times Create a script named... (2 Replies)
Discussion started by: Jimmy_c
2 Replies

7. Shell Programming and Scripting

Pdf to text conversion and vice versa

Hi, I have a pdf file. i want to convert it to text file and do some work on it and later want to convert it back to pdf. Can this be done via unix? or Is there a way unix can directly work on PDF file? (2 Replies)
Discussion started by: saltysumi
2 Replies

8. Shell Programming and Scripting

sed help to convert from lowercase to uppercase and vice versa!

Hello, can sed be used to convert all letters of a file from uppercase to lowercase and vice versa?i know tr command can be used but with sed is it possible? i came up with this :- sed 'y///' file1 actually the above command is also not working! Please help me. Thanks in advance :) (6 Replies)
Discussion started by: salman4u
6 Replies

9. Programming

binary to string conversion and vice versa

please let me know that in unix using c programming language we can do binary to string conversion and vice versa using ltoa and atol but how can we do it in c++ programming language. thank you in advance. (3 Replies)
Discussion started by: kinnaree
3 Replies

Featured Tech Videos