![]() |
|
|
|
|
|||||||
| UNIX for Dummies Questions & Answers If you're not sure where to post a UNIX or Linux question, post it here. All UNIX and Linux newbies welcome !! |
|
|
Submit Tools | LinkBack | Thread Tools | Display Modes |
|
|||
|
sed help
I have to search and replace a string in a file and I am using the following command in a script.
sed "s/a/b/g" file All the occurances of a are getting replaced by b except the last line since it does not have a return character at the end of line. If I enter space at the end of last last and then use the above sed command then it works fine. I want to know if there is a way I can replace all occurances. Else What is the command that I need to include in my script before the sed command so that I can get that extra space at the end of last line |
| Forum Sponsor | ||
|
|
|
||||
|
use line numbers anyway instead of g...
ex ,. try 1,$s/a/b/ if not use 1,(n)s/a/b/ that should work.. then you need to figure out why the g flag is not working.. it may be that you are not using sed according to the file syntax... it could be you need to do something like this s/\<a\>/b/ i can't see the file so I can't tell you.. try this site for help http://sed.sourceforge.net moxxx68
__________________
moxxx68 http://www.estarinformado.com.ar/apicmaxmiel/bee-diez.gif |
|
||||
|
Some utilities, like sed, are line-based, i.e they only work on complete lines. So, either add a newline to the last line, as bhargav suggests, but if you only want to do simple character translation, then consider using tr, which works on any file, e.g...
tr 'a' 'b' < file1 > file2 |
| Thread Tools | |
| Display Modes | |
|
|
|
The 50 most popular UNIX and Linux searches.
Google Search Cloud for The UNIX and Linux Forums
|
| 421 service not available, remote server has closed connection ^m automate ftp autosys awk trim bash eval bash exec bash for loop close_wait command copy/move folder in unix couldn't set locale correctly curses.h cut command in unix dead.letter find grep find null character in a unix file grep multiple lines grep or grep recursive inaddr_any inappropriate ioctl for device ksh if logrotate.conf lynx javascript mailx attachment mget mtime ping port remove first character from string in k shell replace space by comma , perl script scp recursive segmentation fault(coredump) sftp script snoop unix stale nfs file handle syn_sent tar exclude test: argument expected unix unix .profile unix forum unix forums unix internals unix interview questions unix mtime unix simulator unix.com vi substitute vi+substitute+end+of+line+character while loop within while loop shell script |