if two or more variables?


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting if two or more variables?
# 8  
Old 06-17-2010
Code:
# if you give 1 input, then xstr is empty, if you give more than one then extra values 
# is in var xstr. This is the easiest way to read N variables, read N+1 variables, last var 
# include all extra data
read var xstr
[ "$xstr" != "" ] && echo "too many values" && exit 1
echo $var

# 9  
Old 06-17-2010
Code:
#!/usr/bin/bash

echo enter variables
read INPUT
WORDS=`echo $INPUT | wc -w`

case $WORDS in
        1)
                echo one variable found
                ;;
        2)
                echo TWO variables found
                ;;
        *)
                echo ERROR: Incorrect number of variables supplied
                exit 1
                ;;
        esac

# 10  
Old 06-18-2010
No mate, it's not what i am looking for.
I need to read one or more variable in a single input:

read x
or
read x y

and

if "one variable" do
or
if "two variable" do
# 11  
Old 06-18-2010
when u reading varibales. is it like telling your script to run in different modes. As in what i m trying to say. if 1 variable call (BB.ksh ) if 2 varibles call (DD script)

Code:
while getopts() s: d: m:
do
case $(VAR) in 
S) Single=${OPTARG};;
D) Double=${OPTARG};;
*) Multiple=ERR;;
esac
done

If you use the above command you will not be able to read them. Unless u calling them in another script. u have to pass your script with modes for eg:
Code:
suppose ur scirpt name is Krame.ksh then shud call like this
eg:-
1) Krame.ksh -S {ur single input}
2) krame.ksh -S {single input} -D {Second input}
3) krame.ksh -S (something) -D (anythin) -S (smthng again) = this wil throw error

# 12  
Old 06-18-2010
Something like this:

Code:
 
#!/usr/bin/ksh

read a b

if [ ! -z "$a" ]&&[ ! -z "$b" ]; then
echo "two"
elif [ ! -z "$a" ] || [ ! -z "$b" ] ; then
echo "one"
else
echo "oops!!!, both are empty"
fi


Last edited by panyam; 06-18-2010 at 04:58 AM.. Reason: More generalized one
# 13  
Old 06-18-2010
Quote:
Originally Posted by panyam
Something like this:

Code:
 
#!/usr/bin/ksh
 
read a b
 
if [ ! -z "$a" ]&&[ ! -z "$b" ]; then
echo "two"
elif [ ! -z "$a" ] || [ ! -z "$b" ] ; then
echo "one"
else
echo "oops!!!, both are empty"
fi




That is perfect mate! Thanks!

Last edited by marimovo; 06-18-2010 at 11:24 AM..
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

How to pass variables into anothother variables?

Below are three variables, which I want to pass into variable RESULT1 username1=userid poihostname1=dellsys.com port1=8080 How can I pass these variables into below code... RESULT1=$((ssh -n username1@poihostname1 time /usr/sfw/bin/wget --user=sam --password=123 -O /dev/null -q... (4 Replies)
Discussion started by: manohar2013
4 Replies

2. Shell Programming and Scripting

Passing awk variables to bash variables

Trying to do so echo "111:222:333" |awk -F: '{system("export TESTO=" $2)}'But it doesn't work (2 Replies)
Discussion started by: urello
2 Replies

3. Shell Programming and Scripting

BASH arrays and variables of variables in C++

Sometimes it is handy to protect long scripts in C++. The following syntax works fine for simple commands: #define SHELLSCRIPT1 "\ #/bin/bash \n\ echo \"hello\" \n\ " int main () { cout <<system(SHELLSCRIPT1); return 0; } Unfortunately for there are problems for: 1d arrays:... (10 Replies)
Discussion started by: frad
10 Replies

4. Shell Programming and Scripting

Running a script with multiple variables like 25 variables.

Hi All, i have a requirement where i have to run a script with at least 25 arguements and position of arguements can also change. the unapropriate way is like below. can we achieve this in more good and precise way?? #!/bin/ksh ##script is sample.ksh age=$1 gender=$2 class=$3 . . .... (3 Replies)
Discussion started by: Lakshman_Gupta
3 Replies

5. Shell Programming and Scripting

Variables

I need to define a variable of variable. I'll try to explain it. I've a list: LIST="aaa bbb ccc"I need to do something like: for word in LIST ;do res_$word=`ls $word` done This doesn't work. Any idea? Thanks (3 Replies)
Discussion started by: kekaes
3 Replies

6. Shell Programming and Scripting

Using cd on Variables

I can't for the love of me figure out how to work with double quotes and single quotes in variables in bash scripts. For instance, I added the following line to my .bash_aliases file: WINDOWS="'/host/Documents and Settings/Solar Zenith/My Documents'"; I want this so that I can go straight to 'My... (2 Replies)
Discussion started by: solar zenith
2 Replies

7. Programming

How to convert byteArray variables to HexaString variables for Linux?

Hello everybody, I am having problem in converting byte array variables to Hexa String variables for Linux. I have done, converting byte array variables to Hexa String variables for Windows but same function doesn't work for linux. Is there any difference in OS ? The code for Windows is given... (2 Replies)
Discussion started by: ritesh_163
2 Replies

8. Shell Programming and Scripting

naming variables with variables

Hello, FIRST QUESTION: I am writing a script in which a query is taken at the beginning of the script to be later used at the end. In the query, variables are generated from a loop, and I would like to assign the variable NAME (not value) with an appended 1, 2, 3, 4.....n. The number of... (2 Replies)
Discussion started by: Allasso
2 Replies

9. Shell Programming and Scripting

non-variables with $

I am writing a csh script and I need to echo a word that starts with $ and is not a variable. How do I do that? (3 Replies)
Discussion started by: oprestol
3 Replies

10. UNIX for Dummies Questions & Answers

Using Variables to Set Other Variables

I have a script that I'm trying to shorten (below) by removing repetitive code. if ] then commodity_ndm_done=Y fi if ] then customer_ndm_done=Y fi if ] then department_ndm_done=Y fi if ] then division_ndm_done=Y fi (3 Replies)
Discussion started by: superdelic
3 Replies
Login or Register to Ask a Question