
الإنجليزية | 简体中文
مبني على قصة حقيقية:
xxx: حسنًا، إذًا، مهندس البناء لدينا غادر إلى شركة أخرى. كان هذا الرجل يعيش حرفيًا داخل الطرفية. كما تعلم، ذلك النوع من الأشخاص الذين يعشقون Vim، ويصنعون الرسوم البيانية في Dot، ويكتبون منشورات الويكي في Markdown... إذا كان هناك شيء - أي شيء - يتطلب أكثر من 90 ثانية من وقته، يكتب سكربت لأتمتته.
xxx: لذلك نحن جالسون هنا، نتصفح، أمم، "إرثه"
xxx: ستعجبك هذه
xxx:
smack-my-bitch-up.sh- يرسل رسالة نصية "متأخر في العمل" إلى زوجته (على ما يبدو). يختار الأسباب تلقائيًا من مصفوفة من السلاسل، بشكل عشوائي. يتم تشغيله ضمن مهمة cron. يتم تشغيل المهمة إذا كانت هناك جلسات SSH نشطة على الخادم بعد الساعة 9 مساءً مع تسجيل دخوله.
xxx:
kumar-asshole.sh- يمسح صندوق الوارد بحثًا عن رسائل بريد إلكتروني من "Kumar" (مسؤول قواعد البيانات في عملائنا). يبحث عن كلمات مفتاحية مثل "help"، "trouble"، "sorry" إلخ. إذا تم العثور على الكلمات المفتاحية - يتصل السكربت عبر SSH بخادم العميل ويتراجع بقاعدة بيانات الاختبار إلى أحدث نسخة احتياطية. ثم يرسل ردًا "لا تقلق يا صاح، كن حذرًا في المرة القادمة".
xxx:
hangover.sh- مهمة cron أخرى مضبوطة على تواريخ محددة. يرسل رسائل بريد إلكتروني تلقائية مثل "لا أشعر بحالة جيدة/سأعمل من المنزل" إلخ. يضيف "سببًا" عشوائيًا من مصفوفة أخرى محددة مسبقًا من السلاسل. يتم تشغيله إذا لم تكن هناك جلسات تفاعلية على الخادم في الساعة 8:45 صباحًا.
xxx: (وجائزة الأوسكار تذهب إلى)
fucking-coffee.sh- هذا السكربت ينتظر بالضبط 17 ثانية (!)، ثم يفتح جلسة telnet إلى ماكينة القهوة الخاصة بنا (لم يكن لدينا أي فكرة أن ماكينة القهوة متصلة بالشبكة، وتعمل بنظام Linux ولها مقبس TCP قيد التشغيل) ويرسل شيئًا مثلsys brew. اتضح أن هذا الشيء يبدأ في تخمير قهوة لاتيه نصف كافيين متوسطة الحجم وينتظر 24 (!) ثانية أخرى قبل صبها في الكوب. التوقيت هو بالضبط الوقت الذي يستغرقه المشي إلى الماكينة من مكتب الرجل.
xxx: يا للهول، سأحتفظ بهذه
الأصل: http://bash.im/quote/436725 (بالروسية) (رابط Archive.org ) طلبات السحب مع تطبيقات أخرى (Python, Perl, Shell، إلخ) مرحب بها.
تحتاج إلى متغيرات البيئة هذه:
# مستخدمة في سكربتات `smack-my-bitch-up` و `hangover`
TWILIO_ACCOUNT_SID=ACxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
TWILIO_AUTH_TOKEN=yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy
# مستخدمة في سكربت `kumar_asshole`
[email protected]
GMAIL_PASSWORD=password
بالنسبة لسكربتات Ruby، تحتاج إلى تثبيت gems:
gem install dotenv twilio-ruby gmail
# تشغيل `smack-my-bitch-up.sh` من الاثنين إلى الجمعة الساعة 9:20 مساءً.
20 21 * * 1-5 /path/to/scripts/smack-my-bitch-up.sh >> /path/to/smack-my-bitch-up.log 2>&1
# تشغيل `hangover.sh` من الاثنين إلى الجمعة الساعة 8:45 صباحًا.
45 8 * * 1-5 /path/to/scripts/hangover.sh >> /path/to/hangover.log 2>&1
# تشغيل `kumar-asshole.sh` كل 10 دقائق.
*/10 * * * * /path/to/scripts/kumar-asshole.sh
# تشغيل `fucking-coffee.sh` كل ساعة من 9 صباحًا إلى 6 مساءً في أيام الأسبوع.
0 9-18 * * 1-5 /path/to/scripts/fucking-coffee.sh
تم إصدار الكود تحت رخصة WTFPL.