Bash source file

March 22, 2015

While I had no particular reason why to code it in Perl or Python, I ended writing my scripts in Bash on this Sunday afternoon. No huge tasks were meant to be executed, just some database reading. However, all of the short scripts would be using common variables, namely regarding the DB credentials. Sourcing variables from an external file could be achieved using . filename or source filename.

A little heck comes when passwords containing special characters such as $ < > [] {} ` ‘ “ \ | & ; * ? are used. In your source file you need to escape each of those characters using a backslash </code> symbol.

For example we could have a configuration file db.conf as follows:

DBPASS=\[email protected]\$

Now, let’s get the variables as follows:

. db.conf
echo $DBPASS

Copy the above in a file named and we run it.


The backslash symbols do not get printed.