Я хотел бы экспортировать подмножество моих данных Redis на подчиненном устройстве в файл csv. Я заметил, что в redis-cli добавлен новый параметр вывода csv, но я не могу найти документацию о том, как он работает. Включение опции выводит выходы команд на экран в формате csv. Каков наилучший способ получить это в csv файле?
Параметр Redis-cli --csv (экспорт в csv)
Ответ 1
Режущая кромка!
Я только что посмотрел на исходный код, и все, что он делает, выводит команды как значения, разделенные запятыми, в stdout. Это не большой сюрприз.
Итак, вы можете просто перенаправить его в файл, стандартный способ, если вы находитесь в Linux?
например./
redis-cli --csv your-command > stdout.csv 2> stderr.txt
Ответ 2
Перейдите в каталог src
redis и запустите следующую команду
./redis-cli $command > $file_name
Пример: ./redis-cli SMEMBERS "$KEY" > $file_name(RANDOM NAME)
это сработало для меня.
Ответ 3
В случае сокета и/или нескольких серверов redis вам нужно будет:
redis-cli -s /path/to/socket --csv your-command > stdout.csv 2> stderr.txt
например.
redis-cli -s /var/run/redis/redis4.sock --csv lrange my_list 0 -1 > stdout.csv 2> stderr.txt