۱۳۸۹ شهریور ۸, دوشنبه

ترفند 5 » رنگ آمیزی خط فرمان لینوکس

در پست قبلی در مورد تاکید خط فرمان لینوکس بر رنگی بودن گفتم و نحوه رنگ آمیزی دستور grep را نوشتم. این بار جالبتر است!
دوست دارید رنگ سطری که دستور را در آن می‌نویسید با بقیه ترمینال متفاوت باشد؟
این کار چند فایده دارد:
اول) وقتی دستوری مثل cat یا grep خروجی زیادی تولیدی می‌کند، خود دستور گم نمی‌شود. راحت معلوم است که ابتدای خروجی کجاست و آخرش کجا.
دوم) با کمی سلیفه می‌توانید کاری کنید که حالت‌های مختلف رنگ‌های مختلف داشته باشد: مثلا من برای کاربر عادیم رنگ آبی، برای کاربر root (یا sudo) رنگ قرمز و برای کاربری راه دور (با ssh) رنگ سبز گذاشته‌ام.

روش انجام

کافیست خطوط زیر را در محل مناسبی از فایل .bashrc در شاخه home کاربری‌تان اضافه کنید: (بگردید و آن را بعد از تمام خطوطی که PS1 در آن به کار رفته بگذارید)
#!/bin/bash
promptcolor="2;34"
if [[ $EUID -eq 0 ]]; then
    promptcolor="2;31"
fi
PS1="\[\e[${promptcolor}m\]$PS1\[\e[0m\]"
یادتان باشد که لازم است یکبار دیگر ترمینال را باز کنید تا (.bashrc اجرا شده و) تغییرات را در پنجره جدید ببینید.
عدد 34 رنگ آبی و عدد 31 رنگ قرمز را مشخص می‌کند. (جدول رنگ) عدد 2 هم تاثیراتی بر میزان روشن بودن یا حتی درشت (bold) شدن متن دارد که بهتر است تغییر دهید و ببینید.
شرح کامل اینکه PS1 چیست و معنی این دستورات اجق وجق را در همان لینک جدول رنگ پی بگیرید.

کلمات کلیدی: ،shell ،terminal رنگی، رنگ آمیزی، لینوکس، اسکریپت، ترفند، پوسته، حط فرمان.

۱۳۸۹ شهریور ۷, یکشنبه

ترفند 4 » رنگ آمیزی دستور grep در لینوکس

یکی از تفاوت‌های خط فرمان لینوکس با ویندوز در تاکیدی است که روی رنگارنگ بودن دارد!

grep رنگی

اولین بار به طور اتفاقی با لینوکسی مواجه شدم که هنگام استفاده از grep، عبارات پیدا شده را با رنگ متفاوت نشان می‌داد.
این کار ساده و کم‌شناخته است. کافیست از سوییچ --color=auto استفاده کنید:
grep --color=auto {بقیه خط فرمان}
دوست داشتید؟ خب پس خطوط زیر را به محل مناسبی از فایل .bashrc در شاخه home کاربری‌تان اضافه کنید تا همیشه grep این کار را خودبخود انجام دهد و لازم نباشد هربار سوییچ را تایپ کنید: (این فایل پنهان است و برای دیدنش شاید لازم باشد گزینه نمایش فایل‌های پنهان را فعال کنید Ctrl+H)
alias grep='grep --color=auto'
alias fgrep='fgrep --color=auto'
alias egrep='egrep --color=auto'
با این کار یک alias برای grep و مشتقاتش تعریف کردید تا هر بار آنها را صدا می‌زنید این سوییچ فعال شود.

بروزرسانی: پست بعدی در مورد رنگ آمیزی خط فرمان لینوکس

کلمات کلیدی: shell، terminal، grep، رنگی، رنگ آمیزی، لینوکس، اسکریپت، ترفند، پوسته، حط فرمان.

۱۳۸۹ مرداد ۱۷, یکشنبه

ترفند 3 » تحریم ایران در SourceForge و راه حلی برای دانلود آسان!

برای: هر مرورگر مدرن و هر سیستم‌عاملی
سطح: مبتدیمواد لازم: سی ثانیه وقت!

مدتی است که سایت سورس فورج (Sourceforge.net) ایران را تحریم کرده است. بسیاری از پروژه‌های متن‌باز (opensource) در این سایت توسعه می‌یابند و منبع خوبی برای برنامه‌های رایگان به شمار می‌رود. البته مدیر هر پروژه در سورس فورج می‌تواند انتخاب کند که دسترسی به آن پروژه برای کشورهای تحریم شده مسدود باشد یا خیر.

راه حل

راه ساده دور زدن این تحریم - بدون استفاده از پروکسی و ... - را در زیر می‌خوانید:
  1. این لینک تصحیح SourceForge را بکشید و در نوار Bookmarks مرورگرتون اضافه کنید. (برای اینترنت اکسپلورر کلیک راست و Add to Favorites)
  2. هر وقت خواستید از سورس فورج چیزی دانلود کنید، کافیه قبل از کلیک کردن روی لینک دانلود، این بوک‌مارک رو کلیک کنید تا لینک دانلود رو به صورت مستقیم در بیاره.
  3. این بوک‌مارک بیشتر جاها باید جواب بده. ولی اگر به صفحه اول پروژه در خود سایت سورس فورج، یا صفحه دانلود آن بروید قطعا جواب خواهد داد. :)
  4. گاهی اولین تلاش نتیجه نمی‌دهد و با کلیک روی لینک تصحیح شده پیغام 404 Not Found می‌گیرید. این مشکل به خاطر اینه که گاهی همه سرویس‌دهنده‌های سورس فورج بروز نیستند و فایل را ندارند. در این صورت کافیست یکبار دیگه بوک‌مارک را کلیک کنید تا سرویس‌دهنده دیگری انتخاب بشه.

آزمایش

برای تست به این صفحه بروید. در حالت عادی کلیک روی دکمه Download به صفحه تحریم منجر می‌شود. اما اگر قبل از کلیک کردن روی آن از بوک‌مارک «تصحیح SourceForge» استفاده کنید و سپس دکمه Download را کلیک کنید مستقیما فایل را دریافت خواهید کرد.

این بوک‌مارک با فایرفاکس 3.6 و اینترنت اکسپلورر 8 تست شده است. اگر مشکلی داشتید خبر بدهید.

تاریخچه

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

توضیح بیشتر رو می‌توانید در ادامه مطلب بخوانید: