2015-02-10 140 views
0
export c_db1=oraclenod1 
export c_db2=oraclenod2 

当我下面运行:传递价值shell脚本

perl $dboh/clone/bin/clone.pl ORACLE_HOME="$dboh" ORACLE_HOME_NAME="${db_upper}_ORACLE_HOME" ORACLE_BASE="${dboh_base}" '-O"CLUSTER_NODES={"${c_db1}","${c_db2}"}"' 

我得到如下:

./runInstaller -clone -waitForCompletion "ORACLE_HOME=/u01/oracle/dba/product/11.2.0.3" "ORACLE_HOME_NAME=DBA_ORACLE_HOME" "ORACLE_BASE=/u01/oracle/dba/product" "CLUSTER_NODES={"${c_db1}","${c_db2}"}" -silent -noConfig -nowait  

我试图通过c_db1和c_db2,可以ANY1帮助让我知道我怎么能通过这个?

感谢所有帮助

感谢,SM

+0

: perl的$ dboh /克隆/斌/ clone.pl ORACLE_HOME =” $ dboh“ORACLE_HOME_NAME =”$ {db_upper} _ORACLE_HOME“ORACLE_BASE =”$ {dboh_base}“'-O”CLUSTER_NODES = {\“$ {c_db1}”,\“$ {c_db2}”}“' 我越来越以下: ./runInstaller -clone -waitForCompletion“ORACLE_HOME =/u01/oracle/dba/product/11.2.0.3”“ORACLE_HOME_NAME = DBA_ORACLE_HOME”“ORACLE_BASE =/u01/oracle/dba/pr oduct“”CLUSTER_NODES = {\“$ {c_db1}”,\“$ {c_db2}”}“-silent -noConfig -nowait – user2500742 2015-02-10 10:42:28

+0

感谢TartanLlama编辑我的文章。 – user2500742 2015-02-10 10:49:59

回答

0

您使用sijngle报价的最后一个参数

'-O"CLUSTER_NODES={"${c_db1}","${c_db2}"}"' 

单引号防止变量扩展:https://www.gnu.org/software/bash/manual/bashref.html#Quoting

假设你需要这些文字引号,这样做

"-O\"CLUSTER_NODES={\"${c_db1}\",\"${c_db2}\"}\"" 

基于您的评论,你不要当我下面运行需要所有内部报价,所以

"-O\"CLUSTER_NODES={${c_db1},${c_db2}}\"" 
+0

感谢您的更新,仍然我有同样的问题变量不会CLUSTER_NODES – user2500742 2015-02-10 11:39:40

+0

让我清除更多,我需要像下面:'-O“CLUSTER_NODES = {oraclenod1,oraclenod2}”'使用脚本.. – user2500742 2015-02-10 11:43:32

+0

当我通过如下所示:perl $ dboh/clone/bin/clone.pl ORACLE_HOME =“$ dboh”ORACLE_HOME_NAME =“$ {db_upper} _ORACLE_HOME”ORACLE_BASE =“$ {dboh_base}”'-O \“CLUSTER_NODES = {$ {c_db1}, $ {c_db2}} \“”' 日志文件显示像CLUSTER_NODES必须在{}中指定! – user2500742 2015-02-10 11:59:29