PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : ausgabe von ldap wird in Variable abgeschnitten



wer_ner
01-07-2005, 14:14
Hallo,

mit dem ldapsearch suche ich nach dem Inhalt eines Attribute eines ldap-objekts. Die Ausgabe lese ich in eine Variable ein. Dadurch wird
der Inhalt der Ausgabe abgeschnitten.

Wenn ich den ldapsearch-Befehl auf der Kommandozeile eingebe, wird
an der selben Stelle die Zeile umgebrochen, wodurch die Ausgabe dann
in mehreren Zeilen steht.

Wie kann ich verhindern, dass dieser Fehler auftritt?

Code (in etwa):

var=$(ldapsearch -h host -x -b ....)
echo $var
(mit ksh)

Grüsse,
Werner

`kk
01-07-2005, 18:10
Leite die Ausgabe in eine Datei um und hol' dir den Inhalt dann mit 'cat' in die Variable.
Vielleicht gehts über diesen Umweg?

Gruß
Kai

wer_ner
04-07-2005, 06:30
Hi,

ich habe es jetzt so gemacht (hoffentl. ist es verständlich :-) ):

***
while read i
do
BESCHREIB=""
set $i
NAME=$2
# $LDAPSEARCH -h lcl3 -x -b ${BASE} cn=$2 |grep description >${ARBEIT}descript.txt
$LDAPSEARCH -h lcl3 -x -b ${BASE} cn=$2 description |egrep -v '#|result:|search:|dn:' >${ARBEIT}descript.txt
cat ${ARBEIT}descript.txt | grep [a-zA-Z] >${ARBEIT}descript1.txt
cat ${ARBEIT}descript1.txt | /usr/bin/sed 's/^ //' >${ARBEIT}descript2.txt
cat ${ARBEIT}descript2.txt | /usr/bin/sed 's/^description: //' >${ARBEIT}descript.txt
# BESCHREIB=$(/usr/bin/sed 's/^description: //' ${ARBEIT}descript.txt)
while read i
do
BESCHREIB=${BESCHREIB}${i}
done<${ARBEIT}descript.txt
echo "<tr>">>${WWW}main.html
echo "<td width=\"20%\"><a href=\"${TBHOME}${NAME}.dot\">${NAME}</a></td>">>${WWW}main.html
echo "<td width=\"80%\">${BESCHREIB}</td>">>${WWW}main.html
echo "</tr>">>${WWW}main.html
done<${ARBEIT}ldap-tb-1.txt
***

Dann treten aber noch Probleme in der Hinsicht auf, das der Text nicht ganz
sauber wiedergegeben wird (leerzeichen fehlen).

Vielleicht hat noch jemand Vorschläge, wie man es eleganter machen könnte.

Grüsse,
Werner