wttr.in: ابزاری اپن‌سورس جهت مشاهدهٔ گزارش هواشناسی در ترمینال


ترمینال در سیستم‌عامل‌های مبتنی بر یونیکس مثل مکینتاش و گنو/لینوکس قابلیت‌های فراوانی دارا است و دولوپرهای این‌گونه سیستم‌عامل‌ها ابزارهای زیادی برای اجرا در محیط ترمینال می‌نویسند که در این پست قصد داریم یکی از آن‌هایی که برای آگاهی از وضعیت آب و هوا توسعه داده شده را معرفی کنیم.

اولین کسی باشید که به این سؤال پاسخ می‌دهید

wttr.in سایتی است که به طور مستقیم می‌توانید پس از ورود به آن به وضعیت آب و هوای محل جغرافیایی مد نظر خود دست یابید اما در عین حال از طریق  ترمینال نیز می‌توانید این کار را انجام دهید بدین صورت که وارد ترمینال سیستم‌عامل خود شده و دستور زیر را تایپ کنید: 

$ curl wttr.in

به محض اینکه دستور فوق را وارد کردید، پیش‌بینی وضعیت آب و هوای کل هفته در صفحهٔ ترمینال‌ ظاهر می‌شود:

Weather report: Nuremberg, Germany

     \   /     Sunny
      .-.      16 °C          
   ― (   ) ―   ← 13 km/h      
      `-’      10 km          
     /   \     0.0 mm         
                                                       ┌─────────────┐                                                       
┌──────────────────────────────┬───────────────────────┤  Tue 06 Nov ├───────────────────────┬──────────────────────────────┐
│            Morning           │             Noon      └──────┬──────┘     Evening           │             Night            │
├──────────────────────────────┼──────────────────────────────┼──────────────────────────────┼──────────────────────────────┤
│    \  /       Partly cloudy  │    \  /       Partly cloudy  │    \  /       Partly cloudy  │    \  /       Partly cloudy  │
│  _ /"".-.     10-11 °C       │  _ /"".-.     15-16 °C       │  _ /"".-.     12-13 °C       │  _ /"".-.     11 °C          │
│    \_(   ).   ← 11-17 km/h   │    \_(   ).   ← 13-16 km/h   │    \_(   ).   ← 10-20 km/h   │    \_(   ).   ↑ 6-13 km/h    │
│    /(___(__)  20 km          │    /(___(__)  20 km          │    /(___(__)  20 km          │    /(___(__)  20 km          │
│               0.0 mm | 0%    │               0.0 mm | 0%    │               0.0 mm | 0%    │               0.0 mm | 0%    │
└──────────────────────────────┴──────────────────────────────┴──────────────────────────────┴──────────────────────────────┘
                                                       ┌─────────────┐                                                       
┌──────────────────────────────┬───────────────────────┤  Wed 07 Nov ├───────────────────────┬──────────────────────────────┐
│            Morning           │             Noon      └──────┬──────┘     Evening           │             Night            │
├──────────────────────────────┼──────────────────────────────┼──────────────────────────────┼──────────────────────────────┤
│    \  /       Partly cloudy  │    \  /       Partly cloudy  │    \  /       Partly cloudy  │    \  /       Partly cloudy  │
│  _ /"".-.     11 °C          │  _ /"".-.     15 °C          │  _ /"".-.     12 °C          │  _ /"".-.     10 °C          │
│    \_(   ).   ↖ 3-5 km/h     │    \_(   ).   ← 3-4 km/h     │    \_(   ).   ↖ 4-6 km/h     │    \_(   ).   ↑ 3-5 km/h     │
│    /(___(__)  20 km          │    /(___(__)  20 km          │    /(___(__)  20 km          │    /(___(__)  20 km          │
│               0.0 mm | 0%    │               0.0 mm | 0%    │               0.0 mm | 0%    │               0.0 mm | 0%    │
└──────────────────────────────┴──────────────────────────────┴──────────────────────────────┴──────────────────────────────┘
                                                       ┌─────────────┐                                                       
┌──────────────────────────────┬───────────────────────┤  Thu 08 Nov ├───────────────────────┬──────────────────────────────┐
│            Morning           │             Noon      └──────┬──────┘     Evening           │             Night            │
├──────────────────────────────┼──────────────────────────────┼──────────────────────────────┼──────────────────────────────┤
│  _`/"".-.     Patchy light d…│  _`/"".-.     Patchy light d…│      .-.      Patchy light r…│      .-.      Light rain     │
│   ,\_(   ).   10 °C          │   ,\_(   ).   10 °C          │     (   ).    9 °C           │     (   ).    8 °C           │
│    /(___(__)  → 4-6 km/h     │    /(___(__)  ↖ 3 km/h       │    (___(__)   ↓ 4-7 km/h     │    (___(__)   ↙ 4-8 km/h     │
│      ‘ ‘ ‘ ‘  18 km          │      ‘ ‘ ‘ ‘  18 km          │     ‘ ‘ ‘ ‘   15 km          │     ‘ ‘ ‘ ‘   18 km          │
│     ‘ ‘ ‘ ‘   0.3 mm | 81%   │     ‘ ‘ ‘ ‘   1.8 mm | 72%   │    ‘ ‘ ‘ ‘    1.2 mm | 83%   │    ‘ ‘ ‘ ‘    0.4 mm | 29%   │
└──────────────────────────────┴──────────────────────────────┴──────────────────────────────┴──────────────────────────────┘

Follow @igor_chubin for wttr.in updates

علاوه بر نام شهرها، می‌توانید کدهای سه حرفی فرودگاه‌ها و حتی نام سایت‌های مختلف را با پیشوند @ وارد کنید تا وضعیت آب و هوای مربوط به محل قرارگیری سرور سایت مذکور را برای شما نمایش دهد:

$ curl wttr.in/@github.com

همچنین جهت مشاهدهٔ راهنمای استفاده از این سرویس هم می‌توانید دستور زیر را مورد استفاده قرار دهید:

$ curl -4 http://wttr.in/:help

curl چیست؟
به طور خلاصه، cURL که به صورت کِرل تلفظ می‌شود، مخفف واژگان Client for URLs است که در سال 1997 به بازار عرضه شد که با نصب آن ابزاری کامندلاین به علاوهٔ یک لایبرری غنی از ماژول‌های مختلفی روی سیستم‌عامل شما نصب می‌گردد که با استفاده از آن‌ها قادر خواهید بود تا پروتوکل‌های مختلفی همچون HTTP ،SMTP ،HTTPS را در محیط ترمینال مورد استفاده قرار دهید.