KDE.org News feed Persian Planet IRC Channel Submit KDE feed
FAQ Policy

برنامه تلویزیونی صفر و یک با موضوع سیستم عامل های متن باز

سلام :)

موضوع دیروز برنامه صفر و یک شبکه آموزش سیما به سیستم عامل های متن باز اختصاص داشت. مهدی حسن پور از فعالان متن باز و نماینده رسمی اوبونتو در ایران من را به عنوان کارشناس به برنامه معرفی کرده بود.

برنامه صفر و یک

برنامه ‌آموزشی صفر ویک کاری از شبکه ۷ سیما است .
این برنامه آموزشی به صورت زنده هر روز به آموزش دنیای علوم رایانه می پردازد .
برنامه صفر و یک به تهیه کنندگی مجید یوسفی هر روز از ساعت ۱۸ با موضوع های آموزشی مختلف در زمینه رایانه روی آنتن می رود .
گفتنی است این آموزش ها به ترتیب روزهای هفته :‌مشاغل کارآفرینی از طریق رایانه ، هکر ها ،‌علوم کامپیوتر دنیای سخت افزار و نرم افزار و راهکارهای مقابله با مفهوم هکرها است .

از اینکه صدا و سیما بعد از مدت ها بحثی را در زمینه گنو لینوکس آغاز کرده خیلی خوشحالم. در طول ۴۵ دقیقه که به نظر من خیلی کم بود، سعی کردم مفاهیم اصلی و پایه ای گنو/لینوکس را توضیح بدهم.  قرار شد هفته آینده نیز موضوع سیستم عامل های متن باز و آزاد ادامه پیدا کند.

به درخواست دوستان فیلم برنامه که حدود ۴۵ دقیقه است را آپلود کردم.

من حدود ۲۵ اسلاید را برای ارائه آماده کرده بودم که شامل بسیاری از مباحث گنو/لینوکس میشد که متاسفانه بدلیل کمبود وقت فرصت ارائه آن ها را پیدا نکردم. امیدوارم که اگر فرصت دوباره ای پیدا کردم، بحث های مهم تر مانند امنیت، افکت های تصویری و مهاجرت از ویندوز را بیشتر توضیح بدهم.

لینک های مرتبط با برنامه دیروز

پی نوشت

  • فعلا اسلاید مربوط به برنامه رو آپلود نکردم ولی بزودی اون رو هم آپلود می کنم.
  • در آخر ازتون می خوام که انتقادات و پیشنهاداتتون رو بگید. مطمئنا تا وقتی این انتقادات و پیشنهادات نباشه، امکان پیشرفت واقعی هم وجود نداره ;)
  • سرورهای سایت اوبونتو ایران خراب شدن. این هم از شانس بده اوبونتو کاران

از همه دوستانی برام آرزوی موفقیت کرده بودند، خیلی تشکر می کنم 8)
شاد و موفق باشید

Share/Bookmark

سعید زبردست یکشنبه , ۱۴ شهریور , ۱۳۸۹ http://zebardast.ir

خزنده وب (Web Crawler)

سلام :)

مطلب امروز ضمن آشنا کردن شما با Web crawler و معماری آن، سورس خزنده وب ساده ای به زبان جاوا را ارائه می دهد.

خزنده وب که بیشتر ما آن را با عنوان Web crawler می شناسیم به برنامه کامپیوتری اطلاق می شود که World Wide Web (وب جهان گستر) را به صورت مرتب و سلسله مراتبی بازدید کرده و اطلاعات آن را مورد پردازش قرار می دهد. از Web crawler ها با عناوین دیگری مانند ants, automatic indexers, bots, Web spiders و Web robots نیز یاد می شود.

کاربرد ها

۱- موتورهای جستجو

موتورهای جستجو و برخی از سایت ها دارای خزنده ها ویا روبات هایی هستند که برای گردآوری اطلاعات وب سایت ها و نیز بروز نگه داشتن اطلاعات مورد استفاده قرار می گیرند. مهم ترین کار بعد از گردآوری اطلاعات، ایندکس کردن آن ها برای پردازش سریع هنگام جستجو است. این خزنده ها معمولا در بازه های زمانی منظمی اطلاعات را بروز کرده و با نسخه های قبلی مقایسه می کنند.

۲- مدیریت فنی وب سایت

مدیریت فنی وب سایت بخشی از کار این خزنده هاست که شامل یافتن لینک های شکسته (Broken Link) ، اعتبار سنجی (Validation) کدهای HTML، فایل های CSS و … می باشد.

۳- جمع آوری اطلاعات خاص

کاربرد دیگر خزنده های  وب جمع آوری اطلاعات خاصی مانند آدرس های ایمیل است. معمولا هدف از اینکار ارسال هرزنامه (spam) می باشد. برای جلوگیری از ثبت آدرس ایمیل توسط این خزنده ها، می توانید آدرس ایمیل خود را به صورت saeidREMOVEME AT جیمیل و یا موارد مشابه دیگر بنویسید.

نحوه کار

به صورت عمومی نحوه کار Web crawler ها به این صورت است که ابتدا لیستی از URL ها (آدرس های وب) که به عنوان seed شناخته می شوند را برای بازدید پردازش می کنند. هنگام پردازش این آدرس ها، لیست لینک ها و آدرس های موجود در صفحات آن ها را گردآوری کرده و به لیست ابتدایی اضافه می کنند. بقیه اطلاعات را نیز با توجه به نیاز و هدف خود ذخیره  و پردازش می نمایند.

معماری خزنده وب

خزنده وب بخش اصلی و مرکزی هر موتور جستجویی را تشکیل می دهد. به همین جهت الگوریتم و معماری آن ها به شدت مخفی نگه داشته می شود. با این وجود معماری سطح بالای (High-level architecture) آن به شکل زیر می باشد:

معماری سطح بالای یک خزنده وب استاندارد (عکس از ویکی پدیا)

عادی کردن آدرس (URL normalization)

منظور از عادی کردن آدرس، یکی کردن آدرس هایی می باشد که دارای خروجی یکسانی هستند. هدف از این کار جلوگیری از جمع آوری اطلاعات یکسان از چندین URL می باشد. URL normalization با نام URL canonicalization نیز شناخته می شود که همان فرآیند تغییر آدرس برای استاندارد شدن می باشد.

مراحل فرایند عادی کردن آدرس

• تبدیل آدرس به حروف کوچک

HTTP://www.Example.com/ → http://www.example.com/

• افزودن / به آدرس در صورت نیاز

http://www.example.com → http://www.example.com/

• حذف آدرس ایندکس دایرکتوری

http://www.example.com/default.asp → http://www.example.com/
http://www.example.com/a/index.html → http://www.example.com/a/

• بزرگ کردن حروف encode شده یا همان حروف بعد از علامت ٪

http://www.example.com/a%c2%b1b → http://www.example.com/a%C2%B1b

• حذف بخش زاید

http://www.example.com/bar.html#section1 → http://www.example.com/bar.html

• حذف و تبدیل آی پی به دامنه

http://208.77.188.166/ → http://www.example.com/

• اعمال محدودیت بر روی پروتکل ها مانند تبدیل https به http

https://www.example.com/ → http://www.example.com/

• حذف پورت پیش فرض (پورت ۸۰ به صورت پیش فرض برای http می باشد)

http://www.example.com:80/bar.html → http://www.example.com/bar.html

• حذف / های تکراری

http://www.example.com:80/bar.html → http://www.example.com/bar.html

• حذف . ها (dot-segments)

http://www.example.com/../a/b/../c/./d.html → http://www.example.com/a/c/d.html

• حذف www از اول دامنه

http://www.example.com/ → http://example.com/

• مرتب کردن متغییرهای صفحه فعال

