Find a tag with data and replace its data in another tag


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Find a tag with data and replace its data in another tag
# 8  
Old 08-27-2017
Hello Soumyadip Dutta,

Could you please try following and let me know if this helps you.
Code:
awk -F'//' '
/:16S::GENL/{
  flag=""
}
/:16R::GENL/{
  flag=1
}
flag && /:20C::RELA/{
  val1=$1;
  val2=$2;
  getline;
  val3=$0;
  getline;
  if($0 ~ /:20C::MITI/){
    sub(/.*/,$2,val2)
};
  print val1 FS val2 ORS val3 ORS $0;
next
};
1
'    Input_file

Kindly do let me know if you have any queries on same.

Thanks,
R. Singh
# 9  
Old 08-27-2017
Is the RELA line ALWAYS preceding the MITI line? Then, try also
Code:
awk '
/:20C::RELA/    {T = $0
                 sub ("^" $1, _, T)
                }
/:20C::MITI/    {sub ("/.*", T)
                }
!NF             {T = ""
                }
1
' FS="/" file


If not, try this modification of Scrutinizer's fine proposal:
Code:
awk '
        {for(i=1; i<=NF; i++)   {if ($i~/:20C::RELA/) R = i
                                 if ($i~/:20C::MITI/) M = i
                                }
         if (M)                 {$M = $R
                                 sub ("RELA", "MITI", $M)
                                }
         R = M = ""
        }
 1
' RS= FS='\n' OFS='\n' ORS='\n\n' file


Last edited by RudiC; 08-27-2017 at 04:20 PM..
Login or Register to Ask a Question

Previous Thread | Next Thread

9 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

find files in sub dir with tag & add "." at the beginning [tag -f "Note" . | xargs -0 {} mv {} .{}]

I am trying find files in sub dir with certain tags using tag command, and add the period to the beginning. I can't use chflags hidden {} cause it doesn't add period to the beginning of the string for web purpose. So far with my knowledge, I only know mdfind or tag can be used to search files with... (6 Replies)
Discussion started by: Nexeu
6 Replies

2. Shell Programming and Scripting

Extracting data between two tag pairs

In a huge log file (43MB, 43k lines) I am trying to extract data between two tag pairs on same line and export it to a file so I can pull it into Excel for a report. One Pair is <Text>data I need</Text> Other pair follows on same line and is <TimeStamp>more data I need</TimeStamp> I would need... (2 Replies)
Discussion started by: NanookArctic
2 Replies

3. Shell Programming and Scripting

To search for a particular tag in xml and collate all similar tag values and display them count

I want to basically do the below thing. Suppose there is a tag called object1. I want to display an output for all similar tag values under heading of Object 1 and the count of the xmls. Please help File: <xml><object1>house</object1><object2>child</object2>... (9 Replies)
Discussion started by: srkmish
9 Replies

4. Shell Programming and Scripting

Extracting Delimiter 'TAG' Data From log files

Hi I am trying to extract data from within a log file and output format to a new file for further manipulation can someone provide script to do this? For example I have a file as below and just want to extract all delimited variances of tag 32=* up to the delimiter "|" and output to a new file... (2 Replies)
Discussion started by: Buddyluv
2 Replies

5. UNIX for Advanced & Expert Users

Shell Script to read XML tags and the data within that tag

Hi unix Gurus, I am really new to Unix Scripting. Please help me to create a shell script which reads the xml file and from that i need to fetch a particular information. For example <SOURCE BUSINESSNAME ="" DATABASETYPE ="Teradata" DBDNAME ="DWPROD3" DESCRIPTION ="" NAME... (2 Replies)
Discussion started by: SmilePlease
2 Replies

6. Shell Programming and Scripting

Extract the data from tag below asssigned the variable

Sample data file. UID=12_C_S_12_PrecisionMktg^12_C_S_12_PrecisionMktg_LinkList NameField=LINK_NAME ExternalTrackingField=EXTERNAL_TRACKING CategoryField=LINK_CATEGORY URLField=LINK_URL UID=12_PrecisionMktg^FILTER_12_C_S_12_PrecisionMktg comma=,... (5 Replies)
Discussion started by: bmk
5 Replies

7. Shell Programming and Scripting

Substitute partial data only within a xml tag

Hello, I have huge xml files and I need to replace only part of the data within a particular xml tag. This doesnt seem to be as simple as it sounds. I have searched everywhere and couldnt find any solution. Ex: In the below case I would like "def" to be replaced by "xyz" only when found in... (8 Replies)
Discussion started by: roshanjain2
8 Replies

8. Programming

how to remove duplicate node data by searching tag element

hi everyone, I written one script that search all xml files and create one xml file, but I need to remove some duplicate nodes by testing one tag element. </Datainfo> <data> <test>22</test> <info>sensor value</info> <sensor> <sensor value="23"... (0 Replies)
Discussion started by: veerubiji
0 Replies

9. Shell Programming and Scripting

How To get the data from a tag in XML File

Hi I have a XML file in which data is loaded from a relational table and the column names are tags in the xml file which is shown below. ... (8 Replies)
Discussion started by: naughty21
8 Replies
Login or Register to Ask a Question