Centos7 有个简单 shell 脚本无法执行
- 0次
- 2021-06-22 06:05:17
- idczone
脚本内容:
[[email protected] ~]$ cat chenchao.sh
#!/bin/bash
# This is shell.
export ORACLE_SID=SMTCDB
rman target /
DELETE ARCHIVELOG ALL COMPLETED BEFORE 'SYSDATE-5';
yum install -y
crosscheck archivelog all;
delete expired archivelog all;
exit
执行过程:
[[email protected] ~]$ ./chenchao.sh
Recovery Manager: Release 11.2.0.1.0 - Production on Sat Jan 19 09:35:23 2019
Copyright (c) 1982, 2009, Oracle and/or its affiliates. All rights reserved.
connected to target database: SMTCDB (DBID=2761098402)
RMAN>
第三句就不执行了!
环境都变了
rman target /
-----------------------
这一行打开了 rman 的交互式命令行,所以不会继续往下执行
大佬 怎么执行?
https://oracle-base.com/articles/misc/oracle-shell-scripting#unix_and_linux_2
rman target /
```
中间都是 rman 工具的环境了
```
exit rman
=================================
yum install -y
这一句是 shell 环境的, 所以要把这句放到 exit 后面才能执行.
肯定不执行了,都进入到 rman 里面了
都进 RMAN 了,Shell 都被你打断了,还怎么执行。
如果你要把代码作为 RMAN 程序的输入,那可以用输入流来解决。