Ich habe eine while read line
Schleife, wo ich $user
und $quota
bin Zuordnung twhich von stdout
kommen, aber ich habe auch eine Datei von einem anderen Server, wo ich überprüft werde, wenn $user
ist in dieser Datei vorhanden, die auch die $user
Kontingent enthält.vergleichen 2 Werte innerhalb eines während Leseschleife, eine von stdout und einem aus der Datei
Ich brauche den $quota
Wert zu vergleichen, die ich in stdout
mit dem Wert in der Datei immer bin.
Beispiel:
zmsoap -z GetQuotaUsageRequest -v -u https://$sourceserver:7071/service/admin/soap/ |awk {'print $4" "$5'} | cut -d'"' -f2,4 | sed -r 's/["]+/ /g' | while read line
do {
user1=`echo $line|cut -f1 -d " "`
quota1=`echo $line|cut -f2 -d " "`
echo "$user1 has $quota1 on $sourceserver"
if grep -q "$user1" "$allremotequotasnew"; then
echo "OK: $user1 is EXISTING on $destserver"
else
echo "ERROR: $user1 NOT FOUND on $destserver" && echo "Creating $user1 on $destserver now..."
fi
}
done
irgendwelche Ideen? thanksa viel im Voraus
Was ist die Ausgabe Ihres Skripts? Sie müssen mehr Details zu Ihrer Frage angeben. – gzh
'user1 hat 5093390213 Byte auf server1.com OK: user1 existiert auf server1.com' und so weiter. Es wird gecheckt, ob der '$ user' in der Datei existiert. Aber ich muss auch das Kontingent dieses Benutzers innerhalb der gegebenen Datei zur gleichen Zeit überprüfen, die ich überprüfe, wenn der Benutzer in der Datei ist – esha
Wenn Sie $ Benutzer und $ Kontingent zur gleichen Zeit wollen. Nach 'grep -p', um zu beurteilen, ob der Benutzer vorhanden ist, führen Sie grep ohne die Option '-p' aus, um die Zeile mit dem Benutzer abzurufen und die Zeile zu analysieren, um $ user und $ quota abzurufen. – gzh