Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux bash脚本中未正确显示环境变量_Linux_Bash_Psql - Fatal编程技术网

Linux bash脚本中未正确显示环境变量

Linux bash脚本中未正确显示环境变量,linux,bash,psql,Linux,Bash,Psql,试图添加一个名为abc的数据库,但postgresql却创建了一个名为NEW_database的数据库 export NEW_DATABASE=abc psql -U postgres -c 'create database "$NEW_DATABASE";' 省略双引号会导致错误 ERROR: syntax error at or near "$" LINE 1: create database $NEW_DATABASE; 替换: psql -U postgres -c 'create

试图添加一个名为abc的数据库,但postgresql却创建了一个名为NEW_database的数据库

export NEW_DATABASE=abc
psql -U postgres -c 'create database "$NEW_DATABASE";'
省略双引号会导致错误

ERROR:  syntax error at or near "$"
LINE 1: create database $NEW_DATABASE;
替换:

psql -U postgres -c 'create database "$NEW_DATABASE";'
与:

问题是shell变量没有在单引号内展开。如果要展开shell变量,请使用双引号

psql -U postgres -c "create database \"$NEW_DATABASE\";"