http://www.example.com/display?lang=en&article=fred
 → http://www.example.com/display?article=fred〈=en

• حذف متغییرهای اختیاری از query-string

http://www.example.com/display?id=123&fakefoo=fakebar
 → http://www.example.com/display?id=123

• حذف متغییرهای پیش فرض از query-string

http://www.example.com/display?id=&sort=ascending
 → http://www.example.com/display

• حذف علامت ? هنگامی که query-string خالی باشد

http://www.example.com/display? → http://www.example.com/display

• استانداردکردن encoding کاراکترها

http://www.example.com/display?category=foo/bar+baz
 → http://www.example.com/display?category=foo%2Fbar%20baz

شناسایی خزنده وب

خزنده های وب معمولا با استفاده از فیلد User-agent داده HTTP request خود را معرفی می کنند. شما با استفاده از لاگ وب سرور خود می توانید لیست این Web crawler های را مشاهده کنید. فیلد User agent ممکن است شامل URL ای باشد که به سایت سازنده خزنده اشاره می کند.

Spambot ها و سایر خزنده های مخرب معمولا فیلد User agent را به صورت غیر واقعی با اطلاعاتی مانند نام یک مرورگر پر می کنند.

فایل robots.txt

این فایل برای دادن اطلاعات اولیه در زمینه وب سایت مورد پردازش به خزنده های وب استفاده می گردد. به عنوان مثال با این فایل می توانید دسترسی خزنده های وب به بعضی زیر شاخه ها محدود کنید. دستورات زیر در فایل robots.txt از دسترسی خزنده ها به دایرکتوری /tmp/ جلوگیری می کند:

User-agent: *
Disallow: /tmp/

* فایل robots.txt یک استاندارد می باشد. به همین جهت خزنده وب (معمولا خزنده مخرب) می تواند آن را نادیده بگیرد.

معروف ترین خزنده های وب

در زیر لیست معروف ترین خزنده های وب را مشاهده می کنید:

معروف ترین خزنده های متن باز

سورس خزنده وب به زبان جاوا

سایت sun در سال ۱۹۹۸ مقاله ای آموزشی با عنوان “Writing a Web Crawler in the Java Programming Language” را ارائه داد. در آن مقاله ضمن توضیح دادن Web crawler سورس برنامه آن نیز در اختیار عموم قرار گرفت. البته این برنامه خیلی ساده و در مرحله ابتدایی می باشد. شما باید با توجه به نیازهای خود آن را تغییر داده و مورد استفاده قرار دهید.

• دانلود سورس خزنده وب به زبان جاوا (لینک کمکی)

کاربرد خزنده وب برای من

برای سایت هایی که از نرم افزار های آماده مثل وردپرس استفاده نشده است و نیاز به موتور جستجو احساس می شد، با استفاده از خزنده ای که نوشتم، اطلاعات کل وب سایت مورد نظر را در داخل یک جدول در پایگاه داده ذخیره کردم. سپس توابعی برای جستجو بهینه بر روی داده ها در MySQL نوشتم و با استفاده از آن ها بخش جستجوی وب سایت مورد نظر را راه اندازی کردم. نمونه این جستجو ها در سایت های زیر فعال می باشد:

• داتک تله کام

• ارتباطات فرادانش سامان

منابع

موفق باشید ;)

Share/Bookmark

سعید زبردست یکشنبه , ۶ تیر , ۱۳۸۹ http://zebardast.ir

تجربه سفر به استانبول

سلام :)

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

معرفی استانبول

استانبول

به نقل از ویکی پدیا:

استانبول بزرگ‌ترین شهر کشور ترکیه و مرکز فرهنگی و اقتصادی آن است. این شهر در کنار تنگه بسفر و دریای مرمره قرار دارد. تنگه بسفر دو قاره آسیا و اروپا را جدا می‌کند و استانبول تنها شهر بزرگ جهان است که در دو قاره قرار دارد. بندر طبیعی شاخ طلایی یا خلیج در این شهر واقع است.
این کلان شهر به عنوان شهر فرهنگی اروپا برای سال ۲۰۱۰ انتخاب شده‌است.

شروع مسافرت

برای سفر پیشنهاد می کنم که از تورهای مسافرتی استفاده کنید. اینکار باعث کاهش چشمگیر هزینه هتل و بلیط هواپیما می شود. در صورت تهیه بلیط از قبل اطمینان پیدا کنید که فرودگاه مقصد در ترکیه آتاتورک باشد. فرودگاه سابیحا تا بخش اروپایی حدود ۱ ساعت فاصله دارد. در صورت امکان بلیط هواپیما را از شرکت های غیر ایرانی تهیه کنید.

بیشتر مراکز تاریخی و دیدنی استانبول در بخش اروپایی آن قرار دارند.

هنگام رزرو هتل دقت کنید که هتل در یکی از دو منطقه آکسارای یا تکسیم باشد. منطقه آکسارای به مراکز تاریخی و منطقه تکسیم به مراکز خرید نزدیک هستند. البته رفت و آمد در شهر خیلی ساده تر از این حرف هاست. در ادامه در مورد آن توضیح می دهم.

پیدا کردن یک آشنا یا دوست در استانبول

CouchSurfing

سایت couchsurfing.com را می شناسید؟ مطمئنا بیشتر اهالی سفر با این سایت آشنا هستند. به طور خلاصه couchsurfing یک جامعه مجازی برای اهالی سفر است. اگر قصد سفر به شهر یا کشوری را دارید، می توانید قبل از سفر دوست یا دوستانی را از طریق این سایت بیابید. برای اطلاعات بیشتر به لینک های زیر مراجعه کنید:
بیائید تا به کمک هم جهانی بهتر بسازیم!
پروژه کُوچ سِرفینگ

من از طریق این سایت با ceyda و دوستانش در استانبول آشنا شدم. آنها در روز اول ما را به شما مهمان کردند و بعد برای ۲ روز بعدی با هم برنامه ریزی کردیم. در طول مدتی که با ceyda و دوستانش بودیم  در مورد ایران، ترکیه، فوتبال، موسیقی، فیلم و حتی کشتی های ارسالی ایران به غزه صبحت کردیم. آنها به خوبی احمدی نژاد و موسوی را می شناختند. یکی از دوستان ceyda فیلم “کسی از گربه های ایرانی خبر نداره” را دیده بود و در مورد موسیقی فیلم صبحت می کرد. دوست دیگر ceyda که فرانسوی بود در مورد کلوتیلد ریس صبحت می کرد.

پیشنهاد می کنم قبل از سفر به هرجایی یک آشنا از طریق couchsurfing در آنجا پیدا کنید. داشتن یک آشنا در آنجا خیلی به شما کمک می کند.

شهر

استانبول بدلیل اینکه گردشگران بسیاری به آن سفر می کنند به سرعت در حال پیشرفت می باشد.

استانبول

این شهر مانند بسیاری از شهرهای موفق توریستی دارای آرامش خاصی بود. تعداد زیادی پرچم ترکیه در سراسر استانبول وجود داشت. تقریبا تمامی میدان ها و ساختمان های دولتی و خیابان ها پرچم ترکیه را بر افراشته اند.

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

محیط استانبول. مراکز خرید و مردم آن خیلی شبیه به تهران خودمان است. فقط دو فرق اساسی دارد:

۱- ترافیک

در طول مدتی که در استانبول بودیم خبری از ترافیک نبود. وجود حمل و نقل خیلی خوب شهری، هزینه زیاد بنزین و زیرساخت های اداری و اجرایی آن مهم ترین دلیل برای نبود ترافیک در آن بود.

۲- وضعیت فرهنگی

