简体   繁体   中英

import variables into bash script from a config file

I would like to import variables like username, password, host name from a config.cfg file so that I can use them inside the bash script file script.sh

user = ""
password = ""
host = ""

how can I do that, so that in the script.sh file I can use the credentials that are set in the config.cfg file to excute the following in the script:

mysqldump --user="$user" --password="$password" --host="$host" $db $tabl > "./backups/$db/$db-$tabl-$time"

Remove the spaces around the = signs in your config file, source it from your script, and use the so defined shell variables:

source config.cfg
echo "$user"

You have to source it. In bash you can do that using source or . , they are equivalents. For example:

source config.cfg

or

. config.cfg

EDIT :

As correctly noted in the other answer you need to remove spaces around = for your config.cfg to work in bash .

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM