![]() |
|
|
google unix.com
|
|||||||
| Forums | Register | Forum Rules | Links | Albums | FAQ | Members List | Calendar | Search | Today's Posts | Mark Forums Read |
| Shell Programming and Scripting Post questions about KSH, CSH, SH, BASH, PERL, PHP, SED, AWK and OTHER shell scripts and shell scripting languages here. |
More UNIX and Linux Forum Topics You Might Find Helpful
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| Perl - converting selected characters to upper/lower case | doubleminus | UNIX for Dummies Questions & Answers | 2 | 05-19-2008 02:13 AM |
| UNIX command to reverese lower and upper case | rfourn | Shell Programming and Scripting | 6 | 12-07-2007 10:33 PM |
| copy "cp" command how distinquish upper/lower case | bobk544 | UNIX for Dummies Questions & Answers | 1 | 09-17-2007 12:46 PM |
| lower case to upper case string conversion in shell script | dchalavadi | UNIX for Dummies Questions & Answers | 3 | 05-29-2002 01:07 AM |
| Upper And Lower Case | pciatto | Shell Programming and Scripting | 1 | 04-29-2002 01:17 PM |
![]() |
|
|
LinkBack | Thread Tools | Search this Thread | Rate Thread | Display Modes |
|
|
|
||||
|
Accepting Upper and Lower case
Hi Gurus,
This is my script: echo "" echo "Do you want to execute DWH Test Program?" echo "" echo -n "Okay?("y" or "n")=> " set ret = $< if ($ret != "y") then echo "" echo "" echo "End." exit 0 How can I make this script accept uppercase as well? Cos if I type a "Y" it will not recognise and end the program. Thanks. wee |
|
||||
|
Quote:
Many thanks for your contribution. what do u mean by the following sentence: "You could convert the input string to... all upper case and test for uppercase Y only all lower case and test for lowercase y only" ? i have tried using or in my if statement but they are not giving me the expected result...actually the whole script looks like this: echo "Do you want to execute DWH Test Program?" echo "" echo -n "Okay?("y" or "n")=> " set ret = $< if ("$ret" != "y" || "$ret" != "Y") then echo "" echo "" echo "End." exit 0 endif echo "" echo "---- DWH Program is running --------" echo "" /bin/rsh -n -l smtadm 140.32.12.34 /spsummit/apl/summit/nss_tools/scripts/test.csh >& /dev/null Once the prog check if its Yes or No then it will either exit or execute another script. any advise? thanks again. wee |
|
||||
|
Quote:
Code:
if ("$ret" != "y" && "$ret" != "Y") then
&& is required to be used with !=, ("$ret" != "y" || "$ret" != "Y") will always result in true. |
|
||||
|
Quote:
![]() |
|
||||
|
Hi my comments
"all upper case and test for uppercase Y only, or all lower case and test for lowercase y only" ret=`echo $ret | tr "[:lower:]" "[:upper:]"` if [ "$ret" != "Y" ].... or ret=`echo $ret | tr "[:upper:]" "[:lower:]"` if [ "$ret" != "y" ].... or "Revsisied - Thanks Vish" if ("$ret" != "y" && "$ret" != "Y")... Cheers |
|
||||
|
You should either declare your input variables as uppercase or lowercase: Code:
typeset -l INPUT1 # everything will be lowercase typeset -u INPUT2 # everything will be UPPERCASE Or, you can test for multiple choices at once: Code:
if [[ $INPUT == @(Y|y)* ]]; then echo Yep elif [[ $INPUT == @(N|n)* ]]; then echo Nope else echo WhatThe fi Note that the astersisk allows you to accept "yes" and "YES" (or "y" + anything). |
![]() |
| Bookmarks |
| Thread Tools | Search this Thread |
| Display Modes | Rate This Thread |
|
|