در استانبول کسی با کسی کاری نداشت. کسی در مورد نحوه پوشش مردم صبحت نمی کرد و بیشتر مردم به خود مشغول بودند. شما می توانید وارد فروشگاه، رستوران، کافی شاپ و… شده، عکس بگیرید و خارج شوید.

سگ ها در خیابان های استانبول

پرندگان در استانول

حیوانات در کنار انسان ها در شهر قدم هستند. سگ ها در سایه استراحت می کنند و کسی به آنها شلیک نمی کند.

شهروندان

پوشش مردان ترک خیلی شبیه مردان ایرانی هست. در مورد زن ها این قضیه فرق می کند. ظاهر زنان مسلمان آنجا با اینجا کاملا متفاوت است. در مورد زنان غیر مسلمان هم که نمی توان مقایسه ای انجام داد. تنوع رنگ، لباس و نحوه پوشش مردم به خیابان ها جان داده بود و از یکنواختی خیابان های ما در آنجا خبری نبود.

بیشتر شهروندان جوان و فروشندان می توانند به انگلیسی صبحت کنند. البته اگر ترک آذری باشید ارتباط برقرار کردن با آنها خیلی ساده تر می شود. بیشتر واژه های آن ها با ترکی خودمان یکی است فقط نحوه تلفظ آن ها متفاوت است.

برخورد آن ها با ایرانیان و در حالت کلی با گردشگران بسیار خوب است. برای آنها فرقی نمی کرد که شما از ایران باشید یا اروپا. در هر صورت آن ها به شما خوش آمد می گویند.

پلیس های سطح شهر که با موتور در حال گشت هستند بیشتر شبیه به بازیگران در حال ضبط فیلم می باشند تا پلیس. مردان و زنان پلیس با لباس های اوتو کرده و تمیز در حال گشت زنی هستند. مردان پلیس با صورت های اصلاح کرده و زنان پلیس با موهای شانه شده با پلیس ها و سربازهای خیابان های ما خیلی فرق می کنند.

کسانی که اهل سیاست هستند در اولین برخورد با شما اولین کلمه بعد از اینکه می فهمند از ایران هستید کلمه احمدی نژاد یا موسوی است. این کلمات نشاندهنده جبهه سیاسی آنان در قبال سیاست خارجی ایران است.

مردم در استانبول

توریست ها

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

خوراکی ها

چای ترکی

تلخ ترین چایی که در تمام عمرم خوردم مربوط به این سفر بود. برخلاف ایرانی ها که چای را دم می کنند، آن ها چای را جوش می آورند. بعضی از آن ها هم چای را سرد سرو می کنند.

در خیابان های استانبول بیشتر از فروشگاه های لباس و صنایع دستی، رستوران و کافی شاپ وجود دارد. غذا های مشترکی با ایرانیان دارند. اکثر رستوران ها میز های غذای خود را در خیابان قرار داده اند. بیشتر رستوران ها هنگام پخش فوتبال های جام جهانی تلویزیون های LCD خود را برای مشتریان روشن می کنند.

بیشتر غذاهای آن ها با گوشت است. آخرین شام “İskender kebap” خوردیم که واقعا خوشمزه و معرکه بود.

نمایی از یک غذاخوری در استانبول

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

میوه فروشی در استانبول

ذرت (بلال) را مستقیم با حرارت نمی پختند بلکه آن را آب پز می کردند. به جای آب نمک هم از نمک خالی استفاده می کردند. ذرت های خودمان خیلی خوشمزه تر آن ها بود.

بازارها

استانبول بازارها و مراکز خرید بسیاری داشت. معروف ترین این بازارها Grand Bazaar و Spice Bazaar است. البته به توصیه ceyda و دوستانش ما از Grand Bazaar خرید نکردیم و خرید خود را از فروشگاه های موجود در اطراف و در طول مسیر تا Grand Bazaar انجام دادیم. بعد از رسیدن به گرند بازار و مشاهده قیمت های چند برابر آن متوجه توصیه ceyda و دوستانش شدیم.

بازار سنتی استانبول

دو نکته در مورد بازاری که رفتیم وجود دارد که واقعا مرا تحت تاثیر قرار داد. اول اینکه همه مغازه ها بین ۶ تا ۶:۳۰ بعد از ظهر تعطیل می کردند و  بعد از تعطیل کردن مغازه خود شروع به نظافت داخل و بیرون مغازه می کردند. میوه فروش ها، ماهی فروش ها و مغازه های لبنیاتی اطراف و محل قرار گیری اجناس خود را می شستند. دو م  اینکه بعد از تعطیلی مغازه های اصلی شروع به دست فروش ها می رسید. دست فروش ها بازار خود را درست جلوی مغازه هایی که اکنون بسته شده بودند به راه می انداختند. در دو روزی که به بازار رفتیم این دو نکته تکرار شدند.

حمل و نقل عمومی و رفت و آمد در شهر

برای رفت و آمد و گشت و گذار در شهر می توانید از اتوبوس، Tramway و تاکسی استفاده کنید. ما در طول مدتی که در استانبول بودیم از اتوبوس و ترم وای استفاده کردیم. همه کسانی که در مورد استانبول با آن ها صبحت کردیم به ما توصیه کردند که از تاکسی استفاده نکنیم. به گفته آن ها نرخ تاکسی بخصوص برای توریست ها خیلی گران است.

البته بدون استفاده از تاکسی ما به هر جایی که می خواستیم رفتیم. ترم وای و اتوبوس برای همه مسیر ها وجود داشت.

جزایر اطراف استانبول (Princes’ Islands)

جزیره ای در استانبول

در اطراف استانبول چندین جزیره وجود دارد که در بین مردم بومی و گردشگران به Adalar معروف هستند. شما می توانید با استفاده از کشتی هایی که روزانه چندین بار به این جزایر رف و آمد می کنند به یکی از آنها بروید. ما به جزیره چهارم که به گفته خود آن ها بزرگترین جزیره و زیباترین آن ها بود رفتیم. در بدو ورود متوجه شدیم که این جزیره ساحل شنی ندارد و دور تا دور آن ساحل صخره ای کشیده شده است. بلیط رفت و برگشت به جزایر به پول ایران حدود ۸ هزار تومان بود. مدت زمان سفر هم بین  ۱ تا ۱:۳۰ ساعت با توجه به جزیره مقصد متفاوت بود.

صبحت پایانی

در صورتی که قصد سفر به استانبول دارید با توجه به وسعت جاذبه های گردشگری حداقل ۱ هفته در نظر بگیرید.

موفق باشید

Share/Bookmark

سعید زبردست سه شنبه , ۱ تیر , ۱۳۸۹ http://zebardast.ir

انتقال اطلاعات در MySQL

سلام :)

یکی از مراحل انتقال اطلاعات یک پروژه مربوط به انتقال پایگاه های داده می باشد. برای اینکار روش های مختلفی وجود دارد ولی همه آنها ۲ مرحله مشابه دارند، Import و Export کردن. مرحله export کردن را می توان به عنوان درست کردن نسخه پشتیبان نیز در نظر گرفت.
با فرض اینکه پایگاه داده مورد استفاده MySQL می باشد، می توانید از دستورات زیر استفاده کنید:

Export

دستور mysqldump برای گرفتن خروجی از پایگاه داده استفاده می شود. به عنوان مثال:

$ mysqldump -umy_user -p -R my_database > export.sql

دستور بالا محتویات پایگاه داده my_database به همراه روتین های آن (پارامتر R) را در فایل export.sql ذخیره می کند.
در صورتی که پایگاه داده شما بر روی سرور قرار دارد می توانید با استفاده از پارامتر h و کاربر خودتان بر روی سرور مستقیم و بدون نیاز به ftp و ssh نسخه پشتیبان تهیه کنید:

$ mysqldump -umy_server_user -p -hserver_host -R my_database > export.sql

