Visit Our UNIX and Linux User Community


ksh "case" statement question


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting ksh "case" statement question
# 1  
Old 08-06-2009
ksh "case" statement question

Hi
I have the following case statement:

case $larg in
*_* )
a=${larg%_*}; b=${larg#*_};
;;
*^* )
a=${larg%^*}; b=${larg#*^};
;;
esac

I cannot figure out what *_* and *^* stand for...

Also what a=${larg%_*}; b=${larg#*_}; and
a=${larg%^*}; b=${larg#*^}; calls do

Thanks a lot for help and your time -A
# 2  
Old 08-06-2009
Hi,

First *_* : it represent a string in two (or more) parts as follow :
Quote:
blablabla_123azerty
Note that the * represent whatever char you want.
(of course, *^* is the same but with ^ instead of _ )

Secondly a=${larg%_*}; b=${larg#*_} :

It means that in a you will put all what is before "_" in your string and in b all what is after "_".
With the example I wrote, you will have
Quote:
a = blablabla
b=123azerty

For more info on string manipulation, I advise you this website (in french I'm sorry...) :
Tutoriel de Bash: Les chaînes de caractères - La boîte à prog

I hope I am claer enough so that you understand...
Regards

Previous Thread | Next Thread
Test Your Knowledge in Computers #115
Difficulty: Easy
Linux is a continuation of the Unix design philosophy.
True or False?

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

How to retrieve "case "statement return value ?

How do we retrieve case statement return value at point indicated in the attached snippet case "$FUN" in 1\ *) do_change_pass ;; 2\ *) do_network_menu ;; 3\ *) do_boot_menu ;; 4\ *) do_internationalisation_menu ;; 5\ *) do_ssh... (6 Replies)
Discussion started by: annacreek
6 Replies

2. UNIX for Dummies Questions & Answers

Question using 2 variables in a "for" statement

Good Morning, I typically run a batch of commands, from the command line, to process server operating statistics. That would look like this: (these are days of the month) In this instance I am processing a directory of file for July 6th 7th etc. Those files would have names... (9 Replies)
Discussion started by: scotm
9 Replies

3. UNIX for Advanced & Expert Users

Should I say "field 8" or "column 8" in this case?

I saw some recent posts where I thought the terms "field" and "column" were being misused. I work with data a lot, and have my opinions. I'm wondering if those opinions are correct. ***** Rows seem clear - I don't think there is any controversy about what a row is, either for database or text... (10 Replies)
Discussion started by: hanson44
10 Replies

4. UNIX for Dummies Questions & Answers

What is the meaning of "-s" option in "if" statement?

Hi Guys, I'm sorry but I can't find answer for this, what is the meaning of -s option in "if" statement on unix scipting. Please see sample below: opath=/home/output for i in N1 N2 N3 N4 do echo $i if then grep $i $opath/N5_CRAI > $opath/N5_$i.crai chmod 777 $opath/N5_$i.crai ... (7 Replies)
Discussion started by: rymnd_12345
7 Replies

5. Shell Programming and Scripting

Purpose of "read" and "$END$" in ksh ?

Hi, Could anyone please shed some light on the following script lines and what is it doing as it was written by an ex-administrator? cat $AMS/version|read a b verno d DBVer=$(/usr/bin/printf "%7s" $verno) I checked that the cat $AMS/version command returns following output: ... (10 Replies)
Discussion started by: dbadmin100
10 Replies

6. Shell Programming and Scripting

awk command to replace ";" with "|" and ""|" at diferent places in line of file

Hi, I have line in input file as below: 3G_CENTRAL;INDONESIA_(M)_TELKOMSEL;SPECIAL_WORLD_GRP_7_FA_2_TELKOMSEL My expected output for line in the file must be : "1-Radon1-cMOC_deg"|"LDIndex"|"3G_CENTRAL|INDONESIA_(M)_TELKOMSEL"|LAST|"SPECIAL_WORLD_GRP_7_FA_2_TELKOMSEL" Can someone... (7 Replies)
Discussion started by: shis100
7 Replies

7. Shell Programming and Scripting

What "-a" operator means in "if" statement

Hi I am trying to figure out what the following line does, I work in ksh88: ] && LIST="$big $LIST" Not sure what "-a" means in that case. Thanks a lot for any advice -A (1 Reply)
Discussion started by: aoussenko
1 Replies

8. UNIX for Advanced & Expert Users

A question/problem about oracle "tns listener" and "enterprise manager"

hi, I have a problem about the Oracle related components. I'm not able to find any answer yet, and waiting for your responses... Here is the configuration of my system: * an IBM P550 machine, * an AIX 5.3 running on it and * an oracle database, already installed on it. The problem (or... (1 Reply)
Discussion started by: talipk
1 Replies

9. UNIX and Linux Applications

A question/problem about oracle "tns listener" and "enterprise manager"

hi, I have * an IBM P550 machine, * an AIX 5.3 running on it and * an oracle database, already installed on it. The problem (or question of my own) is: Oracle tns listener, "CT_LISTENER", and the enterprise manager (EM) of the instance, which is uniq instance and called... (0 Replies)
Discussion started by: talipk
0 Replies

10. HP-UX

script running with "ksh" dumping core but not with "sh"

Hi, I have small script written in korn shell. When it is called from different script, its dumping core, but no core dump when we run it standalone. And its not dumping core if we run the script using "/bin/sh" instead of "ksh" Can some body please help me how to resolve this issue. ... (9 Replies)
Discussion started by: simhe02
9 Replies

Featured Tech Videos