ZSH پروفائل ٹپس اور ٹرکس

Zsh Prwfayl Ps Awr Rks



ZSH ایک ناقابل یقین شیل ترجمان ہے جو اضافی خصوصیات کی ایک وسیع صف کے ساتھ Bourne Shell کے اوپر بنایا گیا ہے۔ یہ دوسرے شیل جیسے باش سے کچھ خصوصیات لیتا ہے۔

ZSH کی سب سے مشہور خصوصیات میں سے ایک بیرونی فریم ورکس، پلگ انز، تھیمز وغیرہ کا استعمال کرتے ہوئے خصوصیات کی تخصیص اور توسیع پذیری ہے۔

ZSH کو حسب ضرورت بنانے اور ترتیب دینے کا سب سے بنیادی طریقہ ZSH کنفیگریشن فائل کا استعمال کرنا ہے جو عام طور پر ہوم ڈائریکٹری میں '.zshrc' نام کے تحت واقع ہوتی ہے۔







لہذا، ZSH پروفائل کی بنیادی خصوصیات کو سیکھنا اپنے ZSH ٹرمینل کو ترتیب دینے کا طریقہ سیکھنے میں بہت اہم ہو سکتا ہے۔ چاہے آپ کوئی بیرونی فریم ورک استعمال کر رہے ہوں جیسے Oh My ZSH، Antigen، وغیرہ، آپ کو یہ جاننے کی ضرورت ہے کہ اپنی ZSH کنفگریشن فائل میں ترمیم اور کنفیگر کیسے کریں۔



اس ٹیوٹوریل میں، ہم آپ کو ZSH پروفائل کے بارے میں بتائیں گے۔ اس سے آپ کو کنفیگریشن نحو، معاون خصوصیات میں مدد ملے گی، اور آپ کو اپنے ٹرمینل کے تجربے کو بڑھانے کے بارے میں کچھ تجاویز اور چالیں بھی فراہم ہوں گی۔



ZSH انسٹال کرنا

یونکس ایکو سسٹم میں ہر پیکج اور ٹول کی طرح، ہمیں اس بات کو یقینی بنانا ہوگا کہ ہم نے اسے اپنے سسٹم پر انسٹال کر رکھا ہے۔





لینکس سسٹمز پر، آپ اپنے ڈیفالٹ پیکیج مینیجر کا استعمال کرتے ہوئے ZSH انسٹال کر سکتے ہیں جیسے APT for Debian سسٹم، DNF اور Yum for Fedora، Pacman for Arch، وغیرہ۔

$ sudo apt-get انسٹال کریں۔ zsh

اگر آپ macOS پر ہیں، ZSH ڈیفالٹ شیل ہے (ورژن پر منحصر ہے) اور آسانی سے دستیاب ہے۔ تاہم، اگر آپ نے اسے کسی وجہ سے انسٹال نہیں کیا ہے، تو آپ اسے مندرجہ ذیل طریقے سے انسٹال کرنے کے لیے Homebrew استعمال کر سکتے ہیں:



$ مرکب انسٹال کریں zsh

ایک بار مکمل ہوجانے کے بعد، ہم ZSH کو لانچ کے وقت ڈیفالٹ شیل ترجمان بننے کے لیے تشکیل دے سکتے ہیں۔ آپ درج ذیل کمانڈ کو چلا کر ایسا کر سکتے ہیں۔

$ chsh -s $ ( کونسا zsh )

اسے ڈیفالٹ شیل کو ZSH میں تبدیل کرنا چاہئے۔

ZSH پروفائل کو سمجھنا

جیسا کہ ہم نے ذکر کیا، ZSH کو ترتیب دینے کا طریقہ '.zshrc' فائل کا استعمال ہے۔ آئیے مزید تفصیلات میں کودتے ہیں کہ یہ کیا ہے اور یہ کیسے کام کرتا ہے۔

Zshrc کیا ہے؟

Z-shell رن کنٹرول کے لیے '.zshrc' مختصر ہے۔ یہ ہوم ڈائرکٹری (~/.zshrc) میں واقع ایک پوشیدہ فائل ہے (لیڈنگ کی طرف سے اشارہ کیا جاتا ہے)۔

جب بھی آپ نیا شیل سیشن شروع کرتے ہیں اس فائل میں بیان کردہ ہر کمانڈ کو ZSH پڑھتا اور اس پر عمل درآمد کرتا ہے۔ اس میں ایک نئی ٹرمینل ونڈو کھولنا، ایک نیا ٹیب، یا ZSH کے اندر اسکرپٹ چلانا شامل ہے۔

'.zshrc' فائل کے کچھ اہم استعمال درج ذیل ہیں:

  • PATH کو ترتیب دینا، ماحولیاتی متغیرات کی وضاحت، اور دیگر ترتیبات
  • کمانڈز کے لیے شارٹ کٹ بنانا اور پیچیدہ یا دہرائے جانے والے کاموں کے لیے افعال کی وضاحت کرنا
  • شیل پرامپٹ کی ظاہری شکل میں ترمیم کرنا
  • شیل کے اختیارات کو ترتیب دینا اور کمانڈ کی تکمیل کے رویے کو ترتیب دینا

'.zshrc' فائل کا نحو بنیادی طور پر ZSH اسکرپٹنگ زبان ہے۔ ZSH کچھ اضافہ اور نحوی تبدیلیوں کے ساتھ Bash سے بہت ملتا جلتا ہے۔ مزید جاننے کے لیے آپ Bash سے ZSH میں سوئچ کرنے کے بارے میں ہمارا ٹیوٹوریل دیکھ سکتے ہیں۔

ZSH پروفائل کو حسب ضرورت بنانا

اپنے شیل پروفائل کے ساتھ کام کرتے وقت پہلا اور سب سے عام کام شیل پرامپٹ کو حسب ضرورت بنانا ہے۔ ہم یہ فرار کی ترتیب اور خصوصی متغیرات کا استعمال کرتے ہوئے کر سکتے ہیں۔

مندرجہ ذیل مثال کے کوڈ پر ایک نظر ڈالیں:

PS1 = '%n@%m %~ %(!.#.$)'