Import

برای وارد کردن اطلاعات از دستور mysql استفاده می کنیم:

$ mysql -umy_user -p my_database < export.sql

* به جهت علامت > توجه کنید.

ترکیب کردن Export و Import

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

$ mysqldump -umy_user_1 -pmy_pass_1 -R my_database \
 | mysql -umy_user_2 -pmy_pass_2 my_database

*حداقل یکی از رمز عبورهای بالا (my_pass_1 یا my_pass_2) را باید وارد کنید.
البته Import کردن مستقیم از دستور Export خیلی جالب نیست. این دستور بیشتر زمانی کاربرد دارد که بخواهید یکی از جدول های پایگاه داده خود را بروز رسانی کنید:

$ mysqldump -umy_user -pmy_pass_1 -R my_database my_table \
 | mysql -umy_user -pmy_pass_2  my_database

دستور بالا ساختار و محتویات جدول my_table را بروزرسانی می کنید.

کاربرد دیگر ترکیب کردن Export و Import تهیه نسخه کاملا مشابه از پایگاه داده می باشد. دستورات زیر یک نسخه کاملا مشابه از پایگاه داده my_database با نام my_database_2 بر روی پایگاه داده ایجاد می کنید:

$ mysqladmin -umy_user -p create my_database_2
$ mysqldump -umy_user_1 -pmy_pass_1 -R my_database \
 | mysql -umy_user_2 -pmy_pass_2  my_database_2

برای اطلاعات بیشتر به لینک های زیر مراجعه کنید:

موفق باشید

Share/Bookmark

سعید زبردست شنبه , ۱۵ خرداد , ۱۳۸۹ http://zebardast.ir

تجربیات من از ۳ سیستم عامل ویندوز، لینوکس و مک

سلام :)

بعد از مدتی کار کردن با سیستم عامل های مختلف و در آخر با Mac OS X 10.6، تصمیم گرفتم که تجربه شخصی ام را بعد از استفاده از انواع مختلف سه سیستم عامل ویندوز، لینوکس و مک در وبلاگ قرار دهم.

ویندوز

ویندوز

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

ویندوز مزایایی نیز داشت که مهمترین آنها برای من موارد زیر می باشند:

  • کاربرپسند بودن
  • وجود ابزار های بسیار و متنوع
  • وجود بازی های مختلف و زیبا :D
  • در دسترس و عمومی بودن
  • وجود درایورهای سخت افزاری و پشتیبانی از بیشتر سخت افزارها

لینوکس

گنو/لینوکس

لینوکس (اوبونتو، آرچ، دبیان، فدورا و…) مورد اطمینان ترین سیستم عاملی است که تقریبا پاسخ گوی همه نیاز های من می باشد. مزایای بسیاری دارد. مهمترین مزیت آن آزاد بودن است. شما هر تغییری که نیاز دارید، بر روی آن انجام می دهید. خط فرمان بسیار قوی آن واقعا مشکلات بسیاری را برای من حل کرده است.

البته ایراداتی نیز دارد. مهم ترین ایراد آن نبود ابزارهای گرافیکی برای انجام کارهای مختلف و یا ضعیف بودن ابزارهای موجود است. وجود باگ های مختلف در ابزارهای گرافیکی نیز باعث عدم کارایی لازم آنها می شود. مشکل جستجو و دستیابی به اطلاعات نیز نسبت به ویندوز (۷) و به خصوص نسبت به مک واقعا ضعیف است. از طرف دیگر محیط های گرافیکی موجود مانند گنوم یا کی دی ای واقعا User Friendly (کاربرپسند) نیستند. منظور من افکت های تصویری نیست! رنگ بندی، نحوه چیدمان دسکتاپ و… نسبت و ویندوز و مک ضعیف ترند.

مک

این سیستم عامل واقعا قدرتمند و زیبا اکنون سیستم عامل اصلی مورد استفاده من می باشد.باگ خیلی کم دارد، به جزییات بسیار بسیار دقت کرده و ابزارهای

مک

گرافیکی فوق العاده قوی ای را در برگرفته است. مک قدرت خود را از یونیکس گرفته است و همین موضوع باعث شده است تا همه نیازهای لینوکسی من را بر طرف کند.

مک نیز مشکلاتی دارد. مثلا خیلی وقت ها شما مجبورید برای انجام دادن کارها از ماوس استفاده کنید در حالی که در ویندوز و لینوکس بسیاری از کارها براحتی با کیبورد قابل انجام می باشند. از طرفی Shortcut های مک بعضی اوقات واقعا سخت هستند. البته بعد از مدتی عادت می کنید :)

عیب دیگر آن گران بودن سخت افزارهای اپل می باشد که البته با نصب مک بر روی سیستم های x86 می توان حل کرد.

و در آخر مک برای من آن قدر مزایا دارد که بتوانم از ایرادات آن چشم پوشی کنم.

دسته بندی سیستم عامل ها و استفاده کنندگان

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

  • برنامه نویسان
    1. مک
    2. لینوکس
    3. ویندوز
  • طراحان و گرافیست ها
    1. مک
    2. ویندوز
    3. لینوکس
  • علاقمندان به بازی های کامپیوتری
    1. ویندوز
    2. مک
    3. لینوکس
  • سیستم های نسبتا قدیمی و ضعیف تر
    1. لینوکس
    2. ویندوز
    3. مک
  • سرورها
    1. لینوکس
    2. ویندوز
    3. مک
  • سایر استفاده کنندگان عمومی دسکتاپ
    1. مک
    2. ویندوز
    3. لینوکس

پیوند ها

پی نوشت

بزودی تجربیات بیشتر خود را در مورد مک می نوسیم.

بروزرسانی
مک اونقدرها هم که فکر می کردم نتونست من رو راضی کنه. برگشتم به دنیای زیبای گنو/لینوکس :)
موفق و شاد باشید :)

Share/Bookmark

سعید زبردست پنجشنبه , ۶ خرداد , ۱۳۸۹ http://zebardast.ir

نصب Sun JDK 5 بر روی اوبونتو ۹.۱۰ و ۱۰.۰۴

سلام

بسته   Sun JDK نسخه ۱.۵ یا همان ۵ از مخازن اوبونتو ۹.۱۰ و ۱۰.۴ حذف شده و نسخه ۶ آن جایگزین شده است.

ساده ترین راه برای نصب نسخه Sun JDK 5 افزودن مخازن مربوط به آن در اوبونتو ۹.۰۴ به لیست مخازن ۹.۱۰ و ۱۰.۰۴ می باشد. برای این منظور مراحل زیر را دنبال کنید.

۱- فایل /etc/apt/sources.list را با یک ویرایش گر متن مانند gedit باز کنید:

sudo gedit /etc/apt/sources.list

۲- خطوط زیر را به آخر فایل اضافه کرده و بعد از ذخیره سازی آن را ببندید:

## for sun-java5-jdk
deb http://ir.archive.ubuntu.com/ubuntu jaunty-updates main multiverse

۳- لیست بسته ها را بروز کرده و sun-java5-jdk را نصب کنید:

sudo aptitude update
sudo aptitude install sun-java5-jdk

* روش بالا می توانید برای نرم افزارهای دیگر نیز بکار برید.

روش دیگر برای نصب jdk 5 دانلود کردن بسته ی نرم افزاری و وابسته های آن از سایت packages.ubuntu.com می باشد.

موفق باشید

Share/Bookmark

سعید زبردست جمعه , ۱۰ اردیبهشت , ۱۳۸۹ http://zebardast.ir

آشنایی با دستور netstat

سلام :)

