我有一个调用.sql文件的外壳
sample.sh
...
sqlplus /nolog @sample.sql
....
sample.sql
....
accept selection Prompt "Enter username"
...
我需要从shell脚本中自动执行脚本。我如何通过Shell脚本使数据输入自动化。
我尝试了以下
将参数传递给SQL
sqlplus /nolog @sample.sql <<EOF
abc
EOF
使用期望
/usr/bin/expect <<EOD 2>&1
set timeout 60
expect {
"Enter username "{
send "abc\r"
}}
expect eof
注意:我没有将参数传递给脚本。该脚本会提示您输入信息,用户需要即时输入信息。
找到了解决方案,下面已经提到了
解决方案:
好吧,我发现答案很简单
sqlplus / as sysdba @sample.sql <<EOF
abc
EOF
问题是我没有以当前用户身份登录。
脚本提示后:
Enter username:
自动输入“ abc”。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句