Sponsored Content
Top Forums Shell Programming and Scripting [SOLVED] Replace a string in nextline after searching a pattern Post 302699875 by mailing2vamsi on Wednesday 12th of September 2012 12:42:59 PM
Old 09-12-2012
[SOLVED] Replace a string in nextline after searching a pattern

Hi,

I have a requirement where I need to replace a string in a line and this line will be identified by search criteria on previous line:
E.g.:
I have an xml file and Contents as below:
Code:
<Root>
        <NameValue>
            <name>Global/Text/Data</name>
            <value>This is valid data</value>
        </NameValue>
        <NameValueBoolean>
            <name>Global/Text/ID</name>
            <value>@%ID_Value</value>
        </NameValueBoolean>
        <NameValue>
            <name>Global/Text/Data</name>
            <value>This is not a valid data</value>
        </NameValue>
        <NameValuePassword>
            <name>Global/Text/ID</name>
            <value>@%ID_Value</value>
        </NameValuePassword>
        <NameValue>
            <name>Global/Text/Data</name>
            <value>This is SMS data</value>
        </NameValue>
        <NameValuePassword>
            <name>Global/Text/ID</name>
            <value>%&ID_Value</value>
        </NameValuePassword>
</Root>

Here, I have to seach for string contains ID in it and need to replace value in next line only if it has @%.

Can someone help in sorting this?

Thanks,
Krishna

Moderator's Comments:
Mod Comment edit by bakunin: Please use code tags next time for your code and data.

Last edited by bakunin; 09-12-2012 at 03:40 PM..
 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Searching for files with certain string pattern

Hello All I would like to search for files containing certain string pattern under all the directories under /vobs/vobname and print the output to a file in my home directory. How can I do this? Note: /vobs/vobname conatins several directories. Thank You in advance newbetounix (1 Reply)
Discussion started by: intrigue
1 Replies

2. Shell Programming and Scripting

Match pattern and replace with string

hi guys, insert into /*<new>*/abc_db.tbl_name this is should be replaced to insert into /*<new>*/${new}.tbl_name it should use '.' as delimiter and replace is there any way to do it using sed (6 Replies)
Discussion started by: sol_nov
6 Replies

3. Shell Programming and Scripting

Pattern searching and replace

I have data this data in a text file 1 PSE480 (P) 2 PSE600 (P) 3 (P) PSE600 4 (P) PSE720 5 PSE600 (P) 6 PSE720 (P) 7 x12(P)PSE360 8 PSE450 (P) 9 PSE540 (P) 10 PSE720 (P) 11 (P) PSE1440 12 24sPSE720 (P) What i want id the last 3 (or 4 in one case) characters after PSE my final... (2 Replies)
Discussion started by: lifzgud
2 Replies

4. Shell Programming and Scripting

Searching String from set of similar File pattern from the Dir

Guys, Here is the script that searches string from the set of similar files from the log directory, All the file patterns are defined as input file, from where the script should map to those files in the LOG_DIR and should start searching the strings from all those similar files. ... (1 Reply)
Discussion started by: raghunsi
1 Replies

5. Shell Programming and Scripting

sed or awk command to replace a string pattern with another string based on position of this string

here is what i want to achieve... consider a file contains below contents. the file size is large about 60mb cat dump.sql INSERT INTO `table1` (`id`, `action`, `date`, `descrip`, `lastModified`) VALUES (1,'Change','2011-05-05 00:00:00','Account Updated','2012-02-10... (10 Replies)
Discussion started by: vivek d r
10 Replies

6. Shell Programming and Scripting

Searching a particular string pattern in 10000 files

Problem Statement:- I need to search a particular `String Pattern` in around `10000 files` and find the records which contains that `particular pattern`. I can use `grep` here, but it is taking lots of time. Below is the command I am using to search a `particular string pattern` after... (3 Replies)
Discussion started by: raihan26
3 Replies

7. Shell Programming and Scripting

Replace a string pattern

Hi, I have a CSV with following type of data and would like to replace the timestamp information with 'null' string. Can you please suggest me on same? 8,1,'1','1',11,'2013-08-12 18:34:17.0','null',1,'2013-08-12 18:34:17.0','null','PROMOTIONAL','12','1','11','11',11,'0' Thanks for your... (10 Replies)
Discussion started by: bhupinder08
10 Replies

8. Shell Programming and Scripting

Replace string in line below specific pattern?

Hi, I'm trying to replace a string with sed, in a text file containing this pattern: location alpha value x location beta value y location gamma value y location delta value y location theta value z ... What I want to achieve is: Find location beta into text file... (1 Reply)
Discussion started by: TECK
1 Replies

9. UNIX for Dummies Questions & Answers

[Solved] Replace the second pattern alone in VI.

I have lines like: table10 table_name_10 table10 table_name_10 table20 table_name_20 table20 table_name_20 table30 table_name_30 table30 table_name_30 I want to change the second "table_names" in all lines to test_table_name. Required output would be: table10 table_name_10 table10... (19 Replies)
Discussion started by: gctex
19 Replies

10. Shell Programming and Scripting

Replace string - searching from input file

Hi I need help with writing a script to change a string in a file. The script needs to read an input list (list.txt) file line by line searching for that string in a text.file. Once the string is found the last few words in the string should be replaced. eg list.txt will contain hello my... (6 Replies)
Discussion started by: sudobash
6 Replies
Text::Tabs(3perl)					 Perl Programmers Reference Guide					 Text::Tabs(3perl)

NAME
Text::Tabs -- expand and unexpand tabs per the unix expand(1) and unexpand(1) SYNOPSIS
use Text::Tabs; $tabstop = 4; # default = 8 @lines_without_tabs = expand(@lines_with_tabs); @lines_with_tabs = unexpand(@lines_without_tabs); DESCRIPTION
Text::Tabs does about what the unix utilities expand(1) and unexpand(1) do. Given a line with tabs in it, expand will replace the tabs with the appropriate number of spaces. Given a line with or without tabs in it, unexpand will add tabs when it can save bytes by doing so (just like "unexpand -a"). Invisible compression with plain ASCII! EXAMPLE
#!perl # unexpand -a use Text::Tabs; while (<>) { print unexpand $_; } Instead of the "expand" comand, use: perl -MText::Tabs -n -e 'print expand $_' Instead of the "unexpand -a" command, use: perl -MText::Tabs -n -e 'print unexpand $_' LICENSE
Copyright (C) 1996-2002,2005,2006 David Muir Sharnoff. Copyright (C) 2005 Aristotle Pagaltzis This module may be modified, used, copied, and redistributed at your own risk. Publicly redistributed modified versions must use a different name. perl v5.14.2 2010-12-30 Text::Tabs(3perl)
All times are GMT -4. The time now is 04:25 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy