问题:无法通过使用getopts将凭据作为参数传递来从Linux连接到SQL*Plus。
回答: 要从Linux连接到SQL*Plus并传递凭据作为参数,可以使用以下方法:
#!/bin/bash
# 设置默认的凭据
username="your_username"
password="your_password"
# 解析命令行参数
while getopts ":u:p:" opt; do
case $opt in
u) username=$OPTARG ;;
p) password=$OPTARG ;;
\?) echo "无效的选项: -$OPTARG" >&2 ;;
esac
done
# 使用凭据连接到SQL*Plus
sqlplus $username/$password@database_name
在上面的示例中,脚本通过命令行参数 -u
和 -p
获取用户名和密码,如果没有提供这些参数,则会使用默认的凭据。你可以将脚本保存为一个可执行文件(例如connect_sqlplus.sh
),然后使用以下命令运行它:
./connect_sqlplus.sh -u your_username -p your_password
#!/bin/bash
# 从配置文件中读取凭据
config_file="/path/to/config.txt"
username=$(grep "username=" $config_file | cut -d '=' -f 2)
password=$(grep "password=" $config_file | cut -d '=' -f 2)
# 使用凭据连接到SQL*Plus
sqlplus $username/$password@database_name
在上面的示例中,脚本从配置文件中读取用户名和密码,并将其保存在username
和password
变量中。你需要将配置文件的路径替换为实际的路径。然后,通过sqlplus
命令使用凭据连接到SQL*Plus。
这些是在Linux连接到SQL*Plus并传递凭据的两种常见方法。请注意,为了安全起见,应该始终保护凭据并限制对它们的访问权限。
领取专属 10元无门槛券
手把手带您无忧上云