Dies könnte eine späte Antwort sein, aber ich bleibe hier, nur für den Fall, dass jemand diese Funktionalität noch benötigt.
Kurze Antwort
ltrim mylist 0 - (n + 1) wobei mylist der Schlüssel und n die Länge der mylist ist.
Lange Antwort
Die Funktionsweise von ltrim besteht darin, dass zwei Indizes verwendet werden und die dazwischen liegenden Elemente einschließlich der Indizes zurückgegeben werden.
Ltrim Liste startIndex endIndex
Beispiel unter der Annahme, dass wir eine Redis-Liste mit einer Schlüssel-Myliste haben, die 10 Einträge enthält:
ltrim mylist 0 5 schneidet die Liste auf Elemente ab Index 0 bis Index 5. Und verwirft diejenigen, die außerhalb dieses Bereichs liegen.
Glücklicherweise unterstützen Redis-List-Operationen eine negative Indizierung, die sich in einigen Situationen als äußerst nützlich erweist. Normalerweise, wenn Sie die Länge der Liste nicht kennen.
-1 bezieht sich auf das letzte Element, - 2 vorletztes Element usw. Und (-n) ist das erste Element.
Außerhalb des Bereichs liegende Indizes sind nicht schädlich. Wenn der Endindex größer als die Länge der Liste ist, wird er von redis als gleich dem letzten Index behandelt.
Deshalb lösche ltrim mylist 0, - (n +1) die Liste. Dies geschieht, weil (-n) dem Index 0 entspricht. Wenn Sie 1 hinzufügen, bleibt kein Element in diesem Bereich, da dies vor dem ersten Element liegt.