Need assistance with appending strings using sed and variables


Login or Register for Dates, Times and to Reply

 
Thread Tools Search this Thread
# 1  
Need assistance with appending strings using sed and variables

HI,

Can't seem to find anything on the forums to fix this.

I have a file, one line within this will not have a specific string at the end.

I have the string, but need to append it to the specific line which has it missing.

I need to use a variable for this, $string - I am using double quotes as below:

sed "/!*missing_string/a\ $string" file

Any help would be much appreciated.

Many thanks
# 2  
whats the problem??
# 3  
sed '/missing_string/!s/$/ missing_string/g' file

I've added a space in front of the second "missing_string" - assuming that you want a space before the word is appended to the line.
# 4  
Code:
sed "s/missing_string.*/& $string/" file

Regards
# 5  
hmm... I missed the $string part - sorry about that.
My script only works on the commandline - with the string manually provided

Last edited by avronius; 09-11-2008 at 02:33 PM.. Reason: grammer
# 6  
Thanks guys for your replies, but unfortunately it's still not writing the string to the end of the file.

It gets past the parser, and the rest of the script executes without problem, but no string on the end of my incomplete line.

Perhaps I didn't do a good job of explaining the problem:

1) My file has x amount of lines
2) One of these lines will have a string missing from the end of it
3) I have the string that needs to be appended to this line, stored as a variable $string
4) I want sed to locate the line with a missing end, the end is in format *T00:00:00
5) If it finds a line that doesn't have an ending matching *T00:00:00, it needs to append $string to this line.

Any further help will be greatly appreciated.

many thanks
# 7  
What is your script written in?
Login or Register for Dates, Times and to Reply

Previous Thread | Next Thread
Thread Tools Search this Thread
Search this Thread:
Advanced Search

Test Your Knowledge in Computers #955
Difficulty: Medium
Modern antivirus programs cannot detect virus-patterns inside ordinary programs by scanning them for so-called virus signatures.
True or False?

10 More Discussions You Might Find Interesting

1. UNIX for Beginners Questions & Answers

Assistance to connect to servers via ssh once and collect various commands into separate variables

Hello, We use as bash script to connect to servers listed in an .csv file to issue commands against these servers and retrieve data to be saved in a .csv file. The data we want to collect is saved in variables. We issue an ssh command for each variable we want to capture. I'm thinking this is... (9 Replies)
Discussion started by: greavette
9 Replies

2. Shell Programming and Scripting

sed assistance

Hello everyone. I am trying to replace sprintf(buffer, "{\"id\":1,\"method\":\"mining.update_block\",\"params\":}\n", coinid, blockhash); with sprintf(buffer, "{\"id\":1,\"method\":\"mining.update_block\",\"params\":}\n", coinid, blockhash); this is the code I was trying but is... (9 Replies)
Discussion started by: crombiecrunch
9 Replies

3. UNIX for Advanced & Expert Users

Need assistance with sed

Hi All, I need your assistance, I would like to replace all lines beginning with the word "begin" with the below text: Device | IPMB0-A | IPMB0-B Board Address |Sent SentErr %Errr |Sent SentErr ... (10 Replies)
Discussion started by: Dendany83
10 Replies

4. Shell Programming and Scripting

Need assistance with sed

Hi All, I need your assistance, I would like to replace all lines beginning with the word "begin" with the below text: Device | IPMB0-A | IPMB0-B Board Address |Sent SentErr %Errr |Sent SentErr ... (9 Replies)
Discussion started by: Dendany83
9 Replies

5. Shell Programming and Scripting

replace two character strings by two variables with sed command

Hello, I want to writte a script that replace two character strings by two variables with the command sed butmy solution doesn't work. I'm written this: sed "s/TTFactivevent/$TTFav/g && s/switchSLL/$SLL/g" templatefile. I want to replace TTFactivevent by the variable $TTFav, that is a... (4 Replies)
Discussion started by: POPO10
4 Replies

6. Shell Programming and Scripting

appending two strings

Hi, I have a small doubt. Here is the code snippet for which the output that I'm getting are a bit surprising. testing.sh #!/bin/sh arg_1=$1 echo "arg passed by user is:${arg_1}" mapping=`grep ${arg_1}= testing.conf | awk -F"=" '{print $2}'` echo "mapping is $mapping"... (4 Replies)
Discussion started by: badrimohanty
4 Replies

7. Shell Programming and Scripting

Appending variables

Hi, I'm having a problem with something I can't really figure out by myself. I've tried to do it with a for loop, but I'm pretty sure it won't work, if I'm not mistaken. Basically, what I'm trying to do is test some variables and if any of them is not empty, add the values of these variables... (5 Replies)
Discussion started by: mutex1
5 Replies

8. Shell Programming and Scripting

appending strings

Hi , while trying to append two strings, it is not properly coming. my code will be like this str1=_TrackingEAR srt2=1.0.0-20080523.155438-12 i am trying to build str3=$str1$str2.tgz but it is appending the last value ot the begingin of the string , but i expect to the end of the... (1 Reply)
Discussion started by: scorpio
1 Replies

9. Shell Programming and Scripting

appending strings to variable

is it possible? as i keep reading a file, i want one particular variable to keep storing the line that i've read so far (1 Reply)
Discussion started by: finalight
1 Replies

10. UNIX for Dummies Questions & Answers

appending strings in the files

I have some files created by a process in UNIX. I wanted to do some file processing: 1. I want to append a string "EOF" as the first word on the last line of all the files except the last file. 2.Similarly, I want to append "BOF" string as the first word to all the files except the first... (2 Replies)
Discussion started by: vijaylak
2 Replies

Featured Tech Videos