Sponsored Content
Top Forums Shell Programming and Scripting Need to find a string, check the next line, and if it matches certain criteria, replace it with a s Post 302371777 by midniteslice on Monday 16th of November 2009 07:39:27 AM
Old 11-16-2009
Need to find a string, check the next line, and if it matches certain criteria, replace it with a s

Hey Fellas.

I am new to scripting. I have searched through the forums and found a lot of good info, but I can't seem to get any of it to work together. I am trying to find a particular sting in a file, and if the next string matches certain criteria, replace it with a string from a csv file. Roughly about 1500 times in the file. I have been trying to do this with awk/sed, but i haven't had the best of luck.
example:
find the string that starts with data7
if the string on the next line has the word prisoner then replace it with the string in line one on the csv file.
the next instance of the pattern would be replaced by the string in line 2 of the csv file. and so on.
the word prisoner appears multiple times in the file, but i only want to replace the ones that directly follow the string containing "data7"
does this make sense?

When i say i'm brand new to scripting i mean BRAND new. I'm taking some classes, but i need to get this done as soon as possible and what i have learned so far hasn't gotten me much closer. any help ya'll can give would be greatly appreciated.
Thanks!
 

9 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Replace Entire line if any part matches regexp

Hey guys, I have a file that I've slowly been awking, seding, and greping for data entry. I am down to pull the addresses out to insert them into an excel file. Each address is a few lines, but i want to put a semicolon delimiter in between each address so I can export the text file into excel and... (6 Replies)
Discussion started by: Cocoabean
6 Replies

2. Shell Programming and Scripting

Find a line using a condition and replace a string in that line

Hello, I have a 100 line code. I have given a sample of it below: ABC*654654*1*54.54*21.2*87*1*654654654654 CCC*FS*FS*SFD*DSF GGG*FGH*CGB*FBDFG*FGDG ABC*654654*1*57.84*45.4*88*2*6546546545 CCC*WSF*SG*FGH*GHJ ADA*AF*SFG*DFGH*FGH*FGTH I need to select the line starting with "ABC" its... (6 Replies)
Discussion started by: nithins007
6 Replies

3. Emergency UNIX and Linux Support

Find a line using a condition and replace a string in that line

Hello, I have a 100 line code. I have given a sample of it below: ABC*654654*1*54.54*21.2*87*1*654654654654 CCC*FS*FS*SFD*DSF GGG*FGH*CGB*FBDFG*FGDG ABC*654654*1*57.84*45.4*88*2*6546546545 CCC*WSF*SG*FGH*GHJ ADA*AF*SFG*DFGH*FGH*FGTH I need to select the line starting with "ABC" its... (3 Replies)
Discussion started by: nithins007
3 Replies

4. Shell Programming and Scripting

Find and replace string matching criteria

Dear Friends, I am looking for a way to replace a string (multiple lines) starting with something and ending with something (these two values do not change) with blank. Basically I want to delete this code injection accross many sites and folders. Search Code (across files and folders) that... (2 Replies)
Discussion started by: libras
2 Replies

5. Shell Programming and Scripting

Need a Linux command for find/replace column based on specific criteria.

I'm new to shell programming, I have a huge text file in the following format, where columns are separated by single space: ACA MEX 4O_ $98.00 $127.40 $166.60 0:00 0:00 0 ; ACA YUL TS_ $300.00 $390.00 $510.00 0:00 0:00 0 ; ACA YYZ TS_ $300.00 $390.00 $510.00 0:00 0:00 0 ; ADZ YUL TS_ $300.00... (3 Replies)
Discussion started by: transat
3 Replies

6. Shell Programming and Scripting

Find a text and if condition matches then replace it

Need a script that can find text in a file and replace it accordingly. This is the file I have: while IFS=',' read -r f1 f2 f3 do { nohup /home/testuser/dbmaintenance/sys_offline_maintenance.sh $f1 $f2 $f3 > $f2.out & } done < "/home/testuser/dbmaintenance/week1offlineserver.txt" In... (4 Replies)
Discussion started by: singhhe
4 Replies

7. Shell Programming and Scripting

Replace all string matches in file with unique random number

Hello Take this file... Test01 Ref test Version 01 Test02 Ref test Version 02 Test66 Ref test Version 66 Test99 Ref test Version 99 I want to substitute every occurrence of Test{2} with a unique random number, so for example, if I was using sed, substitution would be something... (1 Reply)
Discussion started by: funkman
1 Replies

8. Shell Programming and Scripting

Replace string of a file with a string of another file for matches using grep,sed,awk

I have a file comp.pkglist which mention package version and release . In 'version change' and 'release change' line there are two versions 'old' and 'new' Version Change: --> Release Change: --> cat comp.pkglist Package list: nss-util-devel-3.28.4-1.el6_9.x86_64 Version Change: 3.28.4 -->... (1 Reply)
Discussion started by: Paras Pandey
1 Replies

9. UNIX for Beginners Questions & Answers

Replace matches string in each line with the arrayvalue in shell

I have a list of value , and need to replace that in my file. Eg: File1 tcname:fail tcname: Pass tcname:skipped File2: 01,02,03 Output: File 1 01:fail 02: Pass 03:Skipped (8 Replies)
Discussion started by: DevAakash
8 Replies
INSTR(3)						       MBK UTILITY FUNCTIONS							  INSTR(3)

NAME
instr - find an occurence of a string in a string, starting at a specified character. ORIGIN
This software belongs to the ALLIANCE CAD SYSTEM developed by the ASIM team at LIP6 laboratory of Universite Pierre et Marie CURIE, in Paris, France. Web : http://asim.lip6.fr/recherche/alliance/ E-mail : alliance-users@asim.lip6.fr SYNOPSYS
#include "mut.h" char *instr(s, find, from) char *s, *find, from; PARAMETERS
s Pointer to the string to be searched for the pattern find Pointer to the string to be found, the pattern from Character to be searched backwards before searching for the pattern DESCRIPTION
instr searches the first occurence of the string find in the string s, starting its search at the last occurence of the from character in the string s. If either s or find is NULL, the function returns NULL. If from is (char)0, the pattern is searched from the begining of s. This quite exotic behaviour is useful to search the occurence of a name in a string resulting from a flatten, when only a terminal object name is to be taken into account. RETURN VALUES
instr return NULL either if the pattern find is not present in the searched string s, or if one at least of these two string are NULL. If the pattern is found, a value different from NULL is returned. EXAMPLE
#include "mut.h" /* check for the pattern 'ck' anywhere in the string */ #define contains_ck(name)instr(name, "ck", ' ') /* check for the pattern 'ck' in the signal name, not instance ones */ #define isclock(ptsig) instr(getsigname(ptsig), "ck", SEPAR) SEE ALSO
mbk(1), isvdd(3), isvss(3). BUG REPORT
This tool is under development at the ASIM department of the LIP6 laboratory. We need your feedback to improve documentation and tools. ASIM
/LIP6 October 1, 1997 INSTR(3)
All times are GMT -4. The time now is 07:53 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy