我正在尝试使用shell脚本在脚本中提示时自动接受值为Y但不知何故它总是说“在用户请求时取消操作”。
关于如何在下面的功能中接受Y的任何想法? 函数登录到数据库并更改名称。
function rename_db {
nid target=SYS/"as sysdba" DBNAME=newdb << EOD
Y
EOD
}
运行时输出:
将db ID和名称更改为newdb? (Y / [N])=&gt;
用户取消了操作 请求
答案 0 :(得分:1)
在下面使用,如果我们使用logfile,那么它将接受Y作为默认值,并且永远不会提示。
e.g。 nid target=sys/"as sysdba" dbname=old_db logfile=rename.log
答案 1 :(得分:0)
您是否安装了expect
(https://en.wikipedia.org/wiki/Expect)?您可能希望使用专为此类设计的内容。