From: Nicolas Boisselier Date: Thu, 7 Dec 2017 18:25:06 +0000 (+0000) Subject: etc/profile.d/ldap.sh X-Git-Url: https://git.nbdom.net/?a=commitdiff_plain;h=36e14fc6f4087c8456b628bc88613fc8c625dfd4;p=nb.git etc/profile.d/ldap.sh --- diff --git a/etc/profile.d/ldap.sh b/etc/profile.d/ldap.sh index 7035ae9d..318e1e29 100644 --- a/etc/profile.d/ldap.sh +++ b/etc/profile.d/ldap.sh @@ -85,6 +85,24 @@ ldapsearch_csv() { ldapsearch -LLLx -o ldif-wrap=no $aldap | awk -f $NB_ROOT/lib/awk/ldap2csv.awk -- $aawk $aldap } +ldap_gup_dir() { + local dir="$1" && shift + cd "$dir" || return + local perm=$(ls -dlaF --color=auto . 2>/dev/null | awk '{print $3"."$4}') + local tmp=`mktemp -d` + eval ' + ldap_gup $@ | while read -r -a rec; do + file=${rec[0]} + rec=("${rec[@]:1}") # shift + echo "${rec[@]}" >> "$tmp/$file" + done + ' + [ -n "$perm" ] && chown "$perm" "$tmp"/* + chmod 640 "$tmp"/* + mv "$tmp"/* ./ + rm -rf "$tmp" +} + ldap_gup() { local usage="Usage: ldap_gup [filter attrs ...]" case "$*" in