Sponsored Content
Top Forums Shell Programming and Scripting Assign zero to strings that don't appear in block, store result in AWK array Post 302567183 by ahamed101 on Saturday 22nd of October 2011 11:43:50 PM
Old 10-23-2011
Try this...
Code:
awk '/<x /{
  A=gensub(/.+"([0-9]+)">(.+)<.*/, "\\1|\\2", "g")
  split(A, arr, "|");
  a[++j]=arr[1]"|"arr[2]; u[arr[2]] }
/<\/g/{a[++j]=-1}

END{
  for(i=1;i<=j;i++) {
    if(a[i] == -1) {
      for(k in u) {
        k in t?v="":v=k
        if(v){print "0|"v}
      } delete t; continue 
    }
    print a[i]
    split(a[i],arr,"|"); t[arr[2]]  
  }
}' input_file

--ahamed
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

How to store query multiple result in shell script variable(Array)

:) Suppose,I have one table A. Table A have one column. Table A have 10 rows. I want this 10 rows store into shell script variable. like #!/bin/ksh v_shell_var=Hi here in call oracle , through loop How can I store table A's 10 rows into v_shell_var (Shell Script Array). Regards, Div (4 Replies)
Discussion started by: div_Neev
4 Replies

2. Shell Programming and Scripting

assign awk array with printf

I am trying to assign a awk array for further processing later in the script. I can't seem to figure it out. If someone could look at this and help me, I would very much appreciate it. Thanks in Advance. for ( x = 1 ; x <= Var ; x++ ) { if ( x in varr ) { ... (2 Replies)
Discussion started by: timj123
2 Replies

3. Shell Programming and Scripting

Prase a file and store and result to an array

Dear all, I have a file having the following formats: ThreadFail=Web1=1234 ThreadFail=Web2=2345 ThreadFail=Web3=12 ConnectionFail=DB1=11 ConnectionFail=DB2=22 The number of lines will be different from every time . How can I parse the file and store the result to an a array inside... (6 Replies)
Discussion started by: youareapkman
6 Replies

4. Shell Programming and Scripting

assign awk command result to a variable

#!/bin/sh # ## MYSTRING = `awk '/myApp.app/' /Users/$USER/Library/Preferences/loginwindow.plist` if then echo String not found defaults write /Users/$USER/Library/Preferences/loginwindow AutoLaunchedApplicationDictionary -dict-add -string Hide -bool YES -string Path -string... (9 Replies)
Discussion started by: dedmakar
9 Replies

5. Shell Programming and Scripting

awk assign output of array to specific field-number

With this script i want to print the output to a specific field-number . Can anybody help? awk 'NR=FNR{split(FILENAME,fn,"_");nr=$2;f = $1} END{for (i=1;i<=f;i++) print i,$fn=nr}' input_5.csv input_6.csvinput_5.csv 4 135 5 185 6 85 11 30input_6.csv 1 90 3 58 4 135 7 60 8 55 10... (1 Reply)
Discussion started by: sdf
1 Replies

6. Shell Programming and Scripting

Can -v option in awk be used to store an array of variables?

I want to pass an array of variables to be inserted by awk in the 2nd column of a file. Empl No. Employee Age 1000000 22 1100000 24 1200000 26 Now, I want to pass an array having three different ages which need to replace the... (7 Replies)
Discussion started by: Nishi_Licious
7 Replies

7. Shell Programming and Scripting

create an array which can store the strings from the user input in shell script

I want to create an array which can store the strings from the user input in shell script . example :- I want to store the 5 fruits name in a single array which the user provides . (1 Reply)
Discussion started by: Pkast
1 Replies

8. Shell Programming and Scripting

Store value in array with awk

Hi everybody I wanna store some values that r in a .txt file in some arrays for example I have: 32782 28 32783 02 32784 01 32785 29 32786 25 32787 25 32788 00 32789 25 32790 02 32791 29 32792 23 32793 01 32794 28 and I need to save the first... (4 Replies)
Discussion started by: Behrouzx77
4 Replies

9. Shell Programming and Scripting

How to Assign an shell array to awk array?

Hello All, Can you please help me with the below. #!/bin/bash ARR="No Differences In Stage Between HASH_TOTALS & HASH_TOTALS_COMP For UNINUM:0722075 PROVIDER:5 EXTRACT_DT:30-SEP-12 VER_NUM:1" ARR="No Differences In Stage Between HASH_TOTALS & HASH_TOTALS_COMP For UNINUM:0722075 PROVIDER:5... (14 Replies)
Discussion started by: Ariean
14 Replies

10. Shell Programming and Scripting

Assign awk gsub result to a variable

Hello, I have searched but failed to find what exactly im looking for, I need to eliminate first "." in a output so i can use something like the following echo "./abc/20141127" | nawk '{gsub("^.","");print}' what i want is to use gsub result later on, how could i achieve it? Let say... (4 Replies)
Discussion started by: EAGL€
4 Replies
dispatch_group_create(3)				   BSD Library Functions Manual 				  dispatch_group_create(3)

NAME
dispatch_group_create, dispatch_group_async, dispatch_group_wait, dispatch_group_notify -- group blocks submitted to queues SYNOPSIS
#include <dispatch/dispatch.h> dispatch_group_t dispatch_group_create(void); void dispatch_group_enter(dispatch_group_t group); void dispatch_group_leave(dispatch_group_t group); long dispatch_group_wait(dispatch_group_t group, dispatch_time_t timeout); void dispatch_group_notify(dispatch_group_t group, dispatch_queue_t queue, void (^block)(void)); void dispatch_group_notify_f(dispatch_group_t group, dispatch_queue_t queue, void *context, void (*function)(void *)); void dispatch_group_async(dispatch_group_t group, dispatch_queue_t queue, void (^block)(void)); void dispatch_group_async_f(dispatch_group_t group, dispatch_queue_t queue, void *context, void (*function)(void *)); DESCRIPTION
A dispatch group is an association of one or more blocks submitted to dispatch queues for asynchronous invocation. Applications may use dis- patch groups to wait for the completion of blocks associated with the group. The dispatch_group_create() function returns a new and empty dispatch group. The dispatch_group_enter() and dispatch_group_leave() functions update the number of blocks running within a group. The dispatch_group_wait() function waits until all blocks associated with the group have completed, or until the specified timeout has elapsed. If the group becomes empty within the specified amount of time, the function will return zero indicating success. Otherwise, a non- zero return code will be returned. When DISPATCH_TIME_FOREVER is passed as the timeout, calls to this function will wait an unlimited amount of time until the group becomes empty and the return value is always zero. The dispatch_group_notify() function provides asynchronous notification of the completion of the blocks associated with the group by submit- ting the block to the specified queue once all blocks associated with the group have completed. The system holds a reference to the dispatch group while an asynchronous notification is pending, therefore it is valid to release the group after setting a notification block. The group will be empty at the time the notification block is submitted to the target queue. The group may either be released with dispatch_release() or reused for additional operations. The dispatch_group_async() convenience function behaves like so: void dispatch_group_async(dispatch_group_t group, dispatch_queue_t queue, dispatch_block_t block) { dispatch_retain(group); dispatch_group_enter(group); dispatch_async(queue, ^{ block(); dispatch_group_leave(group); dispatch_release(group); }); } RETURN VALUE
The dispatch_group_create() function returns NULL on failure and non-NULL on success. The dispatch_group_wait() function returns zero upon success and non-zero after the timeout expires. If the timeout is DISPATCH_TIME_FOREVER, then dispatch_group_wait() waits forever and always returns zero. MEMORY MODEL
Dispatch groups are retained and released via calls to dispatch_retain() and dispatch_release(). FUNDAMENTALS
The dispatch_group_async() and dispatch_group_notify() functions are wrappers around dispatch_group_async_f() and dispatch_group_notify_f() respectively. SEE ALSO
dispatch(3), dispatch_async(3), dispatch_object(3), dispatch_queue_create(3), dispatch_semaphore_create(3), dispatch_time(3) Darwin May 1, 2009 Darwin
All times are GMT -4. The time now is 01:50 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy