如何一次在 ggsci 中执行两个命令?
我想使用登录dblogin
,然后在同一个 shell 中运行该info all
命令。
echo "dblogin userid abc password 123" | echo "info all"
这个管子不行。
如何一次在 ggsci 中执行两个命令?
我想使用登录dblogin
,然后在同一个 shell 中运行该info all
命令。
echo "dblogin userid abc password 123" | echo "info all"
这个管子不行。
尝试这样的事情:
echo obey "obey_cmds.txt" | ./ggsci
您的服从文件包含dblogin
andinfo all
命令的位置。
我在我的脚本中做了类似的事情,脚本动态生成服从文件,然后执行它。
例如,给定这个服从文件,obey_cmds.txt
:
dblogin userid ggsadmin password s3cr3t
info all
执行如下所示:
$ echo obey /apps/ggsadmin/goldengate/monitoring/scripts/obey_cmds.txt | $GG_HOME/ggsci
Oracle GoldenGate Command Interpreter for Oracle
Version 11.2.1.0.1 OGGCORE_11.2.1.0.1_PLATFORMS_120423.0230
AIX 5L, ppc, 64bit (optimized), Oracle 11g on Apr 23 2012 05:03:51
Copyright (C) 1995, 2012, Oracle and/or its affiliates. All rights reserved.
GGSCI (aixorad02) 1>
GGSCI (aixorad02) 2> dblogin userid ggsadmin password s3cr3t
Successfully logged into database.
GGSCI (aixorad02) 3> info all
Program Status Group Lag at Chkpt Time Since Chkpt
MANAGER RUNNING
EXTRACT RUNNING EQBTTC 00:00:00 00:00:01
EXTRACT RUNNING PQBTTC 00:00:00 00:00:01
GGSCI (aixorad02) 4> exit
你有什么理由需要在一条线上这样做吗?
此处的文档对我来说很好
ggs> ggsci <<HERE
> DBLOGIN USERID abc, PASSWORD 123
> INFO ALL
> HERE
Oracle GoldenGate Command Interpreter for Oracle
Version 11.2.1.0.6_02 16874194 OGGCORE_11.2.1.0.7_PLATFORMS_130530.0600.1_FBO
Solaris, sparc, 64bit (optimized), Oracle 11g on Jun 5 2013 01:15:20
Copyright (C) 1995, 2013, Oracle and/or its affiliates. All rights reserved.
GGSCI (foo01) 1>
Successfully logged into database.
GGSCI (foo01) 2>
Program Status Group Lag at Chkpt Time Since Chkpt
MANAGER RUNNING
REPLICAT ABENDED PERF1REP 00:00:00 01:54:59
GGSCI (foo01) 3>
ggs>
派对迟到了,但在我的盘子里,并在稍微更宽的范围内使用了类似的东西:
-- 示例脚本片段
pushd .
cd $GG_HOME
./ggsci -s <<EOF>>gg.out
start manager
start extract *
start rep *
send *,status
EOF
gg_retval=$?
popd
然后通过 retval 返回或您的输出文件进行处理。显然,你可以做各种各样的事情。小心剪断。我只是将示例推入 - 可能无法提供您正在寻找的返回值或输出文件。
哦,离别镜头:重复 ggsci 任务的方便别名
alias cdgg='pushd . ; cd $GG_HOME'
alias gg='cdgg;./ggsci;popd'