sed 's/CONVERTED_REC_STATS = /CONVERTED_REC_STATS = ?

 
Thread Tools Search this Thread
Operating Systems Linux Red Hat sed 's/CONVERTED_REC_STATS = /CONVERTED_REC_STATS = ?
# 1  
Old 03-01-2013
sed 's/CONVERTED_REC_STATS = /CONVERTED_REC_STATS = ?

hey , i am using shell script to change multiple lines in files in the current directory, when i am runing the script which is present in the same directory changes are being made in the script also.
also when i am trying to make changes in more the one line then it is not able to do it i.e it is not returning the prompt.
code which i am using is

Code:
for file in *
    do
        echo "Replacing on : $file"
        sed 's/CONVERTED_REC_STATS = /CONVERTED_REC_STATS =  UNK:/g';'s/REJECTED_REC_STATS = /REJECTED_REC_STATS =  UNK:/g' $file > $file.tmp
        mv $file.tmp $file
        echo "Replacement done on : $file"
done

~
please help
thanks in advance

Moderator's Comments:
Mod Comment Added code tags
# 2  
Old 03-01-2013
Try this

Code:
sed -e "s/CONVERTED_REC_STATS = /CONVERTED_REC_STATS = UNK:/g" -e "s/REJECTED_REC_STATS =/REJECTED_REC_STATS = UNK:/" $file

# 3  
Old 03-01-2013
Pls use code tags as required by forum rules!

a) Protect you script from modifications by either permissions or by shell mechanisnms. You do not mention what shell you are using; e.g. bash provides sth like !(pattern-list) when extended pattern matching is ON by setting the extglob option.
b) Eliminate the two ' from ';' in the middle of your line.

Last edited by RudiC; 03-01-2013 at 06:24 AM.. Reason: correction of typo in script
# 4  
Old 03-01-2013
hey , i used this code for but its not working to change lines in the file

Code:
#!/bin/ksh
for file in *
  do
     sed -e "s/CONVERTED_REC_STATS = /CONVERTED_REC_STATS = UNK:/g" -e "s/REJECTED_REC_STATS =/REJECTED_REC_STATS = UNK:/g" -e "s/DISCARDED_REC_STATS =/DISCARDED_REC_STATS = UNK:/g"
     -e "s/ADDED_REC_STATS =/ADDED_REC_STATS = UNK:/-e "s/REC_KEY,ORIG_REC_KEY,DUR_SPAN_ID,CALL_START_DTTM,PREV_CONV_DUR,CONV_DUR,A_PTY_NBR,A_PTY_NBR_TYPE_ID,A_PTY_CELL_ID,A_PTY
     _IMSI,A_PTY_MSRN,B_PTY_NBR,B_PTY_NBR_TYPE_ID,B_PTY_CELL_ID,B_PTY_IMSI,B_PTY_MSRN,IN_TRG_ID,OUT_TRG_ID,CALL_STATUS_ID,SUPP_SVC_ID,PROV_CHG_AMT,GEN_FIELD_1,GEN_FIELD_2,GEN_FIELD_
     3,GEN_FIELD_4,GEN_FIELD_5/"REC_KEY","ORIG_REC_KEY","DUR_SPAN_ID","CALL_START_DTTM","PREV_CONV_DUR","CONV_DUR","A_PTY_NBR","A_PTY_NBR_TYPE_ID","A_PTY_CELL_ID","A_PTY_IMSI","A_P
     TY_MSRN","B_PTY_NBR", "B_PTY_NBR_TYPE_ID","B_PTY_CELL_ID","B_PTY_IMSI","B_PTY_MSRN","IN_TRG_ID","OUT_TRG_ID","CALL_STATUS_ID","SUPP_SVC_ID","PROV_CHG_AMT","GEN_FIELD_1","GEN_F
     IELD_2","GEN_FIELD_ 3","GEN_FIELD_4","GEN_FIELD_5"/g" $file > $file.tmp
  mv $file.tmp $file
done

please help

Last edited by Scrutinizer; 03-01-2013 at 08:49 AM.. Reason: code tags
# 5  
Old 03-01-2013
Without delving into your sed concoction, I noticed you are using double quotes around the substututes statements, but these should be single quotes..
# 6  
Old 03-01-2013
Oh man seems to be lot of changes are required in your file.


If you want to replace the inside record with double quotes. Then try this.

Code:
[vikram@lg105m 05:50 vikram]$ cat file3.txt
REC_KEY,ORIG_REC_KEY,DUR_SPAN_ID
[vikram@lg105m 05:50 vikram]$ sed "s/REC_KEY,ORIG_REC_KEY,DUR_SPAN_ID/"'"REC_KEY"'","'"ORIG_REC_KEY"'","'"DUR_SPAN_ID"'"/g" file3.txt
"REC_KEY","ORIG_REC_KEY","DUR_SPAN_ID"

Its just a sample. You can similarly do it for entire records.

Last edited by Vikram_Tanwar12; 03-01-2013 at 09:59 AM..
This User Gave Thanks to Vikram_Tanwar12 For This Post:
# 7  
Old 03-01-2013
hey , i am facing a lot of problem in c++ coding ,what should i do , is there any institute in pune which can me.
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

I am learning regular expression in sed,Please help me understand the use curly bracket in sed,

I am learning SED and just following the shell scripting book, i have trouble understanding the grep and sed statement, Question : 1 __________ /opt/oracle/work/antony>cat teledir.txt jai sharma 25853670 chanchal singhvi 9831545629 anil aggarwal 9830263298 shyam saksena 23217847 lalit... (7 Replies)
Discussion started by: Antony Ankrose
7 Replies

2. Shell Programming and Scripting

sed and awk giving error ./sample.sh: line 13: sed: command not found

Hi, I am running a script sample.sh in bash environment .In the script i am using sed and awk commands which when executed individually from terminal they are getting executed normally but when i give these sed and awk commands in the script it is giving the below errors :- ./sample.sh: line... (12 Replies)
Discussion started by: satishmallidi
12 Replies

3. Shell Programming and Scripting

sed inside sed for replacing string

My need is : Want to change docBase="/something/something/something" to docBase="/only/this/path/for/all/files" I have some (about 250 files)xml files. In FileOne it contains <Context path="/PPP" displayName="PPP" docBase="/home/me/documents" reloadable="true" crossContext="true">... (1 Reply)
Discussion started by: linuxadmin
1 Replies

4. Shell Programming and Scripting

How to use sed to replace the a string in the same file using sed?

How do i replace a string using sed into the same file without creating a intermediate file? (7 Replies)
Discussion started by: gomes1333
7 Replies

5. UNIX for Dummies Questions & Answers

SED: Can't Repeat Search Character in SED Output

I'm not sure if the problem I'm seeing is an artifact of sed or simply a beginner's mistake. Here's the problem: I want to add a zero-width space following each underscore between XML tags. For example, if I had the following xml: <MY_BIG_TAG>This_is_a_test</MY_BIG_TAG> It should look like... (8 Replies)
Discussion started by: rhetoric101
8 Replies

6. Shell Programming and Scripting

deleting text records with sed (sed paragraphs)

Hi all, First off, Thank you all for the knowledge I have gleaned from this site! Deleting Records from a text file... sed paragraphs The following code works nearly perfect, however each time it is run on the log file it adds a newline at the head of the file, run it 5 times, it'll have 5... (1 Reply)
Discussion started by: Festus Hagen
1 Replies

7. Shell Programming and Scripting

sed has zeored my files. Help me with sed please

i made a script to update a lot of xml files. to save me some time. Ran it and it replaced all the the files with a 0kb file. The problem i was having is that I am using sed to change xml node <doc_root>. The problem with this is it has a / in the closing xml tag and the stuff inside will also have... (4 Replies)
Discussion started by: timgolding
4 Replies

8. Shell Programming and Scripting

sed over writes my original file (using sed to remove leading spaces)

Hello and thx for reading this I'm using sed to remove only the leading spaces in a file bash-280R# cat foofile some text some text some text some text some text bash-280R# bash-280R# sed 's/^ *//' foofile > foofile.use bash-280R# cat foofile.use some text some text some text... (6 Replies)
Discussion started by: laser
6 Replies

9. Shell Programming and Scripting

Issue with a sed one liner variant - sed 's/ ; /|/g' $TMP1 > $TMP

Execution of the following segment is giving the error - Script extract:- OUT=$DATADIR/sol_rsult_orphn.bcp TMP1=${OUT}_tmp1 TMP=${OUT}_tmp ( isql -w 400 $dbConnect_OPR <<EOF select convert(char(10), s.lead_id) +'|' + s.pho_loc_type, ";", s.sol_rsult_cmnt, ";", +'|'+ s.del_ind... (3 Replies)
Discussion started by: kzmatam
3 Replies

10. Shell Programming and Scripting

Sed Question 1. (Don't quite know how to use sed! Thanks)

Write a sed script to extract the year, rank, and stock for the most recent 10 years available in the file top10_mktval.csv, and output in the following format: ------------------------------ YEAR |RANK| STOCK ------------------------------ 2007 | 1 | Exxon... (1 Reply)
Discussion started by: beibeiatNY
1 Replies
Login or Register to Ask a Question