netstat خلاصه network statistics، ابزاری خط فرمانی می باشد که به منظور نمایش اطلاعات متنوع در زمینه شبکه مانند اتصالات، جدول routing (جداول هدایت کردن بسته‌ها ) و… را در اختیار قرار می دهد.
این ابزار برای پیدا کردن مشکلات در شبکه و برآوردگر حجم اطلاعات رد و بدل شده در شبکه به عنوان یک اندازه‌گیر عملکرد استفاده می شود.

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

نمایش اطلاعات پورت ها

نمایش تمامی پورت ها
# netstat -a | more
نمایش تمامی پورت های tcp
# netstat -at
نمایش پورت های udp
# netstat -au

نمایش سوکت (Socket) هایی که در وضعیت Listen هستند

لیست پورت هایی که در وضعیت listen هستند
# netstat -l
لیست پورت های tcp که در وضعیت listen هستند
# netstat -lt
لیست پورت های udp که در وضعیت listen هستند
# netstat -lu
لیست پورت های UNIX که در وضعیت listen هستند
# netstat -lx

نمایش آمار برای هر پروتکل

نمایش آمار برای تمامی پورت ها
# netstat -s
نمایش آمار برای پورت های TCP
# netstat -st
نمایش آمار برای پورت های UDP
# netstat -su

نمایش PID و نام برنامه با استفاده از پارامتر -p

پارامتر -p را می تواند با هر یک از موارد بالا ترکیب کرد. این دستور PID و نام برنامه مربوطه را در خروجی netstat چاپ می کند.

# netstat -pt

عدم نمایش نام هاست

برای نمایش آی پی هاست به جای نام آن می توانید از پارامتر -n استفاده نمایید. در صورت استفاده از این پارامتر، سرعت چاپ خروجی دستور netstat به طور محسوسی افزایش می یابد.

# netstat -ptn

نمایش ادامه دار خروجی

در صورت استفاده از پارامتر -c در کنار سایر پارامتر های netstat، بعد از اجرا و چاپ نتایج، از دستور خارج نمی شود و هر چند ثانیه یک بار دستور را دوباره اجرا کرده و خروجی را چاپ می کند. برای خروج Ctrl+c را بزنید.

# netstat -c

نمایش اطلاعات kernel routing

# netstat -r

یافتن برنامه یا پورت با ترکیب با grep

به عنوان مثال برای یافتن ssh های فعال از دستور زیر استفاده می کنیم:

# netstat -ap | grep ssh

و همچنین برای یافتن اطلاعات یک پورت از دستور زیر استفاده می نمایید:

# netstat -an | grep ':80'

نمایش interface های موجود

برای نمایش خلاصه اطلاعات interface های موجود از پارامتر -i استفاده نمایید:

# netstat -i

همچنین برای نمایش اطلاعات بیشتر به ازای هر interface از پارامتر e به همراه i استفاده کنید:

# netstat -ie

منابع
نت‌استات (ویکی پدیای فارسی)

NetStat Official website
Netstat (wikipedia)
UNIX / Linux: 10 Netstat Command Examples

موفق باشید

Share/Bookmark

سعید زبردست شنبه , ۱۴ فروردین , ۱۳۸۹ http://zebardast.ir

نقدی بر مجموعه تلویزیونی دکستر (Dexter)

فیلم و سریال

سلام :)

سال نو شما مبارک.

مدت نسبتا زیادی از آخرین بروز رسانی وبلاگ می گذرد. مهم ترین علتی که در این مدت این وبلاگ را بروز نکرده ام نبود ایده بود. تولید محتوا واقعا سخت است. منظورم از تولید محتوا ترجمه خبرها و آموزش ها از زبان های دیگر (بخصوص انگلیسی) به فارسی نیست.

Dexter – دکستر

بیشتر اوقات فراغت من به دیدن فیلم ها و سریال های مختلف سپری می شود. بنابراین تصمیم گرفتم که هر چند وقت یکبار نقدی در مورد آنها بنویسم. نقد زیر نظر و برداشت شخصی من از سریال دکستر بعد از دیدن ۲ فصل آن است.

درباره Dexter

دکستر، یکی از مجموعه‌های درام تلویزیونی آمریکایی است.این مجموعه براساس رمان دکستر رویای تاریک بین اثر جف لیندزی ساخته شده است.نویسنده تلویزیونی آن جمیز منوس جونیور برنده جایزه امی است. این مجموعه درباره دکستر مورگان، آدم‌کشی زنجیره‌ای است که برای اداره پلیس میامی به عنوان کارشناس پاشیدگی خون کار می‌کند.

دکستر تحسین بسیاری از منتقدین را به همراه داشت و برنده دو جایزه امی در بخش فنی شد.

داستان (به نقل از ویکی پدیا)

دکستر در سن ۳ سالگی یتیم شده و دارای یک آسیب روانی توسط افسر پلیس میامی هری مورگان به فرزندی پذیرفته شده بود.وی متوجه گرایش‌های بیماری روانی دکستر شد و به وی یاد داد تا اشتیاق وحشت آور خود را برای کشتن کنترل کند و آن را در راهی سازنده با کشتن افرادی که لیاقتش را دارند به کار برد.کسانی که بیشتر آن ها از دست سیستم به خاطر راه‌های گریز در قانون فرار کرده اند یا هرگز دستگیر نشده اند.

دکستر برای راضی کردن علاقه خود به خون و راحت کردن قتل های خود به عنوان کارشناس پاشیدگی خون در اداره پلیس میامی کار می‌کند.هرچند اشتیاق وی برای کشتن پایدار است دکستر که خود احساس خالی بودن می‌کند توسط آموزش های گسترده هری تونا به تقلید احساسات معمولی و نگاه داشتن ظاهر خود به عنوان انسانی مسئول در برابر اجتماع است.

دکستر در حال قتل

فلش بک ها نشان می‌دهند که هری چگونه به دکستر آموزش می‌دهد که مانند فردی عادی به نظر برسد و عمل کند.دکستر آموزش های هری را با عنوان “قانون مقدس هری” دنبال می‌کند.طبق قانون هری تمامی قربانی های دکستر باید خود قاتل باشند و این کار را با بودن پشیمانی انجام داده باشند و این که دکستر قبل از انجام هر چیز باید ثابت کند که آن ها مطمئنا قاتل هستند.

وی قربانی های خود را اول بیهوش می‌کند سپس آن ها را با نوارهای نایلونی می‌بندد و پس از نشان دادن عکس های قربانی های آن ها و بازگو کردن شرح جنایت های آنها٫ آنها را می‌کشد.

نقد

بازیگران مجموعه تلویزیونی دکستر

در چند قسمت اول ممکن است جذب این سریال نشوید. مهمترین دلیل آن را می توان کمی مصنوعی و گیج کننده بودن قسمت های اول آن دانست ولی بعد از قسمت ۳ و ۴ کم کم داستان روشن می شود و در اواخر قسمت فصل ۱ به اوج خود می رسد. مجموعه تلویزیونی دکستر از نقاط قوت بسیاری برخوردار است که آن را از سایر سریال ها متمایز می کند.

فیلمنامه دکستر بر خلاف سریال هایی مانند لاست ضعیف و ضعیف تر نمی شود، مانند فرار از زندان غیر واقعی نیست و همچون سریال ۲۴ قابل پیش بینی نمی باشد. در هر قسمت شما حداقل دو داستان را می بینید. یکی ادامه داستان اصلی آن فصل و دیگری داستان خاص آن قسمت. در این فیلمنامه ژانر های محتلفی به چشم می خورد از جرم و جنایت تا درام و هیجانی و کمدی سیاه.

