shell批量設(shè)置key過期時間的兩種方法步驟
1、腳本如下,這個腳本的作用是找到redis中某個數(shù)據(jù)庫下的所有key,并批量設(shè)置統(tǒng)一的過期時間(這種工作最好交給開發(fā)來做)
(1)通過shell腳本批量設(shè)置db1中所有key的過期時間
#!/usr/bin/env bash #查詢db1下的所有key,并批量設(shè)置統(tǒng)一過期時間 #獲取db1下的所有key,并通過while循環(huán)賦值給變量key,-n 1表示進(jìn)入db1 /alidata/redis/bin/redis-cli -h 127.0.0.1 -p 6381 -n 1 keys '*' | while read key do #進(jìn)入db1并批量設(shè)置統(tǒng)一的過期時間為1296000秒 /alidata/redis/bin/redis-cli -h 127.0.0.1 -p 6381 -n 1 expire ${key} 1296000 done
(2)登錄redis-6381查看效果
[root@jxq-c2-16-2 shell]# sh redis_ttl.sh #執(zhí)行腳本 (integer) 1 (integer) 1 (integer) 1 #登錄reids6381 [root@jxq-c2-16-2 shell]# /alidata/redis/bin/redis-cli -h 127.0.0.1 -p 6381 127.0.0.1:6381> select 1 #進(jìn)入db1 OK 127.0.0.1:6381[1]> keys * 1) "name3" 2) "rocen4" 3) "wenqiang" 127.0.0.1:6381[1]> ttl name3 #db1下所有key的過期時間已經(jīng)修改為15天 (integer) 1295970 127.0.0.1:6381[1]> ttl rocen4 (integer) 1295963 127.0.0.1:6381[1]> ttl wenqiang (integer) 1295959
2、這個腳本的作用是找到redis中沒有設(shè)置過過期時間的key,并批量設(shè)置統(tǒng)一的過期時間為1小時
#!/usr/bin/env bash #查詢db1中哪些key沒有設(shè)置過期時間,并批量設(shè)置統(tǒng)一過期時間為15天(1296000秒) #查詢db1中的所有key并通過while循環(huán)賦值給變量key /alidata/redis/bin/redis-cli -h 127.0.0.1 -p 6381 -n 1 keys '*' | while read key do #獲取db1中每一個key的過期時間 key_val=`/alidata/redis/bin/redis-cli -h 127.0.0.1 -p 6381 -n 1 ttl ${key}` #判斷哪些key沒有設(shè)置過期時間 if [ "$key_val" -eq "-1" ] then #將db1中沒有設(shè)置過期時間的key重新設(shè)置過期時間為3600s /alidata/redis/bin/redis-cli -h 127.0.0.1 -p 6381 -n 1 expire ${key} 3600 fi done
到此這篇關(guān)于shell批量設(shè)置key過期時間的方法步驟的文章就介紹到這了,更多相關(guān)shell批量設(shè)置key過期時間內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Linux服務(wù)器硬件運(yùn)行狀態(tài)及故障郵件提醒的監(jiān)控腳本分享
這篇文章主要介紹了Linux服務(wù)器硬件運(yùn)行狀態(tài)及故障郵件提醒的監(jiān)控腳本分享,能夠測試CPU和內(nèi)存的占用狀況以及HTTP端的異常,需要的朋友可以參考下2016-03-03Linux batch命令詳解(在系統(tǒng)不繁忙的時候執(zhí)行定時任務(wù))
batch命令 用于在指定時間,當(dāng)系統(tǒng)不繁忙時執(zhí)行任務(wù),用法與at相似,這篇文章主要介紹了Linux batch命令(在系統(tǒng)不繁忙的時候執(zhí)行定時任務(wù)),需要的朋友可以參考下2024-02-02Shell執(zhí)行/調(diào)用Java/Jar程序例子的實例詳解
這篇文章主要介紹了Shell執(zhí)行/調(diào)用Java/Jar程序例子的實例詳解的相關(guān)資料,這里提供實例幫助大家實現(xiàn)這樣的功能,需要的朋友可以參考下2017-08-08Shell腳本用for循環(huán)遍歷參數(shù)的方法技巧
今天小編就為大家分享一篇關(guān)于Shell腳本用for循環(huán)遍歷參數(shù)的方法技巧,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧2019-03-03使用Shell 腳本實現(xiàn)每隔100行插入一條記錄且記錄第一列包含行號其他列不變
本文通過實例代碼給大家講解了使用Shell 腳本實現(xiàn)每隔100行插入一條記錄且記錄第一列包含行號其他列不變的實現(xiàn)方法,非常不錯,具有參考借鑒價值,需要的朋友參考下2016-12-12