33 lines
782 B
Bash
Executable File
33 lines
782 B
Bash
Executable File
#!/bin/sh
|
|
|
|
# This script will convert UR1 user sesame into UR1 user mail
|
|
# The first argument should be a file with a uid by line!
|
|
|
|
# Dependancies:
|
|
# ldapsearch (provide by ldap-utils on GNU/Linux)
|
|
|
|
UID_LIST="${1}"
|
|
MAIL_LIST="${UID_LIST}_mail"
|
|
|
|
# Test if the given file exists
|
|
if [ -f "${UID_LIST}" ]; then
|
|
touch "${MAIL_LIST}"
|
|
else
|
|
printf '%b' "The fist argument should be a file with one mail/line\n"
|
|
exit 1
|
|
fi
|
|
|
|
index=0
|
|
while read uid; do
|
|
index=$((index+1))
|
|
mail=$(ldapsearch -ZZ -H ldap://ldap.univ-rennes1.fr -LLL '(uid='"${uid}"')' -b "dc=univ-rennes1,dc=fr" -x mail | grep "^mail" | cut -d" " -f2)
|
|
|
|
#printf '%b' "${index}: ${mail} -> ${uid}\n"
|
|
printf '%b' "${mail}\n" >> "${MAIL_LIST}"
|
|
|
|
done < "${UID_LIST}"
|
|
|
|
printf '%b' "Please see ${MAIL_LIST} file\n"
|
|
|
|
exit 0
|