شخصیت پردازی این سریال واقعا فوق العاده است. بازی بازیگران در هر شخصیت آن قدر خوب انجام شده است که شما را به باور می رساند. درگیری های شغلی، روابط خانوادگی و تفاوت های شخصیت درونی و برونی هر کدام از شخصیت ها به خوبی بیان شده است. به عنوان مثال دبرا (خواهر ناتنی دکستر) در شغلی خود دارای مشکلات بسیاری است که با آنها می جنگد و برای پیشرفت در شغل خود بسیار تلاش می کند.

ریتا و دکستر

دکستر روابط خوبی با ریتا (دوست دختر وی) دارد ولی هیچ وقت شخصیت اصلی و درونی خود را برای آن آشکار نمی کند. دکستر مهم ترین هدف خود از ارتباط با ریتا را اینگونه بیان می کند که برای معمولی و مانند سایر انسان ها بودن باید با او ارتباط داشته باشد ولی درست بعد از جدا شدن از وی متوجه این موضوع می شود که ارتباط با ریتا یک نیاز برای وی است و نه یک اجبار برای معمولی بودن.

شخصیت درونی و برونی دکستر کاملا از هم متفاوت می باشند. در جامعه بیرونی دکستر یک انسان معمولی و ساده است. در محل کار همه او را دوست دارند و مسائل بسیاری را کشف می کند. ولی شخصیت درونی او یک قاتل سریالی حرفه ای ایست که مهمترین هدف آن کشتن سایر قاتل هاست. دیدن بازی یک بازیگر در دو شخصیت و در یک فیلم واقعا جذاب و دیدنیست. مایکل سی هال (بازیگر نقش دکستر) واقعا از عهده این کار برآمده است.

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

هری و دکستر

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

تیتراژ آغازین سریال که حدود ۱:۴۵ دقیقه است با موسیقی خاص خود شما را مجبور به تمرکز بر قسمت جدید و بازنگری قسمت های قبل تر می کند.

در آخر

اگر سریال فرار از زندان برای شما جذاب و دیدنی بود به شما پیشنهاد میکنم که این سریال را نبینید!

در صورتی که این سریال را دیده اید،‌ لطفا نظر و دیدگاه خود را نسبت به آن در بخش نظرات ارسال نمایید.

Share/Bookmark

سعید زبردست دوشنبه , ۹ فروردین , ۱۳۸۹ http://zebardast.ir

معرفی و راهنمای شروع به کار با vi و vim

لینوکس

لینوکس

سلام :)

مطلب امروز در مورد ویرایشگرهای متن Vim و Vi می باشد. در این مطلب ابتدا به معرفی این دو ویرایشگر پرداخته ام و سپس راهنمای استفاده از آنها را ارائه کرده ام.
البته مطلب امروز فقط راهنمای شروع به کار با این دو ویرایشگر می باشد و فقط دستورات پایه ای و اصلی آنها آورده شده اند. برای مشاهده دستورات بیشتر می توانید به لینک هایی که در آخر همین مطلب هستند مراجعه نمایید.
امیدوارم که این مطلب برای شما مفید باشد.

ویرایشگر Vi

Vi  ویرایشگر متن است که اولین بار توسط بیل جوی در سال ۱۹۷۶ با زبان C برای نسخه های اولیه BSD  ها نوشته شد. ویرایشگر های دیگری نیز در سال های بعد بر اساس vi  منتشر شدند که اکثر آنها متن باز و آزاد می باشند، مانند nvi و vim. برنامه های کامپیوتری بسیاری مانند eclipse , IntelliJ IDEA, NetBeans و حتی فایرفاکس و مایکروسافت ورد قابلیت استفاده از Vi شبیه سازی شده را در دل خود دارند.

ویرایشگر Vim

Vim  نسخه توسعه یافته Vi  می باشد. مهم ترین ویژگی هایی Vim عبارتند از تکمیل کردن (completion)، مقایسه و ترکیب فایل ها، راهنمای جامع داخلی، عبارات منظم (regular expressions) توسعه یافته، ویرایش فایل های فشرده و آرشیوی gzip,  bzip2 , zip  و tar، دسترسی و ویرایش فایل ها از طریق پروتکل های SSH, FTP, HTTP، غلطیابی (spell checking) و …

نصب

ویرایشگر vi به صورت پیش فرض بر روی سیستم شما نصب می باشد. برای نصب vim با توجه به توزیع لینوکس خود از دستور مربوطه در زیر استفاده نمایید:

توزیع Arch:

# pacman -S vim

توزیع دبیان و اوبونتو:

$ sudo aptitude install vim

نوزیع فدورا، ردهت و CentOS:

# yum install vim-X11 vim-common vim-enhanced vim-minimal

توزیع جنتو:

# emerge vim

حالت ها (Modes)

منظور از حالت، وضعیت پاسخ گویی برنامه به درخواست شماست. به عنوان مثال در یک فشردن دکمه j کاراکتر j را تایپ می کند و در حالت دیگر مکان نما (cursor یا اعلان) را به خط زیر می برد.

سه حالت اول در Vim  و vi موجود می باشند ولی حالت چهارم فقط در Vim وجود دارد:

  1. حالت Insert: حالتی که در آن متن را تایپ و ویرایش می کنید
  2. حالت Command: حالت صدور فرمان که همان حالت معمولی (Normal) است
  3. حالت Ex یا Command line:  که همان حالت معروف “:” است که دستورات را در این حالت وارد می کنند.
  4. حالت Visual:  که فقط در Vim موجود است و برای highlight کردن و انتخاب کردن متن استفاده می شود.

شروع  به کار با Vim

با استفاده از دستور vim یک فایل را باز کنید:

$ vim file
  • (ورود با حالت Command) با استفاده از دکمه های l, k, j, h   مکان نما را به محل مورد نظر ببرید. لیست دکمه های بیشتر برای حرکت مکان نما در ادامه آمده است.
  • دکمه i را برای ورود به حالت Insert کنید (ورود به حالت Insert). البته برای ورود به حالت Insert می توانید از دکمه های دیگری نیز استفاده کنید که لیست آنها در ادامه آمده است.
  • متن مورد نظر را وارد کنید. دکمه Esc را برای خروج از حالت  Insert و ورود به حالت Command بزنید (ورود به حالت Command).
  • برای خروج از فایل، دکمه “:” را بزنید تا به حالت Command line بروید و سپس یکی از دستورات را وارد کنید:
    • wq ابتدا فایل را ذخیره می کند و بعد خروج از برنامه
    • w برای ذخیره تغییرات
    • !q

      برای خروج از فایل بدون ذخیره فایل و تغییرات

    • qa برای بستن همه فایل های باز

شما با موفقیت یک فایل را توسط Vim ویرایش کردید ;)

جدول دکمه های حرکت مکان نما

جدول زیر برخی از مهم ترین دستورات برای حرکت مکان نما را نمایش می دهد:

دکمه عملکرد
h/j/k/l حرکت مکان نما به راست/بالا/پایین/چپ
فاصله (spacebar) حرکت مکان نما به اندازه یک فاصله
-/+ بردن مکان نما به اول خط قبلی/بعدی
Ctrl+d اسکرول کردن به پایین صفحه به اندازه نیم صفحه
Ctrl+u اسکرول کردن به بالای صفحه به اندازه نیم صفحه
Ctrl+f اسکرول کردن به صفحه بعد
Ctrl+b اسکرول کردن به صفحه قبل
M بردن مکان نما به وسط صفحه
H بردن مکان نما به اول صفحه
L بردن مکان نما به آخر صفحه
W

w

5W

حرکت مکان نما به اول کلمه بعدی (جدا شده با خط فاصله)

حرکت مکان نما به اول کلمه بعدی (جدا شده با خط فاصله، نقطه، / و …)

حرکت مکان نما به اول کلمه پنجم بعدی

B

b

5b

حرکت مکان نما به اول کلمه قبلی (جدا شده با خط فاصله)

