ich bin zzt. dabei für alle Rechner bei uns in der Firma die Garantieinformationen automatisch zu erfassen.
Bei Dell habe ich dies bereits erfolgreich abgeschlossen, das Script habe ich dann auf Lenovo angepasst.
Im großen und ganzen ist auch alles soweit erfolgreich.
Allerdings ist es leider so, dass irgendetwas mit der Seriennummer nicht stimmt...
...ich komm aber einfach nicht drauf.
Ich hoffe ihr könnt mir helfen.
Zur Info: Wenn ich die Seriennummer auf einen Festwert setze, so wie es auskommentiert im Codeauszug zu sehen ist funktioniert es.
Die Seriennummern aus meinem Input-File sind alle Korrekt und funktionieren auch wenn ich sie per hand oder als Festwert eingebe.
Code: Alles auswählen
#!/bin/bash
input="geraeteuebersicht.txt"
output="output.txt"
i=0
zeilenzahl=`wc -l $input|awk '{ print $1 }'`
while read srnnr
do
fortschritt=`echo "($i*100)/$zeilenzahl"|bc`
# clear
echo $fortschritt Prozent
srnnr=`echo $srnnr|awk '{ print $2 }'`
# srnnr=R9EX334
curl --silent --data sysSerial=$srnnr http://support.lenovo.com/templatedata/Web%20Content/JSP/warrantyLookup.jsp > temp.html
anschaffung[$i]=`links2 -dump temp.html |egrep "....-..-.*-..-.."|awk '{print $1}'`
anschaffung[$i]=`echo ${anschaffung[$i]}|awk -F - '{print $3"."$2"."$1}'`
garantieablauf[$i]=`links2 -dump temp.html |egrep "....-..-.*-..-.."|awk '{print $2}'`
garantieablauf[$i]=`echo ${garantieablauf[$i]}|awk -F - '{print $3"."$2"."$1}'`
i=$(($i+1))
done < $input
x=0
echo -e "Hostname\tService-Tag\tAnschaffungsdatum\tGarantieablauf" > $output
while read zeile
do
echo -e $zeile"\t"${anschaffung[$x]}"\t"${garantieablauf[$x]}|tr " " "\t" >> $output
x=$(($x+1))
done < $input
Viele Grüße & Danke
mayo