How do I remove dos line breaks ^M with vi?
Posted by on 2014-09-19 13:42:20:
Removing ^M from Unix files with vi
Description -
UNIX treats the end of line differently than other operating systems. Sometimes when editing files in both Windows and UNIX environments, a CTRL-M character is visibly displayed at the end of each line as ^M in vi.
Directions -
To remove the ^M characters at the end of all lines in vi (in command mode), use:
:%s/^V^M//g
The ^v is a CONTROL-V character and ^m is a CONTROL-M. When you type this, it will look like this:
:%s/^M//g
In UNIX, you can escape a control character by preceding it with a CONTROL-V. The :%s is a basic search and replace command in vi. It tells vi to replace the regular expression between the first and second slashes (^M) with the text between the second and third slashes (nothing in this case). The g at the end directs vi to search and replace globally (all occurrences).
Tags: Text manipulation , Linux
Return to home page: Home