Sponsored Content
Top Forums Shell Programming and Scripting Help me in awk or sed in UNIX Post 302975019 by Skrynesaver on Tuesday 7th of June 2016 07:14:17 AM
Old 06-07-2016
Assumes file can fit in memory...
A less memory intensive cersion is alos possible reading the file in blocks of 3 lines

Code:
$ cat tmp/tmp.pl
#!/usr/bin/perl
use strict;
use warnings;
open (my $test,'<','tmp/tmp.dat');
my @lines=readline($test);
for (my $line=0;$line<$#lines;$line+=3){
    my @second=split/ /,$lines[$line + 1];
    if ($second[2]=~/\(/){
        my @first=split/ /,$lines[$line];
        $first[4].='new' ;
        $lines[$line]=join(" ",@first);
    }
    for my $inc (0..2){
        print $lines[$line + $inc]
    }
}

$ cat tmp/tmp.dat
a@ a00 a00000 a00 a000000 a00 a0000 a0000 a00000000 a01
a@ a1 a2 a11 a22 a12 a13 a44 a45 a54 a65 a76 a77
a@ a1 a3 a6 a7 a9 a8 a2 a7 a8 a8 a9 a0
b@ b00 b00000 b00 b000000 b00 b0000 b0000 b00000000 b01
b@ b1 b2 b11 b22 b12 b13 b44 b45 b54 b65 b76 b77
b@ b1 b3 b6 b7 b9 b8 b2 b7 b8 b8 b9 b0
c@ c00 c00000 c00 c000000 c00 c0000 c0000 c00000000 c01
c@ c1 c( c11 c22 c12 c13 c44 c45 c54 c65 c76 c77
c@ c1 c3 c6 c7 c9 c8 c2 c7 c8 c8 c9 c0
d@ d00 d00000 d00 d000000 d00 d0000 d0000 d00000000 d01
d@ d1 d2 d11 d22 d12 d13 d44 d45 d54 d65 d76 d77
d@ d1 d3 d6 d7 d9 d8 d2 d7 d8 d8 d9 d0


$ perl  tmp/tmp.pl
a@ a00 a00000 a00 a000000 a00 a0000 a0000 a00000000 a01
a@ a1 a2 a11 a22 a12 a13 a44 a45 a54 a65 a76 a77
a@ a1 a3 a6 a7 a9 a8 a2 a7 a8 a8 a9 a0
b@ b00 b00000 b00 b000000 b00 b0000 b0000 b00000000 b01
b@ b1 b2 b11 b22 b12 b13 b44 b45 b54 b65 b76 b77
b@ b1 b3 b6 b7 b9 b8 b2 b7 b8 b8 b9 b0
c@ c00 c00000 c00 c000000new c00 c0000 c0000 c00000000 c01
c@ c1 c( c11 c22 c12 c13 c44 c45 c54 c65 c76 c77
c@ c1 c3 c6 c7 c9 c8 c2 c7 c8 c8 c9 c0
d@ d00 d00000 d00 d000000 d00 d0000 d0000 d00000000 d01
d@ d1 d2 d11 d22 d12 d13 d44 d45 d54 d65 d76 d77
d@ d1 d3 d6 d7 d9 d8 d2 d7 d8 d8 d9 d0


Last edited by Skrynesaver; 06-07-2016 at 08:15 AM.. Reason: Clarify limits of script
 

10 More Discussions You Might Find Interesting

1. UNIX for Advanced & Expert Users

sed in awk ? or nested awk ?

Hey all, Can I put sed command inside the awk action ?? If not then can i do grep in the awk action ?? For ex: awk '$1=="174" { ppid=($2) ; sed -n '/$ppid/p' tempfind.txt ; }' tempfind.txt Assume: 174 is string. Assume: tempfind.txt is used for awk and sed both. tempfind.txt... (11 Replies)
Discussion started by: varungupta
11 Replies

2. UNIX for Advanced & Expert Users

unix awk/sed program

i need a sample unix awk/sed program to replace param3 in a file. i have sample file a.dat with the following format/length (week 8, sku 20, store 20 and qty 8). all store id's which end with _2 needs to be replaced with div id 2. all store id's which end with _1 needs to be replaced with div id... (4 Replies)
Discussion started by: mnnarendra
4 Replies

3. Shell Programming and Scripting

help with sed or awk

I need to add a field at the beginning of each record in the file. The file is comma seperated. Can somebody throw some light. My record looks something like this I need to add 100 at the beginning of each record. o/p should be (2 Replies)
Discussion started by: dsravan
2 Replies

4. UNIX for Dummies Questions & Answers

What should be precedence of using awk, sed, head and tail in UNIX?

Hi All, I am new to unix. In this forum some days back, I have read something like below: 1) Do not use perl if awk can do your work. 2) Do not use awk if sed can do your work. . . . I do not re-collect the whole thing. I think it is good to know the precedence of using these... (2 Replies)
Discussion started by: Prathmesh
2 Replies

5. Shell Programming and Scripting

sed and awk giving error ./sample.sh: line 13: sed: command not found

Hi, I am running a script sample.sh in bash environment .In the script i am using sed and awk commands which when executed individually from terminal they are getting executed normally but when i give these sed and awk commands in the script it is giving the below errors :- ./sample.sh: line... (12 Replies)
Discussion started by: satishmallidi
12 Replies

6. Shell Programming and Scripting

Awk/sed help

Dear All, The row_eff_tmstp (4th field) and row_expr_tmstp(5th field) in below data represents. If row_expr_tmstp is less than row_eff_tmstp I should replace that as null. First record is header record. I/P ------ DD04 DD040001 DD040001 NO NO NONE ... (1 Reply)
Discussion started by: srikanth38
1 Replies

7. Shell Programming and Scripting

Join the line on delimiter using sed/awk in UNIX

I've input as , abcd| ef 123456| 78| 90 Desired output as, abcdef 1234567890 Anyone please give the solution. (5 Replies)
Discussion started by: jinixvimal
5 Replies

8. Shell Programming and Scripting

Convert Update statement into Insert statement in UNIX using awk, sed....

Hi folks, I have a scenario to convert the update statements into insert statements using shell script (awk, sed...) or in database using regex. I have a bunch of update statements with all columns in a file which I need to convert into insert statements. UPDATE TABLE_A SET COL1=1 WHERE... (0 Replies)
Discussion started by: dev123
0 Replies

9. How to Post in the The UNIX and Linux Forums

Help me in awk or sed in UNIX

I have a fixed length file that looks like a@ a00 a00000 a00 a000000 a00 a0000 a0000 a00000000 a01 a@ a1 a2 a11 a22 a12 a13 a44 a45 a54 a65 a76 a77 a@ a1 a3 a6 a7 a9 a8 a2 a7 a8 a8 a9 a0 b@ b00 b00000 b00... (1 Reply)
Discussion started by: RJG
1 Replies

10. UNIX for Beginners Questions & Answers

UNIX for learning sed/awk/grep..etc..

Greetings all, I am looking for a version of Linux that I can practice my scripting skills on. Currently, I support a massive system running on AIX. I want to do more with awk, sed, grep, and even perl. I am looking for something I can throw on a VM on my personal laptop and mess around with.... (5 Replies)
Discussion started by: jeffs42885
5 Replies
mlib_SignalIIRInit_P4_S16_S16(3MLIB)			    mediaLib Library Functions			      mlib_SignalIIRInit_P4_S16_S16(3MLIB)

NAME
mlib_SignalIIRInit_P4_S16_S16, mlib_SignalIIRInit_P4_S16S_S16S - parallel Infinite Impulse Response (IIR) filtering SYNOPSIS
cc [ flag... ] file... -lmlib [ library... ] #include <mlib.h> mlib_status mlib_SignalIIRInit_P4_S16_S16(void **filter, const mlib_f32 flt); mlib_status mlib_SignalIIRInit_P4_S16S_S16S(void **filter, const mlib_f32 flt); DESCRIPTION
Each of these functions allocates memory for the internal filter structure and converts the filter coefficients to an internal representa- tion. PARAMETERS
Each of the functions takes the following arguments: filter Internal filter structure. flt Array of nine filter coefficients: c, a00, a10, b10, b20, a01, a11, b11, and b21. RETURN VALUES
Each of the functions returns MLIB_SUCCESS if successful. Otherwise it returns MLIB_FAILURE. ATTRIBUTES
See attributes(5) for descriptions of the following attributes: +-----------------------------+-----------------------------+ | ATTRIBUTE TYPE | ATTRIBUTE VALUE | +-----------------------------+-----------------------------+ |Interface Stability |Committed | +-----------------------------+-----------------------------+ |MT-Level |MT-Safe | +-----------------------------+-----------------------------+ SEE ALSO
mlib_SignalIIR_Biquad_S16_S16_Sat(3MLIB), mlib_SignalIIR_P4_S16_S16_Sat(3MLIB), mlib_SignalIIRFree_Biquad_S16_S16(3MLIB), mlib_SignalIIR- Free_P4_S16_S16(3MLIB), mlib_SignalIIRInit_Biquad_S16_S16(3MLIB), attributes(5) SunOS 5.11 2 Mar 2007 mlib_SignalIIRInit_P4_S16_S16(3MLIB)
All times are GMT -4. The time now is 06:48 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy