好吧,我需要生成一个带有名称和电子邮件地址的文本文件,格式为
姓名、电子邮件地址
来自 ldapsearch 的输出。但这并不像看起来那么简单(至少对我来说)。
我现在有一个电子邮件地址列表:
ldapsearch -x -b ou=<somevalue>,ou=<somevalue>,ou=<somevalue>,dc=<somevalue>,dc=<somevalue> objectClass=posixAccount | grep "^mail: .*$" | awk '{print $2}'
和名单:
ldapsearch -x -b ou=<somevalue>,ou=<somevalue>,ou=<somevalue>,dc=<somevalue>,dc=<somevalue> objectClass=posixAccount | grep "^description: .*$" | awk '{print $2,$3}'
但无论我尝试了什么 - 我没有得到一个命令给我我需要的列表,如上所示......
这个命令给了我名字和电子邮件——但不是一行:
ldapsearch -x -b ou=<somevalue>,ou=<somevalue>,ou=<somevalue>,dc=<somevalue>,dc=<somevalue> objectClass=posixAccount | awk '/description:|mail:/{print $2,$3}'
有没有办法制作一个很酷的正则表达式来解决这个问题?还是我想不到的出色的 shell 命令?
任何帮助将不胜感激。
问候
短剑