Sponsored Content
Top Forums Shell Programming and Scripting Search field in text file and replace value Post 302769893 by doom4 on Wednesday 13th of February 2013 08:00:39 PM
Old 02-13-2013
Hi,

thanks for your answer. I just figured out a way to do it:
Code:
#!/bin/bash

cat /dev/null > out.txt
cat $2 | while read line; do 
      id=`echo $line | awk '{ print $6 }'`
      atom=`echo $line | awk '{ print $1 }'`
      if ! [[ "$atom" == "ATOM" ]] ; then
      echo "$line" >> out.txt
      else
      if [ $id -gt $1 ]
      then
        rid=$[$id-2]
        echo "$line" | sed "s/$id/$rid/" >> out.txt
      else
        echo "$line" >> out.txt
      fi
      fi
  done

where $1 is the id starting from which i want to change it and $2 the input file name

---------- Post updated at 08:00 PM ---------- Previous update was at 07:51 PM ----------

the only thing what I just realized is that if
Code:
ATOM   1181  N   ASN A 100      10.938  11.671  38.632  1.00  8.17           N

is to be changed to 99 I get

Code:
ATOM   1181  N   ASN A 99      10.938  11.671  38.632  1.00  8.17           N

but i need an additional space Smilie

Code:
ATOM   1181  N   ASN A  99      10.938  11.671  38.632  1.00  8.17           N
ATOM   1181  N   ASN A 99      10.938  11.671  38.632  1.00  8.17           N

 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

automating file search and replace text

Hi, I am trying something like this: Let's say I have a file called File1 with contents: x=-0.3 y=2.1 z=9.0 I have another file, File2, with contents: xx= yy= zz= (nothing after "="). What I want to do is get the value of x in File1 and set it to xx in File2, i.e., xx=-0.3. And the... (3 Replies)
Discussion started by: ommatidia
3 Replies

2. Shell Programming and Scripting

How to search and replace text in same file

script is as below v_process_run=5 typeset -i p_cnt=0 pdata=/home/proc_data.log while do # execute script in background dummy_test.sh "a1" "a2" & p_cnt=$p_cnt+1 echo "data : $p_cnt : Y" >> $pdata done file created with following data in... (1 Reply)
Discussion started by: Vrgurav
1 Replies

3. UNIX for Dummies Questions & Answers

search and replace a specific text in text file?

I have a text file with following content (3 lines) filename : output.txt first line:12/12/2008 second line:12/12/2008 third line:Y I would like to know how we can replace 'Y' with 'N' in the 3rd line keeping 1st and 2nd lines same as what it was before. I tried using cat output.txt... (4 Replies)
Discussion started by: santosham
4 Replies

4. Shell Programming and Scripting

search and replace a text in a file

Hi all, I have a requirement where i have to search data between strings 'SELECT' and ';' and replace this text as "SELECT.....;" so that i can export this extracted string into a excel cell. Please suggest on this. (5 Replies)
Discussion started by: goutam_igate
5 Replies

5. Shell Programming and Scripting

text file search and replace with awk

hello all greeting for the day i have a text file as the following text.xml abcd<FIELD>123.456</FIELD>efgh i need to replace the value between <FIELD> and </FIELD> by using awk command. please throw some light on this. thank you very very much Erik (5 Replies)
Discussion started by: erikshek
5 Replies

6. Shell Programming and Scripting

replace 3rd field of space delimited text file

how to replace the 3rd colum? Each line begins similarly, but they all ends variously. XX YY 03 variable text here XX YY 03 more variable text here XX YY 03 even more variable text here really long setence XX YY 03 variable numbers also appear 03 11. 123 456 XX YY 03 the occasional comma,... (4 Replies)
Discussion started by: ajp7701
4 Replies

7. Shell Programming and Scripting

Search replace strings between single quotes in a text file

Hi There... I need to serach and replace a strings in a text file. My file has; books.amazon='Let me read' and the output needed is books.amazon=NONFOUND pls if anybody know this can be done in script sed or awk.. i have a list of different strings to be repced by NONFOUND.... (7 Replies)
Discussion started by: Hiano
7 Replies

8. Shell Programming and Scripting

Awk Search text string in field, not all in field.

Hello, I am using awk to match text in a tab separated field and am able to do so when matching the exact word. My problem is that I would like to match any sequence of text in the tab-separated field without having to match it all. Any help will be appreciated. Please see the code below. awk... (3 Replies)
Discussion started by: rocket_dog
3 Replies

9. Emergency UNIX and Linux Support

Search and replace in text file

Hi, I have gigabytes of text files that I need to search for "&" and replace with "&amp". Is there a way to do this efficiently (like sed command)? Hope you could help. Thanks. (17 Replies)
Discussion started by: daytripper1021
17 Replies

10. Shell Programming and Scripting

awk search/replace specific field, using variables for regexp & subsitution then overwrite file

Hello, I'm trying the solve the following problem. I have a file which I intend to use as a csv called master.csv The columns are separated by commas. I want to change the text on a specific row in either column 3,4,5 or 6 from xxx to yyy depending upon if column 1 matches a specified pattern.... (3 Replies)
Discussion started by: cyphex
3 Replies
HISTORY(5)							File Formats Manual							HISTORY(5)

NAME
history - record of current and recently expired Usenet articles DESCRIPTION
The file <pathdb in inn.conf>/history keeps a record of all articles currently stored in the news system, as well as those that have been received but since expired. In a typical production environment, this file will be many megabytes. The file consists of text lines. Each line corresponds to one article. The file is normally kept sorted in the order in which articles are received, although this is not a requirement. Innd(8) appends a new line each time it files an article, and expire(8) builds a new version of the file by removing old articles and purging old entries. Each line consists of two or three fields separated by a tab, shown below as : [Hash] date [Hash] date token The Hash field is the ASCII representation of the hash of the Message-ID header. This is directly used for the key of the dbz(3). The date field consists of three sub-fields separated by a tilde. All sub-fields are the text representation of the number of seconds since the epoch -- i.e., a time_t; see gettimeofday(2). The first sub-field is the article's arrival date. If copies of the article are still present then the second sub-field is either the value of the article's Expires header, or a hyphen if no expiration date was speci- fied. If an article has been expired then the second sub-field will be a hyphen. The third sub-field is the value of the article's Date header, recording when the article was posted. The token field is a token of the article. This field is empty if the article has been expired. For example, an article whose Message-ID was <7q2saq$sal$1@isrv4.pa.vix.com>, posted on 26 Aug 1999 08:02:34 GMT and recieved at 26 Aug 1999 08:06:54 GMT, could have a history line (broken into three lines for display) like the following: [E6184A5BC2898A35A3140B149DE91D5C] 935678987~-~935678821 @030154574F00000000000007CE3B000004BA@ In addition to the text file, there is a dbz(3) database associated with the file that uses the Message-ID field as a key to determine the offset in the text file where the associated line begins. For historical reasons, the key includes the trailing byte (which is not stored in the text file). HISTORY
Written by Rich $alz <rsalz@uunet.uu.net> for InterNetNews. This is revision 3782, dated 2000-08-17. SEE ALSO
dbz(3), expire(8), inn.conf(5), innd(8), makehistory(8). HISTORY(5)
All times are GMT -4. The time now is 05:38 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy