06-18-2009
Quote:
Originally Posted by
vidyadhar85
what have you tried till now??
I am really new to awk and cannot figure it out where I am making the mistake. I tried to handle a situation in which the input file looks like this:
file.txt
------
cond=cond1
cond=cond2
parm=parm1
parm=parm2
parm=parm3
cond=cond3
parm=parm4
parm=parm5
The script which I wrote is given below but it hangs:'
awk '{ x=1
b=0
while ( $x <= NF ) {
if ( $x ~ /cond=/ ) {
if b = 1 {
cond = "" }
cond = cond "|" $x }
else if ( $x ~ /parm=/ ) {
b = 1
parm = cond "|" parm "|" $x
print parm }
x++
}
}' file.txt
I would like to have a generic solution for all the cases.
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
Hello All,
Here is the file which I want to edit. The script should look for DB2 and if found then delete all lines related to DB2 connection string. Is there way this can be done using script ?
DB1 =
(DESCRIPTION =
(SDU = 32768
(enable = broken)
(ADDRESS = (PROTOCOL =... (2 Replies)
Discussion started by: deepakc_in
2 Replies
2. Shell Programming and Scripting
Hi there,
I've an input file as follows:
*START
1001 a1
1002 a2
1003 a3
1004 a4
*END
*START
1001 b1
1002 b2
1004 b4
*END
*START
1001 c1
1004 c4
*END (6 Replies)
Discussion started by: kbirde
6 Replies
3. Shell Programming and Scripting
print 'test'
SETUSER 'dbo'
go
create proc abc
as
/Some code here/
go
SETUSER
go
print 'test1'
SETUSER 'dbo'
go
Create Procedure xyz
as
/some code here/
go
SETUSER
go
print 'test2'
SETUSER 'dbo' (2 Replies)
Discussion started by: mad_man12
2 Replies
4. Shell Programming and Scripting
Hi,
I have the following text file:
8 T1mapping_flip02 ok 128 108 30 1 665000-000008-000001.dcm
9 T1mapping_flip05 ok 128 108 30 1 665000-000009-000001.dcm
10 T1mapping_flip10 ok 128 108 30 1 665000-000010-000001.dcm
11 T1mapping_flip15 ok 128 108 30... (2 Replies)
Discussion started by: goodbenito
2 Replies
5. UNIX for Dummies Questions & Answers
Hi all,
1. I have a file that is getting continously refreshed (appended)
I want to grep all the strings containing substring of the type
abcdf123@aaa.xxx.yyy.zzz:portnumber:
where,
before @, any letters or numbers combination,
after @, IP address
then symbol :
then port... (4 Replies)
Discussion started by: kokoras
4 Replies
6. Shell Programming and Scripting
Hi All,
I am new to forum, I am looking to arrange a file in specific format but unable to get the formula to do it, already googled for the same, but didnt find the answer :(. hope to get help here :o:o:o:o:o
I have to files :
$ cat Dev_List2
0685
0686
0687
0688
0689
068A
068B
068C... (2 Replies)
Discussion started by: prasan_Aix
2 Replies
7. Shell Programming and Scripting
Hi All,
I have to pick particular segments from a file and I have prepared below shell script.But its not working and I am not able to find out whats the issue.could you guys pls help?
Sample file:
TS3*1451575*12*20151231*4*482.44
NM1*QC*1*CUTLER*BETTY
DTM*472*20150808... (4 Replies)
Discussion started by: Venkata Prasad
4 Replies
8. UNIX for Dummies Questions & Answers
Hello :)
I am in this situation:
Input: two tab-delimited files, `File1` and `File2`. `File2` (`$2`) has to be parsed by patterns found in `File1` (`$1`).
Expected output: tab-delimited file, `File3`. `File3` has to contain the same rows as `File2`, plus the corresponding value in... (5 Replies)
Discussion started by: dovah
5 Replies
9. UNIX for Beginners Questions & Answers
How do I use grep to select words that start with I or O, end in box, and contain at least one letter in between them?
the text file mailinfo.txt contains
Inbox
the Inbox
Is a match box
Doesn't match
INBOX
Outbox
Outbox1
InbOX
Ibox
I box
If the command works correctly it... (4 Replies)
Discussion started by: steezuschrist96
4 Replies
10. UNIX for Beginners Questions & Answers
I have
FILE 1 (This file has all master columns/headers)
A|B|C|D|E|F|G|H|STATUS
FILE 2
A|C|F|I|OFF_STATUS
3|4|5|4|Y
6|7|8|5|Y
Below command give me all headers of FILE 2 into array2.txt file
paste <(head -1 FILE2.txt | tr '|' '\n')>array2.txt
So I would like to compare... (2 Replies)
Discussion started by: jmadhams
2 Replies
LEARN ABOUT XFREE86
putctl
putctl(9F) Kernel Functions for Drivers putctl(9F)
NAME
putctl - send a control message to a queue
SYNOPSIS
#include <sys/stream.h>
int putctl(queue_t *q, int type);
INTERFACE LEVEL
Architecture independent level 1 (DDI/DKI).
PARAMETERS
q Queue to which the message is to be sent.
type Message type (must be control, not data type).
DESCRIPTION
putctl() tests the type argument to make sure a data type has not been specified, and then attempts to allocate a message block. putctl()
fails if type is M_DATA, M_PROTO, or M_PCPROTO, or if a message block cannot be allocated. If successful, putctl() calls the put(9E)
routine of the queue pointed to by q with the newly allocated and initialized messages.
RETURN VALUES
On success, 1 is returned. If type is a data type, or if a message block cannot be allocated, 0 is returned.
CONTEXT
putctl() can be called from user or interrupt context.
EXAMPLES
Example 1: Using putctl()
The send_ctl() routine is used to pass control messages downstream. M_BREAK messages are handled with putctl() (line 11). putctl1(9F)
(line 16) is used for M_DELAY messages, so that parm can be used to specify the length of the delay. In either case, if a message block
cannot be allocated a variable recording the number of allocation failures
is incremented (lines 12, 17). If an invalid message type is detected, cmn_err(9F) panics the system (line 21).
1 void
2 send_ctl(wrq, type, parm)
3 queue_t *wrq;
4 uchar_t type;
5 uchar_t parm;
6 {
7 extern int num_alloc_fail;
8
9 switch (type) {
10 case M_BREAK:
11 if (!putctl(wrq->q_next, M_BREAK))
12 num_alloc_fail++;
13 break;
14
15 case M_DELAY:
16 if (!putctl1(wrq->q_next, M_DELAY, parm))
17 num_alloc_fail++;
18 break;
19
20 default:
21 cmn_err(CE_PANIC, "send_ctl: bad message type passed");
22 break;
23 }
24 }
SEE ALSO
put(9E), cmn_err(9F), datamsg(9F), putctl1(9F), putnextctl(9F)
Writing Device Drivers
STREAMS Programming Guide
SunOS 5.10 11 Apr 1991 putctl(9F)