结合<<EOF,启停oracle数据库脚本

shell中<<结合EOF说明:
Shell中通常将EOF与 << 结合使用,表示后续的输入作为子命令或子Shell的输入,直到遇到EOF为止,再返回到主调Shell。
可以把EOF替换成其他字符,意思是把内容当作标准输入传给程序。

当shell看到<<的时候,它就会知道下一个词是一个分界符。在该分界符以后的内容都被当作输入,直到shell又看到该分界符(位于单独的一行)。这个分界符可以是你所定义的任何字符串。

当存在报错:
-bash: line 6: warning: here-document at line 2 delimited by end-of-file (wanted `EOF’)

注意检查以下事项:
1.存在EOF的项都要顶格编写
2.<<和EOF之间不能有空格
3.EOF左右不能有空格
4.如果存在多个需要分界,可以使用EOF1和EOF2……

oracle启停脚本示例:
PS:以下两个脚本都是在root用户下执行的脚本,因为root切换到oracle用户下不需要输入密码。

#启动oracle(先启动监听,然后启动数据库服务)
su - oracle <<EOF1
 lsnrctl start
 sqlplus <<EOF2
  sys as sysdba
  startup;
  quit;
EOF2
EOF1
exit 0
#停止oracle(先停数据库服务,然后停止监听)
su - oracle <<EOF1
sqlplus <<EOF2
  sys as sysdba
  shutdown immediate
  quit
EOF2
 lsnrctl stop
EOF1
exit 0
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值