Engr.Tanbir Hasan Engr.Tanbir Hasan - 1 year ago 73
Linux Question

How to replace a [] in bash script?

I am writing a bash script for installing django with postgresql database automatically. Now , I want to replace database name by command ,since it is using sqlite3 database file path.

I wrote this command:

sudo sed -i "s/ALLOWED_HOSTS = []/ALLOWED_HOSTS = ['*']/g" $project_name/settings.py

But it shows me this error:

sed: -e expression #1, char 44: unterminated `s' command

How to change this , please help me.

Answer Source

Escape the single-quotes as below:-

sed -i "s/ALLOWED_HOSTS = \[\]/ALLOWED_HOSTS = \['*'\]/g" file
Recommended from our users: Dynamic Network Monitoring from WhatsUp Gold from IPSwitch. Free Download