زنده نگه داشتن ارتباط با سرور

مطلبی از ایریکس در ۱۴ مرداد ۱۳۹۱

تو این شبکه‌ای که من الان ازش استفاده می‌کنم کانکشن‌ها خیلی زود و به محض اینکه چند ثانیه بیکار بمونن قطع میشن. من هم که خوب برام خیلی سخته هر دفعه که به سرورها وصل میشم پسورد وارد کنم این دستور رو نوشتم تو قسمت aliasهای فایل bashrcم تا هر دفعه که قراره چند ثانیه رو ترمینال سرور کار نکنم این رو بزنم و خیالم راحت باشه که دیگه ارتباطم قطع نمیشه. البته ایده‌اش رو قبلا تو اینترنت دیده بودم، ولی الان پیداش نکردم کجا بود که بهش لینک بدم. خود دستور اینه:

while true; do echo -en “\r`date`”; sleep 1; done;

این هم یه عکس ازش:

keep alive clock

البته خیلی طبیعی هست که میشه با دستور watch هم همین کار رو کرد، ولی من دوست داشتم این شکلی داشته باشم این رو. اون while یه حلقه ایجاد می‌کنه با شرط همیشه درست، بنابراین این دستور همیشه اجرا میشه. خود دستور هم که تاریخ رو پرینت می‌کنه،‌ یک ثانیه صبر می‌کنه، محل کاراکتر رو به ابتدای خط برمی‌گردونه و مجددا تاریخ رو پرینت می‌کنه و دوباره یک ثانیه صبر می‌کنه.

اینجوری هر لحظه بین لپ‌تاپ من و سرور دیتا رد و بدل میشه، بنابراین ارتباط من با سرورهام قطع نمیشه و وقتی تو ترمینال سرورم کار داشته باشم فقط یه Ctrl+c می‌زنم و به کارم ادامه میدم.


تهیه نسخه پشتیان از اس‌م‌اس‌های گوشی N900

مطلبی از ایریکس در ۱۱ اردیبهشت ۱۳۸۹

تو گوشی N900 تمام رویدادها، از تماس‌ها گرفته تا اس‌ام‌اس‌ها، تو یک فایل دیتابیس sqlite ذخیره میشن. مسیر این فایل اینجاست:

~/.rtcom-eventlogger/el.db

من برای اینکه تمام مکالمات اس‌ام‌اسی با یک شماره رو بتونم رو کامپیوتر داشته باشم، یک کپی از این فایل رو به سیستم منتقل کردم. بعد با اجرای یک دستور تونستم یک فایل متنی داشته باشم که به ترتیب این ستون‌ها رو داره:

time|sender|number|text

این ستون‌ها با یک علامت پایپ (|) از هم جدا شدن. ستون دوم هم برای نشون دادن این هست که این اس‌ام‌اس دریافتی هست یا ارسالی. اگر اس‌ام‌اسی باشه که شما ارسال کردید عبارت SelfHandle رو خواهید دید، در غیر این صورت این ستون خالی خواهد بود و به این معنی که این اس‌ام‌اس رو دریافت کردید.

دستوری هم که زدم اینه:

irix@Persia:~$ sqlite3 el.db “select datetime(storage_time, ‘unixepoch’, ‘localtime’),local_name,remote_uid,free_text from events where event_type_id in (7,8) and remote_uid=’+989121234567′;” > SMSs.txt