حرکت مکان نما به اول کلمه قبلی (جدا شده با خط فاصله، نقطه، / و …)

حرکت مکان نما به اول کلمه پنجم قبلی

e

5e

بردن مکان نما به آخرین کاراکتر کلمه (یا کلمه بعدی)

بردن مکان نما به آخرین کاراکتر پنجمین کلمه بعدی

۰ (صفر) بردن مکان نما به اولین کاراکتر خط فعلی
$ بردن مکان نما به آخرین کاراکتر خط فعلی
( بردن مکان نما به اولین کاراکتر خط فعلی
) بردن مکان نما به اولین کاراکتر خط فعلی
G

12G

بردن مکان نما به آخر فایل

بردن مکان نما به خط ۱۲

% بردن مکان نما به کروشه (bracket) ابتدایی و انتهایی فعلی (مکان نما را به داخل یک دسته از {}, [] و یا () ببرید و با استفاده از %  به کروشه ابتدایی و انتهایی بروید)
‘. بردن مکان نما آخرین محل تغییر داده شده
ma علامت گزاری محل فعلی مکان نما به عنوان a
‘a رفتن به محل علامت گزاری شده به a
‘A رفتن به محل علامت گزاری شده با a در کلیه فایل های که در بافر هستن. علامکت گزاری شده با mA
]’ بردن مکان نما به محل علامت گزاری شده بعدی
[' بردن مکان نما به محل علامت گزاری شده قبلی
ZZ تغییرات را ذخیره و فایل را می بندد. معادل wq در حالت Command line است.

جدول دستورات در حالت Command

جدول زیر برخی از مهم ترین دستورات حالت Command را نمایش می دهد:

دستور عملکرد
i رفتن به حالت Insert در محل مکان نما
a رفتن به حالت Insert در محل بعد از مکان نما
A رفتن به حالت Insert در آخر خط فعلی
Esc خروج از حالت Insert
u رفتن به یک مرحله قبل تر تغییرات (undo)
U برگرداندن تمامی تغییرات صورت گرفته بر روی خط فعلی
Ctrl+r بر عکس u عمل می کند. یعنی به جای undo کردن، redo می کند
o ایجاد یک خط جدید بعد از خط فعلی و رفتن به حالت Insert
dd

3dd

پاک کردن خط فعلی

پاک کردن ۳ خط

D پاک کردن محتویات خط فعلی از محل مکان نما تا آخر
C پاک کردن محتویات خط فعلی و رفتن به حالت Insert برای ورود اطلاعات
dw

4dw

d0

d$

پاک کردن یک کلمه

پاک کردن ۴ کلمه

پاک کردن متن از ابتدای خط تا محل فعلی مکان نما

پاک کردن متن از محل فعلی مکان نما تا انتهای فایل (مانند D)

cw پاک کردن کلمه فعلی و رفتن به حالت Insert
x پاک کردن کاراکتر فعلی
X پاک کردن کاراکتر قبلی
r برای جایگزین کردن یک کاراکتر استفاده می شود. بعد از زدن r، هر کاراکتری که وارد شود جایگزین کاراکتر فعلی می شود.
R رفتن به حالت Insert با این ویژگی که هر کاراکتری که وارد شود، جایگزین کاراکتر فعلی می شود (overwrite).
s پاک کردن کردن کاراکتر فعلی و رفتن به حالت Insert
S پاک کردن خط فعلی و رفتن به حالت Insert
~ عوض حالت کاراکتر فعلی (کوچک و بزرگ کردن کاراکتر فعلی)
Ctrl+a افزایش عدد فعلی کاراکتر (مثلا اگر کاراکتر فعلی متن عدد ۱۰۲ باشد، با این دستور، عدد در متن به ۱۰۳ افزایش می یابد)
Ctrl+x کاهش عدد فعلی کاراکتر (مثلا اگر کاراکتر فعلی متن عدد ۱۰۲ باشد، با این دستور، عدد در متن به ۱۰۱ کاهش می یابد)
/search_string جستجوی عبارت search_string در ادامه متن
?search_string جستجوی عبارت search_string در قبل از محل فعلی مکان نما
n رفتن به محل بعدی عبارت یافت شده از جستجو
N رفتن به محل قبلی عبارت یافت شده از جستجو
. تکرار آخرین دستور اجرا شده

جستجو و جایگزینی (Find and Replace)

جستجو و جایگزینی در حالت Command line اجرا می شود. برای ورود به حالت Command line ابتدا با زدن Esc از حالت Insert به Command بروید و بعد با زدن “:” به Command line بروید.
در زیر چند مثال برای جستجو و جایگزینی آمده است:

دستور توضیح
:%s/fff/rrrrr/ جستجو برای fff  و جایگزینی اولین یافته در هر خط با rrrrr
:%s/fff/rrrrr/g جستجو برای fff  و جایگزینی تمامی یافته ها در هر خط با rrrrr
:%s/fff/rrrrr/gc جستجو برای fff  و جایگزینی تمامی یافته ها در هر خط با rrrrr. قبل از جایگزینی از شما تاییدیه (confirmation) می خواهد.
:%s/fff/rrrrr/gi جستجو برای fff  و جایگزینی تمامی یافته ها در هر خط با rrrrr. بدون حساسیت به کوچک یا بزرگ بودن حروف (Case insensitive)
:’a,’bs/fff/rrrrr/gi جستجو برای fff  و جایگزینی تمامی یافته ها در هر خط با rrrrr در بین خطوطی که با a و b علامت گزاری شده اند. بدون حساسیت به کوچک یا بزرگ بودن حروف (Case insensitive)
:%s/*$/ پاک کردن کاراکتر فاصله از آخر هر خط

چند نکته و دستور

در زیر چند نکته و دستور برای استفاده بهتر از vi و vim ارائه شده است.

  1. هر دو این ویرایشگر ها به حروف کوچک و بزرگ حساس می باشند.
  2. برای تسلط بیشتر می توانید از دستور vimtutor استفاده کنید. vimtutor مرحله به مرحله استفاده از ویرایشگر را به شما آموزش می دهد.
  3. همانطور که پیش تر مشاهده کرده اید، در صورت استفاده از یک عدد قبل از دستور، باعث تکرار یک دستور به تعداد آن عدد می شود. مثلا ۱۷j باعث می شود که ۱۷ خط به پایین بروید.
  4. به جای فشردن a یا i برای وارد کردن مطلب می توانید از دکمه Insert استفاده نمایید. این مطلب برای دکمه Delete و فرمان x نیز صادق است.

منابع و لینک های مفید

لینک های انگلیسی

لینک های فارسی

موفق باشید 8)

Share/Bookmark

سعید زبردست یکشنبه , ۲۷ دی , ۱۳۸۸ http://zebardast.ir

اتصال به اینترنت از خط فرمان لینوکس

لینوکس

لینوکس

سلام :)

با توجه به نیاز هایی که در نبود ابزار گرافیکی مناسب برای اتصال به شبکه برای شما ایجاد شود، در این مطلب به نحوه اتصال به شبکه های Dial up ، ADSL ، شبکه محلی LAN و شبکه بی سیم (Wireless) از طریق خط فرمان (ترمینال) می پردازم.

• اتصال به اینترنت Dial up (دایل آپ)

برنامه های مختلفی برای اتصال به اینترنت Dial up از طریق خط فرمان وجود دارد. در این مقاله از دو بسته های pppconfig و wvdial استفاده کرده ایم. (در صورت نیاز این دو بسته را نصب کنید)

نیازمندی های قبل از اتصال

قبل از هر چیز باید مودم خود را نصب کنید. برای راهنمایی نصب مودم به انجمن های فارسی اوبونتو مراجعه کنید.

همچنین شما به نام کاربری، رمز عبور و شما اتصال به اینترنت نیز نیازمندید.

تنظیم اتصال به Dial up توسط pppconfig

دستور زیر را در خط فرمان لینوکس وارد کنید:

# pppconfig

در منو اصلی برنامه گزینه “Create Create a connection” را انتخاب کنید.

منو اصلی برنامه pppconfig

منو اصلی برنامه pppconfig

در بخش بعدی (Provider Name) نام ISP مورد نظر (یا یک نام دلخواه) را عنوان کنید.

انتخاب provider در pppconfig

انتخاب provider در pppconfig

در بخش بعدی که مربوط به تنظیمات DNS است، گزینه “Dynamic Use dynamic DNS” را انتخاب کنید.

انتخاب Use dynamic DNS در pppconfig

انتخاب Use dynamic DNS در pppconfig

در بخش بعد نوع شناسایی را باید انتخاب کنید. در اینجا من گزینه “Chat :Use chat for login/password :Authentication” را انتخاب کرده ام. البته بیشتر ISP در ایران از PAP استفاده می کنند.

انتخاب نحوه Authentication

انتخاب نحوه Authentication

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

• اتصال به اینترنت ADSL

برای اتصال به اینترنت ADSL از دستور pppoeconf یا pppoe-setup استفاده می شود. pppoeconf به صورت پیش فرض در اوبونتو و pppoe-setup به صورت پیش فرض در آرچ وجود دارد. برای اجرایی این دستورات به دسترسی ریشه (root) نیاز دارید.

راه اندازی

دستورات pppoeconf و pppoe-setup به مشخصات یکسانی برای اتصال نیاز دارند:

  • کارت شبکه (Ethernet card)
  • نام کاربری (username)
  • رمز عبور (password)

مراحل pppoeconf در اوبونتو

  • تایید کردن کارت شبکه که به صورت اتوماتیک پیدا شده است.
  • وارد کردن نام کاربری.
  • وارد کردن رمز عبور.
  • در صورتی که کانکشن PPPoE مشابهی داشته باشید، در مورد ویرایش آن پیغامی را مشاهده می کنید.
  • گزینه “Yes” را انتخاب کنید. این مرحله مربوط به تنظیمات route است.
  • گزینه “Yes” را انتخاب کنید. این مرحله مربوط به استفاده از DNS های ISP به صورت پیش فرض است. در صورت انتخاب گزینه “No” باید DNS های را دستی وارد کنید.
  • گزینه “Yes” را انتخاب کنید. این مرحله مربوط به Limited MSS است.
  • در صورتی که می خواهید به صورت پیش فرض بعد از هر بار boot شدن اتوماتیک این کانکشن وصل شود، گزینه “Yes” را انتخاب کنید.
  • در آخر گزینه مربوط به وصل شدن به این کانشکن در این لحظه را می بینید که با انتخاب آن به ADSL وصل می شود.

مراحل pppoe-setup در Arch

  • وارد کردن نام کاربری.
  • تایید کردن کارت شبکه که به صورت اتوماتیک پیدا شده است.
  • گزینه “no” را انتخاب کنید. این مرحله مربوط به تنظیمات demand است.
  • فقط Enter بزنید. این مرحله مربوط به استفاده از DNS های ISP به صورت پیش فرض است. در صورت نیاز DNS ها را دستی وارد کنید.
  • وارد کردن رمز عبور.
  • تکرار کردن رمز عبور.
  • عدد ۱ را وارد کنید. این قسمت مربوط به تنظیمات Firewall است. عدد ۱ نشان دهنده فایروال استاندارد است.
  • عبارت y را برای تایید کردن تنظیمات وارد کنید.

کنترل دستی کانکشن ها

برای وصل شدن یک کانکشن ADSL دستور زیر را وارد کنید:

# pon dsl-provider

برای قطع کردن یک کانکشن ADSL دستور زیر را وارد کنید:

# poff dsl-provider

* dsl-provider نام اتصال ایجاد شده توسط شماست.

در صورت بروز هر مشکلی، با استفاده از دستور زیر، علت آن را می توانید بیابید:

# plog

• شبکه داخلی LAN

تنظیم آی پی (IP)

در صورتی که شبکه داخلی شما به صورت اتوماتیک آی پی می دهد (منظور همان dhcp است) در این صورت توسط یکی از دستور های زیر آی پی خود را تنظیم کنید:

برای اوبونتو
# dhclient  eth0
برای آرچ لینوکس
# dhcpcd  eth0

*eth0 همان interface مربوط به کارت شبکه شما است.

در صورتی که باید ip، broadcast و netmask را دستی تنظیم کنید از دستور زیر استفاده کنید:

# ifconfig eth0 1.2.3.4  netmask 255.255.255.0 broadcast 11.22.33.44

برای تنظیم دستی gateway می توانید از دستور زیر استفاده کنید:

# ip route add default via 1.2.3.4

یا

# route add default gw 1.2.3.4 eth0

برای فعال و غیر فعال کردن این اتصال از دستورات زیر استفاده کنید:

# ifconfig eth0 up
# ifconfig eth0 down

تنظیمات dns معمولا در فایل زیر ذخیره می شود:

/etc/resolv.conf

برای وارد کردن یک dns به آدرس ۱٫۲٫۳٫۴ خط زیر را به فایل بالا اضافه کنید:

nameserver 1.2.3.4

• اینترنت بی سیم (Wireless)

تنظیمات مربوط به اینترنت بی سیم بسیار شبیه به شبکه داخلی LAN می باشد. در اینجا interface مربوط به کارت بی سیم wlan0 می باشد.

لیست شبکه در دسترس

برای بدست آوردن لیست شبکه های در دسترس از دستور زیر استفاده کنید:

# iwlist wlan0 scan

اتصال به شبکه وایرلس

در صورتی که شبکه بی سیم مورد نظر بدون رمز می باشد از دستور زیر استفاده کنید:

# iwconfig wlan0 essid "MyEssid"

در صورت داشتن رمز WEP hexadecimal از دستور زیر استفاده کنید:

# iwconfig wlan0 essid "MyEssid" key 1234567890

در صورت داشتن رمز WEP ascii از دستور زیر استفاده کنید:

# iwconfig wlan0 essid "MyEssid" key s:asciikey

برای اتصال به شبکه WPA/WPA2 شما باید ابتدا فایل /etc/wpa_supplicant.conf را با توجه به شبکه مورد نظر خود ویرایش کنید و سپس دستور زیر را اجرا کنید:

# wpa_supplicant -B -Dwext -i wlan0 -c /etc/wpa_supplicant.conf

سپس باید مانند شبکه محلی LAN آدرس IP را تنظیم کنید. باید به جای eth0 از wlan0 استفاده کنید.

نرم افزار مکمل wifi-select

شما با استفاده wifi-select می توانید به راحتی به شبکه های بی سیم با رمز گزاری های مختلف وصل شوید. استفاده از آن بسیار راحت می باشد.

برنامه wifi-select

برنامه wifi-select

برای نصب wifi-select در Arch از دستور زیر استفاده کنید:

# pacman -Sy wifi-select

• توضیحات

* اتصال به اینترنت در لینوکس روش های مختلف و ابزار های گوناگونی دارد. در مطلب بالا، اطالاعات اولیه و عمومی در مورد اتصال به شبکه های مختلف قید شدند. برای اطلاعات بیشتر به موتور های جستجو مراجعه فرمایید!
* دستورات بالا همگی بر روی آرچ لینوکس تست شده اند.
* مرجع دستورات خط فرمان لینوکس ممکن است برای شما مفید باشد.

موفق باشید

Share/Bookmark

سعید زبردست چهارشنبه , ۲۵ آذر , ۱۳۸۸ http://zebardast.ir