05-19-2009
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 last file containing only 3 entries/lines. I have a for loop that reads the entries in each of the files into an array. The problem is that when the last files has less than 5 entries and I do a print ${array[*] it ends up printing 5 entries.
Fo example if my ladst file has only 3 entries I end up printing the 3 entries and the last 2 entries from the previous file.
Can somebody tell me what is wrong with this syntax. Thanks!
/usr/bin/split -5 /tmp/export_sort.$$ /tmp/export_sort.$$_
for FILE in `ls /tmp/export_sort.$$_*`
do
i=0
for V in `cat $FILE`
do
array[i]="$V"
((i=i+1))
done
echo "Line entries from $FILE = ${array[*]}"
done
10 More Discussions You Might Find Interesting
1. UNIX for Advanced & Expert Users
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
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
Hello,
I'm currently messing around with arrays for the first time in scripting (Unix Korn Shell). All I'm trying to do right now before I make things complicated is read through and print out to screen whether the read file is or is not a directory.
Here is my directory:
ls -l
total... (5 Replies)
Discussion started by: Janus
5 Replies
4. Shell Programming and Scripting
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
As per title and much apprecieated! (2 Replies)
Discussion started by: biglau
2 Replies
6. Shell Programming and Scripting
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
7. Shell Programming and Scripting
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
8. Shell Programming and Scripting
Hi all,
Not sure if this should be in the programming forum, but I believe it will get more response under the Shell Programming and Scripting FORUM.
Am trying to write a customized df script in Perl and need some help with regards to using arrays and file handlers.
At the moment am... (3 Replies)
Discussion started by: newbie_01
3 Replies
9. Shell Programming and Scripting
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... (3 Replies)
Discussion started by: Clovis_Sangrail
3 Replies
10. Shell Programming and Scripting
Hi,
I have one array created and some values are there in ksh. I want to append some other values to it based on some condition in if statement.
#!/bin/ksh
echo "---------------------------------------------------"
set -A ipaddr_arr $(egrep -v '^#|^::|^$' /etc/hosts |awk '{print $1}'... (2 Replies)
Discussion started by: sanzee007
2 Replies
LEARN ABOUT OSF1
dxmsvngetselections
DXmSvnGetSelections(3X) DXmSvnGetSelections(3X)
NAME
DXmSvnGetSelections - Retrieves (returns) a list of selected entry numbers.
SYNOPSIS
void DXmSvnGetSelections(
Widget widget,
int *entries(),
int *comps(),
XtPointer *tags(),
int len );
PARAMETERS
The identifier (widget ID) of the SVN widget. A pointer to an array of integers to receive the selected entry numbers. A pointer to an
array of integers to receive the component numbers on which the entry was selected. A component number of 0 means that the entry was
selected using range selection and not by directly clicking on the entry. If components are not needed, a Null pointer may be passed. A
pointer to an array of longwords to receive the application tag value for each entry selected. If tags are not needed, a Null pointer may
be passed. An integer that represents the number of entries allocated in the provided array.
DESCRIPTION
The DXmSvnGetSelections routine returns a list of entries that are currently selected by the user. Make this call in your application
between calls to DXmSvnDisableDisplay and DXmSvnEnableDisplay to ensure that the selected list is not changing.
The application is responsible for managing the memory used to return this list of highlighted entries. As such, note the following: At
the minimum, the number of entries in the array should be capable of holding the number of entries indicated by the value returned from the
DXmSvnGetNumHighlighted routine. If there are more entries in the array than the application will need, the SVN widget will set the value
for those extra entries to 0. If the capacity of the arrays passed is less than the number of selected entries, only the number of entries
allocated in the provided array (the value for len) will be returned.
DXmSvnGetSelections(3X)