Redis中通過bat獲取指定前綴開頭的所有鍵值對並輸出保存到文件中


場景

需求是查看某一個服務器上的redis的某命名空間(指定前綴開頭)的所有鍵值對的

key和value的數據格式,但是這個服務器上沒法連接外網,只能在redis服務端所在

目錄下通過bat腳本獲取所有的並輸出到txt文件中復制出來查看。

當然也可以通過redis數據的導入導出來實現,但是對redis兩個的版本以及過期時間等限制

比較多。

比如這里要獲取sys_dict命名空間下,即所有以sys_dict:開頭的鍵值對的值。

 

 

注:

博客:
https://blog.csdn.net/badao_liumang_qizhi
關注公眾號
霸道的程序猿
獲取編程相關電子書、教程推送與免費下載。

實現

這里的服務器操作系統為Windows,找到redis的安裝目錄下,即redis-cli所在的目錄下,新建bat文件

 

 

 

腳本的內容如下

@echo off
set keysfile=redis-cached-keys.txt
set valuesfile=redis-cached-values.txt
redis-cli -n 0 -a 123456 keys "sys_dict:*" > %keysfile%
FOR /F %%i in (%keysfile%) DO (redis-cli -n 0 -a 123456 get %%i >>%valuesfile% )
pause

注意這里的-n代表0號數據庫,-a后面跟的是密碼,然后keys后面的代表查詢所有

sys_dict:開頭的key並循環根據key去取值並追加到文件中。

雙擊bat文件

會在目錄下生成兩個文件,一個是存放所有的key

 

 

一個是存放所有的value

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM