linux bash export vars between shell instances
export_global_var () {
filename=/tmp/env
test -f $filename || touch $filename
{
flock 0 #prevents isssues with multi thread process
#set -x #enables verbose/debug
. /tmp/env
[ $# -eq 0 ] || export "$@"
echo "$@"
#echo "$@" >> /tmp/env #export into file
KEY=`echo "$@" | awk '{split($0,a,"="); print a[1]}'`
#sed '/"$KEY"/c > "$@"' $filename
VAR_IN_FILE=`cat $filename | grep "$KEY"`
(grep -q "$KEY" $filename || echo "$@" >> $filename) && grep -rl "$KEY" $filename | xargs sed -i "s/$VAR_IN_FILE/$@/g"
} < $filename
source $filename #import into mem
}
import_global_var () {
filename=/tmp/env
echo "importing global variables..."
source $filename #import into mem
}
USAGE:
export_global_var DEPLOY_BOOLEAN=0 EXEC=1 #export var gobally
import_global_var #import vars from global vars
Are there any code examples left?
New code examples in category Shell/Bash
-
Shell/Bash 2022-03-27 22:30:33 wise highlight ubuntu
-
Shell/Bash 2022-03-27 22:25:19 how to send a pull request in git
-
Shell/Bash 2022-03-27 21:55:06 how to open terminal in sublime text ubuntu
-
Shell/Bash 2022-03-27 21:25:19 how to switch branch
-
Shell/Bash 2022-03-27 21:20:25 python
-
Shell/Bash 2022-03-27 21:20:04 set user as admin gitlab
-
Shell/Bash 2022-03-27 21:10:09 apache2 mod_jk proxy to tomcat connector
-
Shell/Bash 2022-03-27 20:35:12 chown
-
Shell/Bash 2022-03-27 20:15:08 awk last match