Home » 2016 » October » 12 » Remove Control M characters from a script or any file in Linux/AIX

3:44 PM
Remove Control M characters from a script or any file in Linux/AIX

Hi Guys,
Welcome back,

Being a consultant in DBS project I have witnessed many cased where the shell script that is copied or created may contain some special characters. This happens when the script is copied from windows system to AIX and the script was having extra spaces.

So, if the script is having such speciall characters, it might not get executed successfully throwing error as below:


Command not found: ^M


The solution is we have to find and remove all special characters like these from the script.

Here we shall practice a very simple way to do the same. 

1. Using command tr.
Use command tr to delete all '^M' characters from the script, redirect the output to a different file. rename that file back to original file.


tr -d '\r\f' originalfile > newFile.

mv newFile originalfile.

-d option is used to delete any specified characters from the file.


2. Using Vi editor

Open the file in Vi editor. Use the substitute method as below


It means search for ^M and replace it with nothing globally if the flag 'g' is given.

3. Using SED 

We can use SED command also to modify the file on the go.

Use -i option to backup the file before making any changes.


#> sed -i.bak 's/^M//g' filename

The file will be modified and a backup will also be created with .bak extension.


Please Like/Share/comment if you find this useful.


Category: Open System-Linux | Views: 1609 | Added by: shanky | Tags: remove control M characters, remove special character, tr | Rating: 0.0/0

Related blogs

You may also like to see:

[2014-03-25][Open System-Linux]
Create a new user in Linux system: useradd
[2015-03-18][Open System-Linux]
What is runlevel in Linux?
[2014-09-26][Open System-Linux]
Traceroute command in Linux
[2014-04-24][Open System-Linux]
Addition of two numbers using shell scripting in UNIX
[2014-01-08][Open System-Linux]
SSH Login Setup

Total comments: 0