Sponsored Content
Top Forums Shell Programming and Scripting '*' vs. '@' in Korn Shell Array Variables Post 302672495 by Clovis_Sangrail on Monday 16th of July 2012 12:08:29 PM
Old 07-16-2012
'*' vs. '@' in Korn Shell Array Variables

In order to use the shellcurses functions described at:

Shell Curses function library

I am learning about ksh, which has arrays. My trusty Kochan & Wood book says that for any Korn Shell array AR :

${AR[*]} expands to all the defined array elements, and

${#AR[*]} expands to the number of array elements.

But the example programs from the above website use '@' instead of '*' in the two expressions above. Both seem to work. My sample program:

Code:
#!/usr/bin/ksh93.att
source /home/lc25487/ksh/shellcurses.ksh
 
MENU[0]="First Menu Line"
MENU[1]="Second Menu Line"
MENU[2]="Third Menu Line"
ITEMCNT=${#MENU[@]}
ITEMCNTSTAR=${#MENU[*]}
ALLITEMS="${MENU[@]}"
ALLITEMSSTAR="${MENU[*]}"
echo
echo ITEMCNT = $ITEMCNT
echo ITEMCNTSTAR = $ITEMCNTSTAR
echo ALLITEMS = $ALLITEMS
echo ALLITEMSSTAR = $ALLITEMSSTAR
echo

produces the following output (on AIX 6.1):

==========
lipossrp01ga:/home/lc25487/ksh $ ./t2.ksh

ITEMCNT = 3
ITEMCNTSTAR = 3
ALLITEMS = First Menu Line Second Menu Line Third Menu Line
ALLITEMSSTAR = First Menu Line Second Menu Line Third Menu Line

lipossrp01ga:/home/lc25487/ksh $
==========

What (if anything} is the difference between the usage of @ or * ?
 

10 More Discussions You Might Find Interesting

1. UNIX for Advanced & Expert Users

Oracle To Korn Shell Array

I'm attempting to populate an array in ksh using the following command: set -A $(SELECT_INVOICE | sed '/^$/d') SELECT_INVOICE is a function that executes the SQL query. Problem: Some of the invoice numbers have alpha characters with spaces(example: OVEN MICRO). The Korn shell is treating... (1 Reply)
Discussion started by: kdst
1 Replies

2. Shell Programming and Scripting

korn shell array?

I read it is possible to provide values for an array with the -A option to the read statement; however, I have not been able to get this to work. When I execute a script with the -A option to the read statement, the shell complains that it is an illegal option. If this works, can someone provide... (5 Replies)
Discussion started by: cstovall
5 Replies

3. Shell Programming and Scripting

Variables Naming in Korn Shell

Hi every body, I want to know what is the different between the following: $VAR1 ${VAR2} "${VAR3}" Are they equivalent? Thanks in advance (1 Reply)
Discussion started by: aldowsary
1 Replies

4. Shell Programming and Scripting

I can't decalar an array in my korn shell script

I have a script that contains #!/usr/bin/ksh set -A X 'hallo' 'world' echo ${X} echo ${X} when I execute it I get an errror message sh ./test.ksh ./test.ksh: -A: bad option(s) but if I do this at the command prompt I am able to create it set -A myarray '1' '2' '3' echo ${myarray}... (4 Replies)
Discussion started by: zilla30066
4 Replies

5. Shell Programming and Scripting

How to: Parse text string into variables using Korn shell

I am writing a script to keep check on free disk space, and I would like to find a way to parse $LINE (see code below) into a numeric value (for free disk space percentage) and a string value (for mount point). If possible, I would like to avoid sed or any additional use of awk since I am not very... (7 Replies)
Discussion started by: shew01
7 Replies

6. UNIX for Advanced & Expert Users

Accessing PL/SQL OUT variables in Korn Shell Script

Hello All, I was just wondering if there is any direct way to access PL/SQL OUT variables from Korn Shell Script. I could already figure out how to return a single value back from PL/SQL to Shell Script (using bind variable). But, what if we want to return multiple values? One option I... (4 Replies)
Discussion started by: bright_future
4 Replies

7. Shell Programming and Scripting

need help with korn shell array

I have a korn shell script that reads a file with just one column in the file. If the file has more than 5 entries it is split using split -5. This means that is we have 15 entries I will end up with 3 files with 5 entries/lines in each and if I have 23 entries I will end up with 5 files with the... (2 Replies)
Discussion started by: kieranfoley
2 Replies

8. Shell Programming and Scripting

Generate array name at run time Korn shell

Hi, I am trying to define number of array based on constant derived during execution phase of a script. Here is what i am trying.. #First Part, Get LUN input from User lun_count=4 count=0 set -A my_lun while : do while ]; do read L?"Enter Lun "$count" Number:" ... (2 Replies)
Discussion started by: harris2107
2 Replies

9. Shell Programming and Scripting

floating point variables korn shell

Hi I'm not using Korn93 but want to use floating point variable. Is there any solution to do that ? thx for help. ---------- Post updated at 02:28 PM ---------- Previous update was at 12:38 PM ---------- I have the following peace of code: for n in `cat log.January.1.array` do ... (3 Replies)
Discussion started by: presul
3 Replies

10. Shell Programming and Scripting

Korn Shell Array maximum value less than other value

I have a text file with several key words that I am trying to isolate. I have grepped for the unknowns in the text file, but each unknown has a corresponding location. I have created an array that holds all the unknowns and another array that holds all of the locations and compares them based on... (12 Replies)
Discussion started by: ther2000
12 Replies
MENU_ATTRIBUTES(3)					   BSD Library Functions Manual 					MENU_ATTRIBUTES(3)

NAME
menu_back, menu_fore, menu_grey, menu_pad, set_menu_back, set_menu_fore, set_menu_grey, set_menu_pad -- get and set menu attributes LIBRARY
Curses Menu Library (libmenu, -lmenu) SYNOPSIS
#include <menu.h> char menu_back(MENU *menu); char menu_fore(MENU *menu); char menu_grey(MENU *menu); int menu_pad(MENU *menu); int set_menu_back(MENU *menu, char attr); int set_menu_fore(MENU *menu, char attr); int set_menu_grey(MENU *menu, char attr); int set_menu_pad(MENU *menu, int pad); DESCRIPTION
The menu_back() function returns the value of the background attribute for the menu passed. This attribute is set by the set_menu_back() call. The menu_fore() function returns the value of the foreground character attribute for the menu passed. This attribute is set by the set_menu_fore() function. The menu_grey() function returns the value of the grey or unselectable character attribute for the menu passed. This attribute is set by the set_menu_grey() function. The menu_pad() function returns the padding character that will be used between the item name and its description. The value of the pad character is set by the set_menu_pad() function. RETURN VALUES
The functions return one of the following error values: E_OK The function was successful. E_SYSTEM_ERROR There was a system error during the call. E_BAD_ARGUMENT One or more of the arguments passed to the function was incorrect. E_POSTED The menu is already posted. E_CONNECTED An item was already connected to a menu. E_BAD_STATE The function was called from within an initialization or termination routine. E_NO_ROOM The menu does not fit within the subwindow. E_NOT_POSTED The menu is not posted. E_UNKNOWN_COMMAND The menu driver does not recognize the request passed to it. E_NO_MATCH The character search failed to find a match. E_NOT_SELECTABLE The item could not be selected. E_NOT_CONNECTED The item is not connected to a menu. E_REQUEST_DENIED The menu driver could not process the request. SEE ALSO
curses(3), menus(3) NOTES
The header <menu.h> automatically includes both <curses.h> and <eti.h>. BSD
September 10, 1999 BSD
All times are GMT -4. The time now is 05:55 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy