اطلاعیه

بستن
هنوز اطلاعیه ای در دست نیست.

یک شل اسکریپت ساده برای نمایش مقدار keys و value در Redis

بستن
X
 
  • فیلتر کردن
  • زمان
  • نمایش
Clear All
پست های جدید

    یک شل اسکریپت ساده برای نمایش مقدار keys و value در Redis

    زمانیکه به دیتابیس redis لاگین میکنم، دستور keys * را برای مشاهده مقادیر داخلی دیتابیس ردیس وارد میکردم در خروجی تنها یک مقدار را نمایش میداد :
    کد PHP:
    root@linuxzone:~# redis-cli
    192.168.1.10:6379>
    192.168.1.10:6379KEYS *
    1"mohammad"
    2"ali"
    3"mina"
    4"sara"
    5"hosein" 


    درون هریک از مقادیر بالا، آدرس ip هم ذخیره میشد. که برای مشاهده ip هر کاربر میبایست به صورت جداگانه برای هر کاربر از دستور get استفاده کنم :
    کد PHP:
    192.168.1.10:6379GET mohammad
    "192.100.100.20"
    192.168.1.10:6379


    من نیاز داشتم که به صورت همزمان هم کلیدها و هم مقادیر داخلی کلیدها را در دیتابیس ردیس مشاهده کنم که برای این کار میتوانید از اسکریپت زیر استفاده کنید. ابتدا با استفاده از یک ادیتور متن مانند vi/vim یا nano یک فایل با نام redis.sh ایجاد کنید و کدهای زیر را درون آن کپی کنید.
    کد PHP:
    #!/bin/sh -eu
    keys=`redis-cli keys '*'`
    if [ 
    "$keys]; then
    echo "$keys| while IFSread -r key; do
    type=`echo | redis-cli type "$key"`
    case 
    "$typein
    string
    value=`echo | redis-cli get "$key"`;;
    esac
    echo "> $key => $value"
    # echo "$type" | sed -E 's/^/ /'
    done
    fi 

    خطی که با # کامنت شده، نوع string را نمایش میدهد. در صورتی که به این مقدار نیاز دارید آنرا از کامنت خارج کنید. فایل را ذخیره کنید و بعد از خارج شدن از آن به آن پرمیژن اجرایی دهید :
    کد PHP:
    # chmod +x redis.sh 


    سپس با استفاده از دستور زیر اسکریپت را اجرا کنید :
    کد PHP:
    root@linuxzone:~# ./redis.sh
    mohammad => 192.100.100.20
    ali => 192.100.100.22
    mina => 192.100.100.35
    sara => 192.100.100.75
    hosein => 192.100.100.125 


    همانطور که مشاهده میکنید، هر دو مقدار key و value را به صورت همزمان از دیتابیس redis استخراج کردیم. امیدوارم مفید واقع شده باشد.

درباره انجمن منطقه لینوکسی ها

انجمن منطقه لینوکسی ها با هدف ارتقاء سطح علمی کاربران در سطح جهانی و همچنین کمک به بالا بردن سطح علمی عمومی در زمینه های تخصصی فوق پایه گذاری شده است. انجمن منطقه لینوکسی ها از طریق کارشناسان و متخصصان پاسخگوی سوالات گوناگون کاربران مبتدی یا پیشرفته میباشد تا حد امکان تلاش شده که محیطی متنوع و کاربر پسند و به دور از هرگونه حاشیه جهت فعالیت کاربران در این انجمن ایجاد شود. لذا ما به صورت مستمر برای پیشرفت کمی و کیفی محتوی و اطلاعات انجمنمان میکوشیم که این برای ما ارزشمند و حائز اهمیت است. کلیه حقوق،اطلاعات و مقالات در این انجمن متعلق به سایت منطقه لینوکسی ها میباشد، و هرگونه نسخه برداری بدون ذکر منبع مورد پیگرد قانونی خواهد شد.

شبکه های اجتماعی
در حال انجام ...
X