Sponsored Content
Top Forums Shell Programming and Scripting Manipulating a list into a two-dimensional array Post 302740685 by mingy10 on Thursday 6th of December 2012 03:04:17 PM
Old 12-06-2012
Manipulating a list into a two-dimensional array

hi,
total newbie to shell scripting and wondering if some of you guru's can give me a hand on a problem I'm trying to solve.

The tmplsnr.a file contains

Code:
LSNR_51526
db1
db2
LSNR_51527
db3
db4
db5

Summary - depending on which db is set, the script will start the relevant listener (LSNR_). e.g if db5 is set then the script will start the LSNR_51527 listener.

I was thinking the best way maybe to put this information into an array and then search the array.

I want to read the above file into a two dimensional array and the array to looks like this so that I can search the corresponding LSNR for the db.
Code:
LSNR_51526,db1
LSNR_51526,db2
LSNR_51527,db3
LSNR_51527,db4
LSNR_51527,db5

How would I search the array for the listener (LSNR_51527) which relates to db5 ?

Would this method work or have I over complicated things or is there a much simpler method in korn scripting.

I would appreciate any feedback or help

Many Thanks in Advance

Last edited by mingy10; 12-06-2012 at 04:13 PM.. Reason: Please wrap data and sripts with CodeTags
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Reference two dimensional array in Perl sub

I am trying to reference a two dimensional array in a subroutine and can't seem to figure this one out in Perl. Does anybody know? Please enlighten me. #!/usr/bin/perl -w use constant DIM => 4; sub Shift_elements_right{ my (@Input, @Output) = @_; for ($i = 0 ; $i <= DIM ;... (5 Replies)
Discussion started by: photon
5 Replies

2. Shell Programming and Scripting

Help for record (2 dimensional array.)

I am going to develop a address book using the shell scripting commands without sed, awk, .... I am thinking to apply the concept of 2 dimenstional array. Can I create a two dimensional array for the insertion/updation/deletion of record in unix. If yes then tell me plz or recommend me some... (1 Reply)
Discussion started by: murtaza
1 Replies

3. Shell Programming and Scripting

Manipulating Pick multi dimensional data with awk.

Hi. I am reasonably new to awk, but have done quite a lot of unix scripting in the past. I have resolved the issues below with unix scripting but it runs like a dog. Moved to awk for speed and functionality but running up a big learning curve in a hurry, so hope there is some help here. I... (6 Replies)
Discussion started by: mike.strategis
6 Replies

4. Shell Programming and Scripting

2 dimensional array in unix

I am trying to implementing two dimensinal array in ksh script.Would you pls help me out. I have a large size of file, File contains looks like ID SID VLAUE1 VALUE2 TOTALVALUE 1 a1 01 02 03 1 b1 02 05 07 ... (2 Replies)
Discussion started by: pritish.sas
2 Replies

5. Shell Programming and Scripting

PHP: Search Multi-Dimensional(nested) array and export values of currenly worked on array.

Hi All, I'm writing a nagios check that will see if our ldap servers are in sync... I got the status data into a nested array, I would like to search key of each array and if "OK" is NOT present, echo other key=>values in the current array to a variable so...eg...let take the single array... (1 Reply)
Discussion started by: zeekblack
1 Replies

6. Programming

C++ Segmentation error with bi-dimensional array

Hello, I'm experiencing a weird seg fault at run time when initializing a bi-dimensional array and initializing a class. Please see below code and comments describing the error and the instances when it occurs and when it does not occur. Compiled with g++ segf.cpp -o segf output On... (5 Replies)
Discussion started by: nmset
5 Replies

7. Programming

Return two dimensional array in c++

I am writing matrix multiplication and trying to return a two dimensional array from a function but I keep getting errors. Can someone please help me? here is my code (it is just the skeleton of my program): void main () { ... int *matmultiply (int, int, int, int , int , int ) ... } ... (4 Replies)
Discussion started by: saboture88
4 Replies

8. Shell Programming and Scripting

Storing two dimensional array for postprocessing

Hi Community, Would love to get some quick help on below requirement. I am trying to process mpstat output from multiple blades of my server I would like to assign this the output to an array and then use it for post processing. How can I use a two dimensional array and assign these value ... (23 Replies)
Discussion started by: sshark
23 Replies

9. Shell Programming and Scripting

Multi Dimensional array

