بالاخره وقت خداحافظی از بش رسید، سلام زیشل

شل‌ها مهم هستن. اونها دستورات رو از شما می گیرن و خروجی‌ها رو به شما نشون می‌دن. معمولا سیاه هستن ولی می شه به هر رنگی درآوردشون. توی دنیا یکی از مشهورترین شل‌ها، بش است و من همیشه از Bash استفاده کردم که همه جا سازگاری حفظ بشه. شل‌های بهتر مثل ksh و غیره هم هستن ولی در نهایت بش برای من به خاطر اینکه همه جا حضور داشت، انتخاب اصلی بود. ولی دیگه نیست.

الان مدتی است که از zsh استفاده می‌کنم. خوبی اصلی زد اس اش برای من اینه که تا حد خیلی زیادی همون bash است با چند فیچر بهتر. مثلا توی تکمیل کردن دستورات با tab بسیار بهتر عمل می کنه می شه توش چیزها رو خلاصه‌تر نوشت. هیستوری توش راحتتر پیدا می شه و حتی می‌شه با تب، سوییچ ها رو دید. چیزی که بارها برای من توی بش پیش می‌امد این بود که دستور رو نصفه می‌نوشتم، می‌اومدم بیرون و سوییچ رو نگاه می‌کردم و بر می‌گشتم به دستور اما حالا به راحتی با زدن tab سوییچ‌ها دیده می‌شن.

این شل امکان تنظیمات زیادی داره ولی تقریبا بهترینشون برای شروع در پروژه ای به اسم oh my zsh جمع شده. برای اضافه کردن زیشل به سیستم و انتخاب اون به عنوان شل خودتون باید اول zsh رو نصب کنین، مثلا با یکی از دستورات زیر:

sudo apt install zsh #debian, Ubuntu, Ming
sudo yum install zsh #fedora, centos, redhat
sudo zypper install zsh #openSuse

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

sudo usermod -s /usr/bin/zsh jadi

تنظیمات عالی «اوه مای زیشل» رو هم می‌تونین با این یک دستور نصب کنین:

sh -c "$(wget https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh -O -)"

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

نکته مکی: اگر مک دارین و از OSX استفاده می‌کنین، نصب زیشل بسیار توصیه می‌شه؛ به طور خاص به خاطر قدیمی بود بش توی مک.

  • مجید

    یه نگاهی هم به فیش بنداز :-)
    https://fishshell.com/

    • jadijadi

      مشکل اصلی فیش عدم سازگاری با بش است. مثلا متغیرهای مهمی در ایران مثل http_proxy توش کار نمی کردن آخرین بار که دیدمش.

      • Mohamad MohebiFar

        مشکلی تو این زمینه وجود نداره و کار کردن یا کار نکردن پروکسی ربطی به شل نداره قاعدتا. فقط توی فیش variable expansion مثل بش انجام نمی‌شه و باید از کامند env استفاده کنی مثلا:

        env http_proxy=http://folan program arg1 arg2

    • dynamic

      آره.خیلی از قابلیت هایی که تو زی شل باید بابتشون پلاگین نصب کنی رو بهت میده.
      و در نهایت خیلی سریع تر میشه.تازه یه پروژه ی oh-my-fish هم داره.

  • صادق

    یه پروژه به نامه Bash It هم هست. بخش زیادی از قابلیت‌های oh my zsh را توی بش بهت می‌ده:
    https://github.com/Bash-it/bash-it

  • Alireza

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

  • خیلی خوبه، ولی oh-my-zsh واقعا بیخودی سنگینه. Antigen رو مثلا یه تستی بزن.
    نکته بعدی اینه که از fish قابلیت جستجوی خیلی خوب تو هیستوری رو دوست داشتم، که history-substring-search یا همچین چیزی رو بگیرید و نصب کنید و فکر کنم تو oh-my-zsh هست خیلی عالی میشه :)

    • کیوان

      zaw هم خیلی خوبه

  • بش هم قابلیت تکمیل دستورات رو داره و این امکان به صورت پیشفرض روی آرچ‌لینوکس فعاله. https://wiki.archlinux.org/index.php/bash#Common_programs_and_options

    • احمد

      دقیقا آرچ داره اینا رو. من فکر میکردم بقیه توزیع ها هم دارن!!!

      • احمد

        البته مال پکیج bash-completion هستش

      • کار با آرچ واقعا لذت بخشه.

  • p0ouwriYa

    من نگرفتم چرا وقت خدافظی با bash رسیده ، چون امکانات zsh بیشتره یا کلن قرار bash جم بشه یا چیزی

    تلفظش هم خیلی سخته ، ینی باید بگیم زد اس اچ یا بگیم زَش ؟

  • استفاده از یه پلاگین‌منیجر مث zplug هم خیلی کار با zsh رو راحت می‌کنه.
    https://github.com/sepehr/dotfiles/blob/master/shell/.zshrc#L68

  • فقط تم bureau! لامصب مخصوصا سر گیت خیلی خوبه!

  • Vrej Abramian

    salam man nasb kardam ba dasturate bala rooye centos 6, varede zsh ham
    misham, ama bad az type dastoorat ba tab nemitoonem option haye oon
    dastoor ro bebinam , mishe lotfan rahnamayi konid ?

  • saeed

    این thefuck هم چیز باحالیه :)
    https://github.com/nvbn/thefuck

  • Pingback: اشتباه زدم، فاک! | کیبرد آزاد()

  • برای استفاده‌ش توی Bash on Ubuntu on Windows هم کافیه فایل ~/.bashrc ادیت بشه و این به اولش اضافه بشه:

    Launch Zsh

    if [ -t 1 ]; then
    exec zsh
    fi

    http://www.howtogeek.com/258518/how-to-use-zsh-or-another-shell-in-windows-10/

  • Pingback: اشتباه زدم، فاک! – خبرخوان()

  • Morteza Tourani

    اون مورد آخری تو دستور نصب برای دبین بیس‌ها، مینت باید باشه.

  • Pingback: استفاده از زیشل به‌طور پیش‌فرض – دنیای آزاد من()