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 302371879 by frans on Monday 16th of November 2009 01:24:31 PM
Old 11-16-2009
Here is it (not tested)

Quote:
Originally Posted by midniteslice
Thanks FRANS! This looks a lot simpler than I thought it would be. I'll try it out as soon as i get on my linux box.
I for the most part understand whats happening here. Could you explain the purpose of the ":0:5" in this line? I found what the curly brackets do, but as of yet, not the colons.
Code:
 if [ "${LINE:0:5}" = "data7" ]

it extracts 5 characters from position 0 (the first)
Quote:
The only problem i'm having is that it's deleting the line that contains "SystemDeclarationData". otherwise it's working great. can you tell me what i'm doing wrong?
The script is wrong i'll modify it to work properly.
In a couple of minutes, OK?Smilie
The script
Code:
#!/bin/bash
Input="test.fplan"
I=1
while read LINE
do    #~ find the string that starts with data7
    echo "$LINE"
    [ "${LINE:0:5}" =~ "SystemDeclarationData" ] || continue #~ continue if the condition is not satisfied
    read LINE
    if $(echo "$LINE" | grep -q prisoner)
    then    head -n$I $Input | tail -n1
        (( I ++ ))
    else echo "$LINE"
    fi
done < $Input > test_csv.csv


Last edited by frans; 11-16-2009 at 02:37 PM.. Reason: script provided
 

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
RNANO(1)						      General Commands Manual							  RNANO(1)

NAME
rnano - Restricted mode for Nano's ANOther editor, an enhanced free Pico clone SYNOPSIS
rnano [OPTIONS] [[+LINE,COLUMN] FILE]... DESCRIPTION
This manual page briefly documents the rnano command. nano is a small, free and friendly editor which aims to replace Pico, the default editor included in the non-free Pine package. Rather than just copying Pico's look and feel, nano also implements some missing (or disabled by default) features in Pico, such as "search and replace" and "go to line and column number". rnano is a restricted version of nano, which only edits specific files and doesn't allow the user access to the filesystem or a command shell. In restricted mode, nano will not: o read or write to any file not specified on the command line; o read any nanorc files; o allow suspending; o allow a file to be appended to, prepended to, or saved under a different name; o use backup files or spell checking. OPTIONS
+LINE,COLUMN Places cursor at line number LINE and column number COLUMN (at least one of which must be specified) on startup, instead of the default of line 1, column 1. -? Same as -h (--help). -h (--help) Show a summary of command line options and exit. -V (--version) Show the current version number and exit. See the nano(1) manpage for the complete documentation of nano. BUGS
Please send any comments or bug reports to nano@nano-editor.org. The nano mailing list is available from nano-devel@gnu.org. To subscribe, email to nano-devel-request@gnu.org with a subject of "subscribe". HOMEPAGE
http://www.nano-editor.org/ AUTHOR
Chris Allegretta <chrisa@asty.org>, et al (see AUTHORS for details). This manual page was originally written by Thijs Kinkhorst <thijs@kinkhorst.com>, for the Debian system (but may be used by others). August 23, 2007 version 2.0.0 RNANO(1)
All times are GMT -4. The time now is 03:16 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy