sed append without using new line


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting sed append without using new line
# 1  
Old 02-07-2012
sed append without using new line

im trying to append to the end of the line using sed but I want to do it without creating a new line
the text to which I want to append is all in capital letters.

I want to do something like this:

Code:
LINE]Foo

but when I do this:

Code:
/[A-Z]/a\
] Foo

it prints foo on a new line:
Code:
LINE
]Foo

how can I get sed to append text without the new line?
# 2  
Old 02-07-2012
Try something like this:
I will add Eon at the end of the line
Code:
$ cat data
Knight Eon
Hello World
Hello Earth
How is everyone

$ sed -e '$s/\(.*\)/\1Eon/g' data
Knight Eon
Hello World
Hello Earth
How is everyone Eon

This User Gave Thanks to knight_eon For This Post:
# 3  
Old 02-07-2012
Code:
echo "LINE" | sed 's/$/]FOO/'

This appends the "]FOO" to end of the line.

Thanks,
Kalai

Last edited by Franklin52; 02-07-2012 at 03:56 AM.. Reason: Please use code tags for code and data samples, thank you
This User Gave Thanks to kalpeer For This Post:
# 4  
Old 02-07-2012
thanks for the replays but what I really want to do is append to only the lines that are in all capital letters.

sort of like if i Have:
Code:
TITLE
this is a line
this is a line

then i what it to be
Code:
TITLE]Foo
this is a line
this is a line

Thank you
# 5  
Old 02-07-2012
try this

Code:
touch /tmp/test.$$
while read line
do
check=`echo $line | tr -dc [A-Z]`
if [ ! -z "$check" ];then
echo "$line" | sed 's/$/]Foo/' >> /tmp/test.$$
else
 echo "$line" >> /tmp/test.$$
fi
done < one
cat /tmp/test.$$

one:
TITLE
this is a line
this is a line

Output:

TITLE]Foo
this is a line
this is a line

Last edited by Franklin52; 02-07-2012 at 03:58 AM.. Reason: Code tags
This User Gave Thanks to kalpeer For This Post:
# 6  
Old 02-07-2012
It can be written in sed one liner. Here is how:

Code:
$ cat data
Knight Eon
Hello WORLD
Hello Earth
LINE
How is everyone
$ sed -e 's/\(\L.*\)/\1]Foo/g' data
Knight Eon
Hello WORLD]Foo
Hello Earth
LINE]Foo
How is everyone

Hope this will help you Smilie
This User Gave Thanks to knight_eon For This Post:
# 7  
Old 02-07-2012
Code:
sed 's/^[A-Z][A-Z]*$/&\]FOO/' infile

or with whitespace tolerance:
Code:
sed 's/^[ \t]*[A-Z][A-Z]*[ \t]*$/&\]FOO/' infile

This User Gave Thanks to Scrutinizer For This Post:
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

sed command to append word at end of line

hello Team, I am looking for sed command or script which will append word at end of line. for example. I want to validate particular filesystem with mount |<filesystem name> command. if nodev parameter is not there then it should add in the fstab file with receptive to the filesystem. # mount... (8 Replies)
Discussion started by: ghpradeep
8 Replies

2. Shell Programming and Scripting

Using sed to find and append or insert on SAME line

Hi, $ cat f1 My name is Bruce and my surname is I want to use SED to find “Bruce” and then append “ Lee” to the end of the line in which “Bruce” is found Then a more tricky one…. I want to INSERT ….a string… in to a line in which I find sometihng. So example $ cat f2 My name is... (9 Replies)
Discussion started by: Imre
9 Replies

3. Shell Programming and Scripting

sed - append line after block

Hi, I posted in another section, but no reply yet. I have an ini file with sections denoted as follows (for example) blah=blah blee=blee bloo=bloo blur=blur blaa=blaa I have ksh script that needs to append a line ${line} to the end of section ${section} I saw this... (7 Replies)
Discussion started by: andyatit
7 Replies

4. Shell Programming and Scripting

SED and Solaris Append line to the end of File does not work

Hello, I have to add a new line at the end of a File on Solaris-System: I think my script should be right, because I evaluated it to other threads. However the script does not what I am expected it should do. My file might look like this: Line1 Line2 Line3 And my script could... (7 Replies)
Discussion started by: Timo_HR
7 Replies

5. Shell Programming and Scripting

sed to append on specific line in password file

I have the a group file and my ftp group line looks like this ... (3 Replies)
Discussion started by: slufoot80
3 Replies

6. Shell Programming and Scripting

How to append line with sed?

Input: gstreamer-plugins-good gstreamer-plugins-bad gstreamer-plugins-ugly Output should be: gstreamer-plugins-good gstreamer-plugins-bad gstreamer-plugins-ugly How can it be done with sed? (5 Replies)
Discussion started by: cola
5 Replies

7. UNIX for Dummies Questions & Answers

sed - append text to every line

Hi all I tried this on an old version of sed on NCR Unix MP-RAS: sed -e "s/$/nnn/" file1 >file2 This file (file1): the cat sat on the mat. the cat sat on the mat. the cat sat on the mat. becomes this (file2): the cat sat on the mat.nnn the cat sat on the mat.nnn nnn the... (3 Replies)
Discussion started by: jgrogan
3 Replies

8. Shell Programming and Scripting

Sed : identify a pattern and append a word at the end of a line

Hello to all, On aix, I want to identify a term on a line in a file and then add a word at the end of the line identified. I do not want the word to be added when the line contains the symbol "#". I use the following command, but it deletes the term identified then adds the word. #sed... (4 Replies)
Discussion started by: dantares
4 Replies

9. UNIX for Dummies Questions & Answers

using sed to append text to the end of each line

Anyone know how to use SED to append a comma to the end of each line example: field1,field2,field3,field4 If i Cat /textfile ---- How can i append the end of /textfile with a comman? (8 Replies)
Discussion started by: Redg
8 Replies

10. Shell Programming and Scripting

Using SED to append character to each line

Hey - my first post here, and I'm a total SED newb. I've looked around for previous help on this, but have so far been unsuccessful. I have a program (AMStracker for OS X) that outputs data in the terminal. Output is in this form: . . . 3 0 -75 3 0 -76 3 0 -77 ... (4 Replies)
Discussion started by: c0nn0r
4 Replies
Login or Register to Ask a Question