Arkadaşlar Selam,

Elimde kompleks bir yapıya ait mail sunucusu var ve openldap üzerinde
kullanıcı bilgilerini tutuyorum. Burada yapmak istediğim bir işlem mevcut.
Örneğin basit bir ldapsearch ile x bir kullanıcıma ait döküm aşağıdaki
gibi. Yapım oldukça büyük ve openldap üzerinde kullanılan bir çok
attribute(özellik) var.

dn: uid=t...@example.com,ou=example.com,ou=mailgrubu,o=mail,dc=server,dc=com
objectClass: top
objectClass: person
objectClass: inetOrgPerson
objectClass: qmailUser
mailHost: mail.server.com
qmailDotMode: ldapwithprog
accountStatus: active
deliveryMode: nolocal
mailForwardingAddress: den...@farklidomain.com
mailQuotaSize: 500000000
mailQuotaCount: 20000
cn: test
sn: Account
mail: t...@example.com
mailMessageStore: /maildizini/kullanıcıpati
uid: t...@example.com


Ben tüm kullanıcıları listeleyerek bu kullanıcılar içinden yalnızca
"mailForwardingAddress" attribute'ü kullanan kullanıcıları ve yönlendirilen
adresleri görmek istiyorum. Yani amacım yönlendirme kullanan kullanıcılarım
varsa bunu gerçek adresi ve yönlendirilen adres şeklinde listelemek
istiyorum (tıpkı aşağıdaki gibi).

Mail: acco...@example.com
mailForwardingAddress: a...@deneme.com
mailForwardingAddress: a...@deneme.com

Mail: accou...@example.com
mailForwardingAddress: c...@deneme.com

Mail: accou...@example.com
mailForwardingAddress: f...@deneme.com
mailForwardingAddress: f...@deneme.com
mailForwardingAddress: f...@deneme.com
mailForwardingAddress: f...@deneme.com

Mail: accou...@example.com
mailForwardingAddress: z...@deneme.com
mailForwardingAddress: z...@deneme.com

ldap üzerinden gitmeyeyim linux komutlarına yöneleyim tüm kullanıcılarıma
ait ldap kayıtlarını bir txt dosyasına basıyorum sonrasında aşağıdaki komut
ile arayınca bu sefer ldap üzerinde tüm "mail:" ve "mailForwardingAddress"
attribute'üne sahip satırları listeliyor. Fakat burada yaşadığım sorun ise
tüm adresleri listelerken yönlendirme özelliğine (attribute) sahip olmayan
kullanıcıları da listeliyor olması. Hatta bunu da dağınık bir şekilde
listeliyor.

cat dosya.txt | grep "mail:\|mailForwardingAddress"

Ldap üzerinden tüm kullanıcılara ait çıktıyı aldığım zaman (İlk başta
verdiğim ldap sonuc çıktısı) her bir liste arasında bir boşluk bulunuyor.
Acaba diyorum bu boşlukları değerlendirsem ve buraya değer yazdırsam (xxxxx
gibi) sonrasında her xxxx arasında şu attribute/kelimeleri ara gibisinden
yola çıksam diye düşündüğüm zaman saçma sonuçlar alıyorum. Bu arada her
ldap sorgusu sonucu aldığım dökümde ilgili attribute'lerin sıralamaları
farklı geliyor. Yani hepsinin belirli bir sıralaması bulunmuyor.

Bu durumda önerilerinize açığım.

-- 
İyi çalışmalar.
_______________________________________________
Linux-sunucu E-Posta Listesi
Linux-sunucu@liste.linux.org.tr

Liste kurallarını http://liste.linux.org.tr/kurallar.php  bağlantısından 
okuyabilirsiniz;

Bu Listede neden bulunduğunuzu bilmiyorsanız veya artık bu listeden gelen 
e-postaları almak istemiyorsanız aşağıdaki bağlantı adresini kullanarak 1 
dakika içinde üyeliğinizi sonlandırabilirsiniz.
https://liste.linux.org.tr/mailman/listinfo/linux-sunucu

Cevap