首页 > 数据库 > Oracle > [20210107]快速进入目录2.txt
[20210107]快速进入目录2.txt
--//以前写的链接如下:http://blog.itpub.net/267265/viewspace-2129448/=>[20161130]快速进入目录.txt
--//花了一个上午重新改写:
--//主要以前写的select VALUE from v$parameter where name='user_dump_dest'; 换成
--//select VALUE from v$diag_info where name='Diag Trace';
--//也发现以前写的许多不严谨的地方,做了一些改写。
--//前提条件是建立环境变量ORACLE_UNQNAME.
#! /bin/bash
#
# fast cd directory (11g 12c)
[ _"$DEBUG" = _ON ] && set -x
fastlinkdebug=${FASTLINKDEBUG:-1}
[ -n "$ORACLE_SID" ] || { echo 'setup ORACLE_SID' ; return 1 ; }
[ -n "$ORACLE_BASE" ] || { echo 'setup ORACLE_BASE' ; return 2 ; }
[ -n "$ORACLE_HOME" ] || { echo 'setup ORACLE_HOME' ; return 3 ; }
[ -n "$ORACLE_UNQNAME" ]|| { echo 'setup ORACLE_UNQNAME' ; return 4 ; }
if [ $fastlinkdebug -eq 1 ] ; then
echo
echo ORACLE_SID = $ORACLE_SID
echo ORACLE_BASE = $ORACLE_BASE
echo ORACLE_HOME = $ORACLE_HOME
echo
fi
read -p "check variable ORACLE_SID ORACLE_BASE ORACLE_HOME, ctrl_c exit:" a
wc_count=$(ps -ef | grep [o]ra_pmon_${ORACLE_SID}|wc -l)
if [ $wc_count -eq 1 ] ; then
otrace=$(sqlplus -S -l / as sysdba <<EOF
set head off
select VALUE from v\$diag_info where name='Diag Trace';
quit
EOF
)
oadump=$(sqlplus -S -l / as sysdba <<EOF
set head off
select VALUE from v\$parameter where name='audit_file_dest';
quit
EOF
)
fi
mkdir -p /home/oracle/fastlink && cd /home/oracle/fastlink || return 5
[ -d $ORACLE_HOME/dbs ] && ln -s -i $ORACLE_HOME/dbs dbs
[ -d $ORACLE_BASE/diag ] && ln -s -i $ORACLE_BASE/diag diag
[ -d $ORACLE_HOME/network/admin ] && ln -s -i $ORACLE_HOME/network/admin net
[ -d $ORACLE_HOME/network/admin ] && ln -s -i $ORACLE_HOME/network/admin tns
[ -d $ORACLE_HOME ] && ln -s -i $ORACLE_HOME oh
[ -d $ORACLE_BASE ] && ln -s -i $ORACLE_BASE ob
[ -d $ORACLE_BASE/admin/${ORACLE_UNQNAME}/dpdump ] && ln -s -i $ORACLE_BASE/admin/${ORACLE_UNQNAME}/dpdump dp
##################################
# delete otrace ,oadump of new line.
##################################
otrace=$(echo $otrace)
oadump=$(echo $oadump)
if [ $fastlinkdebug -eq 1 ] ; then
echo
echo otrace = "$otrace"
echo oadump = "$oadump"
echo
fi
read -p "check variable otrace,oadump ,ctrl_c exit:" a
[ -n "$otrace" ] || return 6
[ -n "$oadump" ] || return 7
mkdir -p /home/oracle/fastlink && cd /home/oracle/fastlink || return 8
[ -d "$oadump" ] && ln -s -i $oadump adump
[ -d "$otrace" ] && ln -s -i $otrace bdump
[ -d "$otrace" ] && ln -s -i $otrace udump
ls -l
echo
echo "fastlink create ok!!"
echo
$ fastlink.sh
ORACLE_SID = book
ORACLE_BASE = /u01/app/oracle
ORACLE_HOME = /u01/app/oracle/product/11.2.0.4/dbhome_1
check variable ORACLE_SID ORACLE_BASE ORACLE_HOME, ctrl_c exit:
otrace = /u01/app/oracle/diag/rdbms/book/book/trace
oadump = /u01/app/oracle/admin/book/adump
check variable otrace,oadump ,ctrl_c exit:
total 0
lrwxrwxrwx 1 oracle oinstall 32 Jan 7 15:28 adump -> /u01/app/oracle/admin/book/adump
lrwxrwxrwx 1 oracle oinstall 42 Jan 7 15:28 bdump -> /u01/app/oracle/diag/rdbms/book/book/trace
lrwxrwxrwx 1 oracle oinstall 45 Jan 7 15:28 dbs -> /u01/app/oracle/product/11.2.0.4/dbhome_1/dbs
lrwxrwxrwx 1 oracle oinstall 20 Jan 7 15:28 diag -> /u01/app/oracle/diag
lrwxrwxrwx 1 oracle oinstall 33 Jan 7 15:28 dp -> /u01/app/oracle/admin/book/dpdump
lrwxrwxrwx 1 oracle oinstall 55 Jan 7 15:28 net -> /u01/app/oracle/product/11.2.0.4/dbhome_1/network/admin
lrwxrwxrwx 1 oracle oinstall 15 Jan 7 15:28 ob -> /u01/app/oracle
lrwxrwxrwx 1 oracle oinstall 41 Jan 7 15:28 oh -> /u01/app/oracle/product/11.2.0.4/dbhome_1
lrwxrwxrwx 1 oracle oinstall 55 Jan 7 15:28 tns -> /u01/app/oracle/product/11.2.0.4/dbhome_1/network/admin
lrwxrwxrwx 1 oracle oinstall 42 Jan 7 15:28 udump -> /u01/app/oracle/diag/rdbms/book/book/trace
fastlink create ok!!
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/267265/viewspace-2748204/,如需转载,请注明出处,否则将追究法律责任。