using arrays and also help with array.contains functionality


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting using arrays and also help with array.contains functionality
# 1  
Old 12-26-2011
using arrays and also help with array.contains functionality

here is what i have...
Code:
i=1
while read line
do
     if grep -i-q "create procedure"<<<$line
     then
          startline="$line"
          endline="blahblah"
          Get procedure name into a variable named procName
           procName="procedure name is stored"
           do some stuff here so that one procedure from the tmp file is extracted and pasted to some other file
##now i want to perfrom below function using arrays
         if procName is present in arraylist then exit else continue
say like this
#   for j in $(seq 1 $i)
#   do
#        if [[ "$procName" == "$arraylist" ]]; then
#                 exit
#        fi
#   done
#but the exit should neglect below italised if statements but it should go to while loop again.. that is it should'nt exit from while loop. 
i thought of using for loop to check it like above i dont know whether this will work or not.. since i will be perfroming a large file it will consume a lot of time to test so 
can anyone plz let me know what will work for my case plz.. 
              if this procedure is present in second file say tmp2.sql then
                do some stuff here
                take the procedure name and store it in a variable..
                  arraylist=$procName
                 i=`expr i + 1`
               delete the procedure from the second file that is tmp2.sql
since some stuff are perfromed using it and no longer needed
            fi
   fi
 
 
 
done < tmp.sql

---------- Post updated at 05:53 PM ---------- Previous update was at 05:01 PM ----------

okay i somehow made this workaround .....is there any one line code for this...such that its output will be 1 if present else 0

Code:
for j in $(seq 1 $i)
do
        if [[ "$proc_name1" == "${arraylist[j]}" ]]; then
                flag=1
        fi
done

# 2  
Old 12-26-2011
Instead of exit, you can use continue to continue from the beginning of the while loop.

Fro searching the array, you can probably do something like this instead of a for loop
Code:
grep $proc_name1 <<< ${arraylist[*]}

#or

echo ${arraylist[*]} | grep $proc_name1

HTH
--ahamed
This User Gave Thanks to ahamed101 For This Post:
# 3  
Old 12-26-2011
@ahamed.. thanks a lot your code worked for me :-)
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. UNIX for Beginners Questions & Answers

Multiply elements of 2 arrays together into another array

So I need to Write an array processing program using a Linux shell programming language to perform the following. Load array X of 20 numbers from an input file X. Load array Y of 20 numbers from an input file Y. Compute array Z by multiply Xi * Yi then compute the square-root of this... (2 Replies)
Discussion started by: sarapham409
2 Replies

2. Programming

Looping an array of 2d arrays in C

Le sigh... Hopefully this will be the last time I have to ask for help on this topic. For a while now I've been working with a 1d array that holds 2d arrays. For reference you can view here. Now I'm just trying to loop through the elements with the following: #include <stdio.h> void... (3 Replies)
Discussion started by: Azrael
3 Replies

3. Programming

Calling an array of arrays in C.

Corona688 was great in helping me learn how to create arrays that hold other two dimensional array here. Unfortunately I didn't think ask about how to implement or call them. Basically, I'm trying to call an array of two-dimensional arrays like this: declaration: int (*side_one) = { { white_l1,... (6 Replies)
Discussion started by: Azrael
6 Replies

4. Programming

Making an array of 2D arrays in C

I hate I'm asking for help again. Unfortunately it seems there just aren't any links I can find on making an array that holds a bunch of two dimensional arrays. Maybe my google-fu is lacking. Basically I have a header file like this: #define MATRIX 10 int white_l1; int white_l2; int... (2 Replies)
Discussion started by: Azrael
2 Replies

5. Shell Programming and Scripting

Bash arrays: rebin/interpolate smaller array to large array

hello, i need a bit of help on how to do this effectively in bash without a lot of extra looping or massive switch/case i have a long array of M elements and a short array of N elements, so M > N always. M is not a multiple of N. for case 1, I want to stretch N to fit M arrayHuge H = (... (2 Replies)
Discussion started by: f77hack
2 Replies

6. Shell Programming and Scripting

perl - need help with 2 arrays to hash or 2d array?

I have 2 arrays: @array1 outputs the following: 1 1 1 2 @array2 outputs the following A B C D (2 Replies)
Discussion started by: streetfighter2
2 Replies

7. Programming

Perl arrays and loop through array

Hi All I need to get <STDIN> from a user. the <STDIN> is a range of number delimited by "," (comma) and can be with range delimited by "-". Example: 1,2,3,4-9,12,15,34-36,70 Now I need to get this from the user and go on each number and "Do something"... but when trying to do this as above... (2 Replies)
Discussion started by: RedGrinGo
2 Replies

8. Shell Programming and Scripting

PHP arrays as array elements

PHP question...I posted this on the Web Development forum, but maybe this is a better place! I have an SQL query that's pulled back user IDs as a set of columns. Rather than IDs, I want to use their names. So I have an array of columns $col with values 1,7,3,12 etc and I've got an array $person... (3 Replies)
Discussion started by: JerryHone
3 Replies

9. Shell Programming and Scripting

Searching array of arrays in perl

Suppose there are two arrays of arrays: @A = ( , , , ); @B = ( , , , , ); For each of $A, $A, $A..., I want to find the corresponding one in @B (match the letter, like $A eq $B), and print out both the second item, for example, $A and $B. How can I do this in perl? grep + map? Hope I... (1 Reply)
Discussion started by: zx1106
1 Replies

10. Shell Programming and Scripting

Perl array of arrays

Hi, I am trying to assign an array as a value to one of the array element, I mean I have an array @KS and array @kr. I want array @KS to hold @kr as an element. So I am doin this $KS=@kr; But the value stored is number of elements in the @kr array. Can... (2 Replies)
Discussion started by: eamani_sun
2 Replies
Login or Register to Ask a Question