Sponsored Content
Top Forums Shell Programming and Scripting Replace Text Based On Pattern Post 302362871 by Franklin52 on Sunday 18th of October 2009 10:33:46 AM
Old 10-18-2009
You just want to replace "style0002" with "style0003" within the styleURL tag and the 4 numbers after the 7th position of the name tag, right?

Try something like this, I've used awk variables for the values, adjust them for your own fit:

Code:
awk -v old="style0002" -v new="style0003" -v num="1234" '
/\<styleURL\>/ && $0 ~ old {
  sub(old, new)
  print
  getline
  print substr($0, 1,13) num substr($0, 18)
  next
}1' file

 

10 More Discussions You Might Find Interesting

1. AIX

Pattern to replace ^M and ^Y in a 4.2 AIX text file

I have files on my AIX 4.2 client system where I need to do the following replacements below but have no clue how ? They are control characters (linefeed, chariage return, ...). First, replace "^M^Y^M" with ^char_for_end_of_line Then replace "^M" with " " Trim all left spaces In VI, my... (7 Replies)
Discussion started by: Browser_ice
7 Replies

2. Shell Programming and Scripting

Merge lines in text file based on pattern

Hello, I have searched forum trying to find a solution to my problem, but could not find anything or I did not understand the examples.... I should say, I am very inexperienced with text processing. I have a text file with approx 60k lines in it. I need to merge lines based on the number... (8 Replies)
Discussion started by: Bertik
8 Replies

3. Shell Programming and Scripting

Replace text based on column

Replace these if the column is - p = q q = p r = s s = r input - PQRSSP + PQRS output - QPSRRQ + PQRS Some thing,like (5 Replies)
Discussion started by: bumblebee_2010
5 Replies

4. Shell Programming and Scripting

find pattern and replace the text before it

i am editing a big log file with the following pattern: Date: xxxx Updated: name Some log file text here Date: eee Updated: ny Some log file text here Basically i want to remove all the text in a line before the "Updated" pattern. I sill want to print the other... (4 Replies)
Discussion started by: balan1983a
4 Replies

5. Shell Programming and Scripting

Search and replace - pattern-based

Hey folks! I am new to shell-scripting, but I have a problem that I would like to solve using a script. I create very large html forms, used for randomized trials. In these forms, each question is supplied with a variable that looks something like this: PROJECT_formNN Where NN is the question... (1 Reply)
Discussion started by: Roevhat
1 Replies

6. Shell Programming and Scripting

Help with replace line based on specific pattern match

Input file data20714 7327 7366 detail data20714 7327 7366 main data250821 56532 57634 detail data250821 57527 57634 main data250821 57359 57474 main data250821 57212 57301 main data250821 57140 57159 detail data250821 56834 57082 main data250821 56708 56779 main ... (3 Replies)
Discussion started by: perl_beginner
3 Replies

7. Shell Programming and Scripting

Search and Replace a text if the line contains a pattern

My text file looks like below . . . abcdefghi jklmnop $Bad_ptrq_GTS=rcrd_ip.txt $Bad_abcd_REJ=rcrd_op.txt ghijklm $Bad_abcd_TYHS=rcrd_op.txt abcgd abcdefghi jklmnop $Bad_ptrq_GTS=rcrd_ip.txt (2 Replies)
Discussion started by: machomaddy
2 Replies

8. Shell Programming and Scripting

Pattern replace from a text file using sed

I have a sample text format as given below <Text Text_ID="10155645315851111_10155645333076543" From="460350337461111" Created="2011-03-16T17:05:37+0000" use_count="123">This is the first text</Text> <Text Text_ID="10155645315851111_10155645317023456" From="1626711840902323"... (3 Replies)
Discussion started by: my_Perl
3 Replies

9. Shell Programming and Scripting

Grab text after pattern and replace

i have a file which contains data seperated by comma. i want to replace text after 3rd occurrence of a comma. the input file looks like this abcdef,11/02/2015 11:55:47,1001,1234567812345678,12364,,abc abcdefg,11/02/2015 11:55:47,01,1234567812345678,123,,abc abcdefhih,11/02/2015... (4 Replies)
Discussion started by: gpk_newbie
4 Replies

10. UNIX for Beginners Questions & Answers

Replace pattern in text

hi unix expert is there any command in linux to repace a pattern in the text to another pattern? many thanks samad (2 Replies)
Discussion started by: abdossamad2003
2 Replies
IO::Handle::Prototype::Fallback(3pm)			User Contributed Perl Documentation		      IO::Handle::Prototype::Fallback(3pm)

NAME
IO::Handle::Prototype::Fallback - Create IO::Handle like objects using a set of callbacks. SYNOPSIS
my $fh = IO::Handle::Prototype::Fallback->new( getline => sub { my $fh = shift; ... }, ); DESCRIPTION
This class provides a way to define a filehandle based on callbacks. Fallback implementations are provided to the extent possible based on the provided callbacks, for both writing and reading. SPECIAL CALLBACKS
This class provides two additional methods on top of IO::Handle, designed to let you implement things with a minimal amount of baggage. The fallback methods are all best implemented using these, though these can be implemented in terms of Perl's standard methods too. However, to provide the most consistent semantics, it's better to do this: IO::Handle::Prototype::Fallback->new( __read => sub { shift @array; }, ); Than this: IO::Handle::Prototype::Fallback->new( getline => sub { shift @array; }, ); Because the fallback implementation of "getline" implements all of the extra crap you'd need to handle to have a fully featured implementation. __read Return a chunk of data of any size (could use $/ or not, it depends on you, unlike "getline" which probably should respect the value of $/). This avoids the annoying "substr" stuff you need to do with "read". __write $string Write out a string. This is like a simplified "print", which can disregard $, and "$" as well as multiple argument forms, and does not have the extra "substr" annoyance of "write" or "syswrite". WRAPPING
If you provide a single reading related callback ("__read", "getline" or "read") then your callback will be used to implement all of the other reading primitives using a string buffer. These implementations handle $/ in all forms ("undef", ref to number and string), all the funny calling conventions for "read", etc. FALLBACKS
Any callback that can be defined purely in terms of other callbacks in a way will be added. For instance "getc" can be implemented in terms of "read", "say" can be implemented in terms of "print", "print" can be implemented in terms of "write", "write" can be implemented in terms of "print", etc. None of these require special wrapping and will always be added if their dependencies are present. GLOB OVERLOADING
When overloaded as a glob a tied handle will be returned. This allows you to use the handle in Perl's IO builtins. For instance: my $line = <$fh> will not call the "getline" method natively, but the tied interface arranges for that to happen. perl v5.10.1 2009-09-29 IO::Handle::Prototype::Fallback(3pm)
All times are GMT -4. The time now is 08:16 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy