Ik heb een lang tekstbestand met redis-opdrachten die ik moet uitvoeren met behulp van de redis-opdrachtregelinterface:
bijv.
DEL 9012012
DEL 1212
DEL 12214314
enz.
Ik kan geen manier vinden om de commando’s sneller dan één tegelijk in te voeren. Er zijn enkele honderdduizenden regels, dus ik wil ze niet allemaal in één DEL-commando opstapelen, ze hoeven ook niet allemaal tegelijk te worden uitgevoerd.
Antwoord 1, autoriteit 100%
de volgende code werkt voor mij met redis 2.4.7 op mac
./redis-cli < temp.redisCmds
Voldoet dat aan uw eisen? Of ben je op zoek naar een manier om het programmatisch sneller te doen?
Antwoord 2, autoriteit 66%
Als je geen bestand wilt maken, gebruik dan echo
en \n
echo "DEL 9012012\nDEL 1212" | redis-cli
Antwoord 3, autoriteit 19%
De redis-cli --pipe
kan worden gebruikt voor massa-invoeging. Het is beschikbaar sinds 2.6-RC4 en in Redis 2.4.14.
Bijvoorbeeld:
cat data.txt | redis-cli --pipe
Meer info in: http://redis.io/topics/mass-insert
Antwoord 4, autoriteit 6%
Ik weet dat dit een oude, oude thread is, maar ik heb dit toegevoegd omdat het tussen andere antwoorden lijkt te worden gemist, en een die goed werkt voor mij.
Het gebruik van heredocwerkt hier goed, als je dat niet wilt om echo te gebruiken of expliciet \n
toe te voegen of een nieuw bestand aan te maken –
redis-cli <<EOF
select 15
get a
EOF