I have an array of names. Each one of the name, has a number represented to it. For example A has an ID 8, B has an ID 2. What I am after is a for loop that when the array is in position 1, a particular variable is set to the value of position 1 in array 2 declare -a arr=("A" "B" "C"... (6 Replies)
Discussion started by: nms
6 Replies

10. Shell Programming and Scripting

Assign Two Dimensional Array In Bash At Once

Hi, I have a 10*10 two dimensional array. How do I assign value to all it's 100 elements at once? I don't want to open two for loops and assign one by one. Thanks, Shuri (1 Reply)
Discussion started by: shurimano
1 Replies
LOCATE(1)						    BSD General Commands Manual 						 LOCATE(1)

NAME
locate -- find filenames quickly SYNOPSIS
locate [-0Scims] [-l limit] [-d database] pattern ... DESCRIPTION
The locate program searches a database for all pathnames which match the specified pattern. The database is recomputed periodically (usually weekly or daily), and contains the pathnames of all files which are publicly accessible. Shell globbing and quoting characters (``*'', ``?'', ``'', ``['' and ``]'') may be used in pattern, although they will have to be escaped from the shell. Preceding any character with a backslash (``'') eliminates any special meaning which it may have. The matching differs in that no characters must be matched explicitly, including slashes (``/''). As a special case, a pattern containing no globbing characters (``foo'') is matched as though it were ``*foo*''. Historically, locate only stored characters between 32 and 127. The current implementation store any character except newline (' ') and NUL (''). The 8-bit character support does not waste extra space for plain ASCII file names. Characters less than 32 or greater than 127 are stored in 2 bytes. The following options are available: -0 Print pathnames separated by an ASCII NUL character (character code 0) instead of default NL (newline, character code 10). -S Print some statistics about the database and exit. -c Suppress normal output; instead print a count of matching file names. -d database Search in database instead of the default file name database. Multiple -d options are allowed. Each additional -d option adds the specified database to the list of databases to be searched. The option database may be a colon-separated list of databases. A single colon is a reference to the default database. $ locate -d $HOME/lib/mydb: foo will first search string ``foo'' in $HOME/lib/mydb and then in /var/db/locate.database. $ locate -d $HOME/lib/mydb::/cdrom/locate.database foo will first search string ``foo'' in $HOME/lib/mydb and then in /var/db/locate.database and then in /cdrom/locate.database. $ locate -d db1 -d db2 -d db3 pattern is the same as $ locate -d db1:db2:db3 pattern or $ locate -d db1:db2 -d db3 pattern If - is given as the database name, standard input will be read instead. For example, you can compress your database and use: $ zcat database.gz | locate -d - pattern This might be useful on machines with a fast CPU and little RAM and slow I/O. Note: you can only use one pattern for stdin. -i Ignore case distinctions in both the pattern and the database. -l number Limit output to number of file names and exit. -m Use mmap(2) instead of the stdio(3) library. This is the default behavior and is faster in most cases. -s Use the stdio(3) library instead of mmap(2). ENVIRONMENT
LOCATE_PATH path to the locate database if set and not empty, ignored if the -d option was specified. FILES
/var/db/locate.database locate database /usr/libexec/locate.updatedb Script to update the locate database /System/Library/LaunchDaemons/com.apple.locate.plist Job that starts the database rebuild SEE ALSO
find(1), whereis(1), which(1), fnmatch(3), locate.updatedb(8) Woods, James A., "Finding Files Fast", ;login, 8:1, pp. 8-10, 1983. HISTORY
The locate command first appeared in 4.4BSD. Many new features were added in FreeBSD 2.2. BUGS
The locate program may fail to list some files that are present, or may list files that have been removed from the system. This is because locate only reports files that are present in the database, which is typically only regenerated once a week by the /System/Library/LaunchDaemons/com.apple.locate.plist job. Use find(1) to locate files that are of a more transitory nature. The locate database is typically built by user ``nobody'' and the locate.updatedb(8) utility skips directories which are not readable for user ``nobody'', group ``nobody'', or world. For example, if your HOME directory is not world-readable, none of your files are in the data- base. The locate database is not byte order independent. It is not possible to share the databases between machines with different byte order. The current locate implementation understands databases in host byte order or network byte order if both architectures use the same integer size. So on a FreeBSD/i386 machine (little endian), you can read a locate database which was built on SunOS/sparc machine (big endian, net). The locate utility does not recognize multibyte characters. BSD
August 17, 2006 BSD
All times are GMT -4. The time now is 11:33 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy