sed command problem


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting sed command problem
# 8  
Old 12-02-2003
I don't think sed not able to substitute this change in Sun 5.8 and I tried that is not problem in mine.

Could you pls. show your file by:
cat test.txt
and then
sed -n l test.txt (note: that is lower letter of L rather than pipe)
# 9  
Old 12-03-2003
I think your are missing the key point. There is no trailing newline. If you cat the file:

$ cat good_test.txt
abc abc
abc abc

Look at the file good_test.txt (with od -c):

$ od -c good_test.txt
0000000 a b c a b c \n a b c a b c \n
0000020

Let's make it a bad behaving file and strip out the newlines:

$ cat good_test.txt | tr '\012' " " > bad_test.txt

Look at the same file stripped of the newline (with od -c):

$ cat bad_test.txt | od -c
0000000 a b c a b c a b c a b c
0000020

Cheers,

Keith
# 10  
Old 12-03-2003
can we have a solution to this
all that we have here is the workaround

from the above discussion
1. No solution with sed so far
2. awk has side effects
3. forcefully changing the file to have a newline and then sed'ing it (equi to the side effect of awk)

is there some way that we do not change the file and still get the desired result

lets say i do not have a option, but I have to keep the file intact with the last line without the newline character, then how do i substitue on this line without having the newline character at the end.
# 11  
Old 12-03-2003
This will update the file and keep the incomplete last line
Code:
nawk '{gsub("abc","ABC");a[m=NR]=$0}END{for(x=1;x<=m;x++)
printf (x==m)?a[x]:a[x]"\n">FILENAME}' test.txt

# 12  
Old 12-03-2003
Refer this

perl -i -pne "s/abc/ABC/g" filename


cortesy Wintellect, thanks pal !!!
Refer this also
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. UNIX for Beginners Questions & Answers

Problem with using sed command

I have tried to print the commands which are executed today from history file using sed command by putting the range but i am unable to get it.can anyone help with this is script.I am pasting the script below that i have tried . today=$(date "+%F") echo $today yest=$(date --date="yesterday" ... (2 Replies)
Discussion started by: iosjsk
2 Replies

2. UNIX for Dummies Questions & Answers

sed command problem

Hi i am reading a tutorial on sed below command was given in tutorial. i am not able to understand the working of below command also this command is now working in my enviroment. $ sed -n '1~2p' alarm sed: 1: "1~2p": invalid command code ~ $ need your assitance here (7 Replies)
Discussion started by: scriptor
7 Replies

3. Shell Programming and Scripting

Problem with sed command

Hi, I have a file with data demo_abc demo abc demo-abc abc Now i need to extract only abc from all the lines and print. i used the pattern /*$/ . Can any one help me how to extract text "abc" only. (5 Replies)
Discussion started by: krishna_gnv
5 Replies

4. Shell Programming and Scripting

i need help in sed command problem

i use 'sed' with this syntax " sed "/$lineerr/d" $fileerr > $fileerr"_Bak" && mv $fileerr"_Bak" $fileerr" it's work to remove the line that have the word in $lineerr but it also remove my last line in file too. - -" my input File $ cat fileerr.txt xx|1111111111 xx|2222222222... (5 Replies)
Discussion started by: Chalot99
5 Replies

5. UNIX for Dummies Questions & Answers

Problem with sed command

Hi, I used sed command to replace õ character. sed -n '1,$s/õ/o/gp' inputfile > outputfile The problem is there are 5 records in input file and 2 records has that õ character. So after using the sed command, in output file Iam getting only those records which has character õ replaced by o.... (2 Replies)
Discussion started by: manneni prakash
2 Replies

6. Shell Programming and Scripting

problem in sed command

Hi, i have a script to replace a string. $ cat List.txt /DIR1/DIR2/DIR3/abcdefgh /DIR1/DIR2/DIR3/abcd /DIR1/DIR2/DIR3/abcdefghijk /DIR1/DIR2/DIR3/xyz $ ind=`/DIR1/DIR2/DIR3/abcd` $ replace=`#/DIR1/DIR2/DIR3/abcd` $ sed "s|$find|$replace|g" List.txt>cat NewList.txt The aim of... (3 Replies)
Discussion started by: tsaravanan
3 Replies

7. UNIX for Dummies Questions & Answers

where is the problem in my sed command....

for example i have the file that contain several line..and i want to swap the first word and the second word than i store it into new file.. on the command i wrote: sed -e "s/^\(*\)\(*\)/\2\1/g" file > swapfile i think its already correct... but i got the error sed: -e expression... (5 Replies)
Discussion started by: P_W
5 Replies

8. UNIX for Dummies Questions & Answers

Problem while using Sed command

I want to write the output of From_Date_Parm and To_Date_Parm to the target file. I want to write a script by passing the filename. In my case the file is TransactionParams I tried it through command line. noofdays=TransactionParams sed... (2 Replies)
Discussion started by: gopskrish
2 Replies

9. Shell Programming and Scripting

sed command problem

I am cating a file with passwords into another file. I want to replace the the password with **** and it is not working. Here is my command cat testing | sed 's/`echo ${pass}`/*****/'>>out1 ${pass} is the password that I want to replace before it goes into out1 Anyone know what I am... (1 Reply)
Discussion started by: lesstjm
1 Replies

10. Shell Programming and Scripting

Sed command problem

Hi! here is my problem : $ more file yopyop:FIToB8df02f:10200:351:yoyo:/home/yopyop:/usr/bin/ksh $grep yopyop file | sed s/FIToB8df02f/passe/ yopyop:passe:10200:351:yoyo:/home/yopyop:/usr/bin/ksh $more file yopyop:FIToB8df02f:10200:351:yoyo:/home/yopyop:/usr/bin/ksh ...when i... (1 Reply)
Discussion started by: tomapam
1 Replies
Login or Register to Ask a Question