j'ai un petit souci avec le caractère espace dans mon script shell.
voici mon script:
#! /bin/sh
OPTIONS="-x -z 2 -b \"dc=dr8,dc=cnrs,dc=fr\""
FILTER="\"cn=toto caca\""
ATTRS="cn mail"
#affichage de la requète ldap
echo "ldapsearch $OPTIONS $FILTER $ATTRS"
# on effectue la requète
ldapsearch $OPTIONS $FILTER $ATTRS
# si l'on décommente la ligne suivante, la requete marche
#ldapsearch -x -z 2 -b "dc=dr8,dc=cnrs,dc=fr" "cn=toto caca" cn mail
voici le résultat:
# extended LDIF
#
# LDAPv3
# base <"dc=dr8,dc=cnrs,dc=fr"> with scope sub
# filter: "cn=toto
# requesting: caca" cn mail
#
ldapsearch: ldap_search_ext: Bad search filter (-7)
le problème est dû au fait que le filtre "cn=toto caca" est coupé en 2.
en effet, si je décommente la dernière ligne de mon script, on obtient le resultat suivant:
avez vous une idée là dessus?# extended LDIF
#
# LDAPv3
# base <"dc=dr8,dc=cnrs,dc=fr"> with scope sub
# filter: cn=toto caca
# requesting: cn mail
#
...
merci,
Partager