Using vi to remove ^M characters in a text file
A text file that contains ^M
characters was probably created on a DOS or Windows system and then opened on a Unix system. ^M
is the DOS / Windows character for carriage-return, otherwise known as the end of a line in the text file.
To remove the characters, open the text file in vi
. While in command mode type:
:% s/^M//g
Note: You may have to type: <ctrl-v><ctrl-m>
to create the ^M
character. It is not a ^
and M
.
Example file with ^M
characters throughout:
! Info via SNMP: sysoid=1.3.6.1.4.1.2636.1.1.1.2.25,vendor=Juniper,model=MX480,hostname=900w-mmr-wu-rt-0^M
## Last commit: 2020-06-17 05:04:35 CDT by me ^M
system {^M
host-name 900w-mmr-wu-rt-0;^M
time-zone America/Chicago;^M
no-redirects;^M
no-redirects-ipv6;^M
dump-on-panic;^M
internet-options {^M
/* KB28184 tells us that the Junos default is 1000 ICMP messages per second */^M
icmpv4-rate-limit packet-rate 1000;^M
icmpv6-rate-limit packet-rate 1000;^M
path-mtu-discovery;^M
/* Routers shouldn’t process source quench messages (RFC1812) and RFC6633 formally deprecates its handing in other transport protocols. */^M
no-source-quench;^M