اس صورت میں، PS1 متغیر آپ کے پرامپٹ کی تخصیص کو سنبھالتا ہے۔ مندرجہ ذیل اس بات کی نشاندہی کرتا ہے کہ ہر خاص متغیر کس چیز کی نمائندگی کرتا ہے۔

  • %n - صارف نام
  • %m - میزبان نام
  • %~ - موجودہ ڈائریکٹری
  • %(!.#.$) – روٹ (#) اور نان روٹ ($) صارفین کے لیے مختلف پرامپٹ حروف

متغیرات کی ترتیب

ZSH میں متغیر سیٹ کرنے کے لیے، ہم متغیر کا نام، ایک مساوی نشان، اور متغیر کی قدر استعمال کرتے ہیں۔ نحو درج ذیل ہے:

VARIABLE_NAME = 'قدر'

اس کے بعد ہم پوری اسکرپٹ میں پہلے بیان کردہ متغیر کا حوالہ دے سکتے ہیں۔

متغیرات کو برآمد کرنا

ہم متغیرات کو موجودہ سیشن میں یا جب بھی شیل لوڈ ہوتا ہے، ذیلی عمل کے لیے دستیاب کرانے کے لیے برآمد کر سکتے ہیں۔

ایک مثال درج ذیل ہے:

برآمد PATH = '/usr/local/bin: $PATH '

عرفی نام

ZSH کی ایک اور بہت مفید خصوصیت عرفی نام ہے۔ عرفی نام بنیادی طور پر طویل کمانڈز کے شارٹ کٹس ہیں جو آپ اکثر استعمال کرتے ہیں۔

ZSH میں، ہم ایک عرف کی وضاحت کر سکتے ہیں جیسا کہ درج ذیل نحو میں دکھایا گیا ہے۔

عرف عرف = 'کمانڈ_فارمیٹ'

مثال کے طور پر، فرض کریں کہ ہم 'ls -lah' کمانڈ کے لیے ایک چھوٹا کمانڈ بنانا چاہتے ہیں۔ ہم ذیل میں ایک عرف بنا سکتے ہیں:

عرف ll = 'ls-lah'

افعال

اگلی چیز جس کے بارے میں ہمیں جاننے کی ضرورت ہے وہ ہے افعال۔ فنکشنز ہمیں دوبارہ استعمال کے قابل کوڈ بلاکس کی وضاحت کرنے کی اجازت دیتے ہیں جنہیں ہم واحد ہستی کہہ سکتے ہیں۔

ZSH میں فنکشن کی وضاحت کرنے کے لیے نحو درج ذیل ہے:

فنکشن فنکشن_نام {

#منطق

}

مثال کے طور پر، فرض کریں کہ ہم ایک ایسا فنکشن رکھنا چاہتے ہیں جو کرل کی درخواست کر کے موسم کی معلومات حاصل کرے۔ پوری کمانڈ کو ٹائپ کرنے کے بجائے، ہم ایک سادہ فنکشن کی وضاحت کر سکتے ہیں جو اس طرح کرتا ہے:

فنکشن موسم ( ) {

curl wttr.in

}

اب، جب ہمیں موسم کی معلومات کو بازیافت کرنے کی ضرورت ہے، تو ہم صرف اس فنکشن کو کال کر سکتے ہیں اور یہ ہمارے لیے تمام کام کرتا ہے۔

کلیدی پابندیاں

کلیدی پابندیاں ہمیں کلیدی ترتیبوں کے ایک سیٹ کی وضاحت کرنے کی اجازت دیتی ہیں جو کسی دیے گئے آپریشن میں میپ کیے گئے ہیں۔ مثال کے طور پر، ہم ایک کلیدی شارٹ کٹ بنا سکتے ہیں جو ہمیں کمانڈ کی تاریخ کو تلاش کرنے کی اجازت دیتا ہے۔

ZSH میں، ہم 'bindkey' کمانڈ کا استعمال کرتے ہوئے کلیدی بائنڈنگ کی وضاحت کرتے ہیں۔ درج ذیل مثال لیں:

بانڈکی '^R' تاریخ-بڑھتی-تلاش-پسماندہ

یہ مثال 'CTRL + R' کلیدی ترتیب کو کمانڈ ہسٹری تلاش کی فعالیت سے جوڑتی ہے۔

مزید حسب ضرورت دریافت کرنے کے لیے آپ ZSH کلیدی پابندیوں پر ہمارے ٹیوٹوریل کا حوالہ دے سکتے ہیں۔

خودکار تکمیل

ZSH ایک طاقتور خودکار تکمیل پیش کرتا ہے۔ آپ ترتیب میں درج ذیل اندراجات شامل کرکے اسے فعال کرسکتے ہیں۔

آٹو لوڈ -کرنا compinit
compinit

ٹپس اور ٹرکس

ذیل میں کچھ مفید ٹپس اور ٹرکس ہیں جو آپ کو ZSH میں کام کرتے وقت جاننے کی ضرورت ہے:

کمانڈ کی تاریخ

کی بورڈ شارٹ کٹس کے ساتھ کمانڈ ہسٹری کو نیویگیٹ کریں۔

  • Ctrl-R - پیچھے کی طرف تلاش کریں۔
  • Ctrl-S - آگے تلاش کریں۔
  • اوپر کا تیر - پچھلی کمانڈ
  • نیچے تیر - اگلی کمانڈ

تکراری گلوبنگ

تکراری گلوبنگ کو فعال کرنے کے لیے، ** استعمال کریں۔ مثال کے طور پر:

بازگشت ***/* .TXT

کمانڈ متبادل

کسی کمانڈ کی آؤٹ پٹ کو دوسری کمانڈ میں داخل کرنے کے لیے $(کمانڈ) کا استعمال کریں۔

ڈیبگنگ

ZSH اسٹارٹ اپ پر مسائل کو ڈیبگ کرنے کے لیے، 'zshrc' فائل کو ڈیبگ کرنے کے لیے 'zsh –xv' استعمال کریں۔

آپ 'zprof' کمانڈ کا استعمال کرتے ہوئے اپنی ZSH کنفیگریشن کے آغاز کا وقت بھی پروفائل کر سکتے ہیں۔

نتیجہ

اس ٹیوٹوریل میں، ہم نے ان تمام چیزوں پر تبادلہ خیال کیا جس کی آپ کو جاننے کی ضرورت ہے جب آپ ZSH پروفائل کے ساتھ کام کر رہے ہیں۔ ہم نے آپ کو کچھ تجاویز اور چالیں بھی فراہم کی ہیں جو آپ کے ZSH کے تجربے کو بہتر بنانے میں مدد کر سکتی ہیں۔