如何实现Base Shell根据关键字获取数组?

Bash

1 前言

一个问题,一篇文章,一出故事。
笔者最近写一个Shell发现同一个脚本需要引用两个以上AD域服务器连接,于是想着根据“域名”关键字动态获取不同的两台服务器连接参数。

2 最佳实践

declare -A ldap
ldap['cmdschool.org.Host']='cmdschool.org'
ldap['cmdschool.org.Port']='389'
ldap['cmdschool.org.BindDN']='CN=admin,CN=Users,DC=cmdschool,DC=org'
ldap['cmdschool.org.Passwd']='adminPasswd'
ldap['cmdschool.org.BaseDN']='DC=cmdschool,DC=org'
ldap['cmdschool.com.Host']='cmdschool.com'
ldap['cmdschool.com.Port']='3268'
ldap['cmdschool.com.BindDN']='CN=admin,CN=Users,DC=cmdschool,DC=com'
ldap['cmdschool.com.Passwd']='adminPasswd'
ldap['cmdschool.com.BaseDN']='DC=cmdschool,DC=com'

domain="cmdschool.org"
echo "${ldap[$domain.Host]}"
echo "${ldap[$domain.Port]}"
echo "${ldap[$domain.BindDN]}"
echo "${ldap[$domain.Passwd]}"
echo "${ldap[$domain.BaseDN]}"
没有评论

发表回复

Bash
如何在远程主机执行函数?

1 前言 一个问题,一篇文章,一出故事。 笔者今天想在远程机器执行本地脚本定义的函数,于是整理当前章 …

Bash
如何实现监视多台服务器的日志?

1 前言 一个问题,一篇文章,一出故事。 今天遇到需要根据PostFix的特定邮箱地址触发一个电话报 …

Bash
如何用Base Shell推送华为消息?

1 前言 一个问题,一篇文章,一出故事。 今天遇到服务器推送华为消息失败,于是尝试使用curl去测试 …