ওএসএক্সে zsh থেকে ব্যাশে স্যুইচ করছেন, এবং আবার ফিরে আসছেন?


193

সুতরাং আমি কারাগারে বিকাশ করতে শিখছি, এবং zsh এর শক্তি আবিষ্কার করেছি। তবে আমার অন্যান্য কয়েকটি কাজের জন্য আমি সাধারণ ব্যাশ ব্যবহার করতে চাই। যদিও সেগুলি একই, তবে আমি কিছু পরিস্থিতিতে বাশ আউট নিয়ে স্বাচ্ছন্দ্য বোধ করি। আমি কীভাবে পিছনে পিছনে স্যুইচ করব, বা zsh চালু এবং বন্ধ করব? ধন্যবাদ!

উত্তর:


379

আপনি কেবল execনতুন শেল দিয়ে আপনার বর্তমান শেলটি প্রতিস্থাপন করতে ব্যবহার করতে পারেন :

এতে স্যুইচ করুন bash:

exec bash

এতে স্যুইচ করুন zsh:

exec zsh

এটি নতুন টার্মিনাল উইন্ডো বা কোনও কিছুতে প্রভাব ফেলবে না তবে এটি সুবিধাজনক।


1
আপনাকে স্বাগতম! আপনি যদি এই উত্তরটি নিয়ে খুশি হন তবে দয়া করে উত্তরের বামে চেকমার্কটি পরীক্ষা করে এটি গ্রহণযোগ্য হিসাবে চিহ্নিত করতে কিছুক্ষণ সময় নিন। ধন্যবাদ!
-তে

1
অথবা, কেবল zsh আহ্বান করুন, এবং আপনি যখন exitফিরে আসার জন্য কাজ শেষ করেন। এটি সম্পাদন করা অপ্রয়োজনীয় এবং অযাচিত মনে হয়।
ক্রিস পেজ

আপনার প্রস্থানটি যখন বেরোন তখন আপনার টার্মিনাল উইন্ডোটি কী করবে তার উপর নির্ভর করে সমস্ত। আমি নিজেকে একটি সাবস্কেল অপ্রয়োজনীয় এবং অবাঞ্ছিত শুরু করতে দেখছি।
15:30 এ লারস্কগুলি

2
আপনি কীভাবে ডিফল্ট পরিবর্তন করবেন? এছাড়াও, আমি যখন zsh এ "এক্সিকিউট বাশ" করি, এটি আমার বাশ_প্রফাইলে উত্স দেয় না।
কালেহভ

1
এমন সময় আছে যখন আমি zsh ব্যবহার করতে চাই এবং অন্যান্য সময় যখন এটি আমার কাজটি করতে হস্তক্ষেপ করে। পিছনে ডিফল্ট সেট করা একটি খারাপ ধারণা তাই এটি সঠিক সমাধান !!! গৌরব !!
বব রবার্টস

126

আপনি বাশকে ডিফল্ট হিসাবে সেট করতে chsh -s /bin/bash, বা chsh -s /bin/zshzsh কে ডিফল্ট হিসাবে সেট করার চেষ্টা করতে পারেন ।


54

আমি কিছুটা ঘন ঘন zsh এবং ব্যাশের মধ্যে স্যুইচ করি। কিছুক্ষণের জন্য, আমি আমার বাশ_প্রফাইলে প্রতিটি স্যুইচটি উত্স করতাম। তখন আমি জানতে পেরেছিলাম যে আপনি (সাধারণত) করতে পারেন

exec bash --login

বা শুধু

exec bash -l

1
ধন্যবাদ ফিল, আমি থিঙ্কবোট / ল্যাপটপ ইনস্টল করেছি এবং এটি আমার সমস্ত কনফিগারগুলিকে বিশৃঙ্খল করে। আপনার টিপটি আমার বাশ পরিবেশ ফিরিয়ে আনতে সহায়তা করে।
সেরাল্টো

1
আপনি "- লগিন" কি জন্য লিখেছেন দরকারী টুপি হতে পারে?
ইওকস

Make bash act as if it had been invoked as a login shell (see INVOCATION below). উত্স
নিঃসঙ্গ

16

যদি এটি কেবল একটি অস্থায়ী সুইচ হয়

আপনি উপরে বর্ণিত হিসাবে নির্বাহক ব্যবহার করতে পারেন, তবে স্থায়ী সমাধানের জন্য আরও।

আপনি chsh -s / bin / bash ( ব্যাশে স্যুইচ করতে) এবং chsh -s / bin / zsh ( zsh এ স্যুইচ করতে) ব্যবহার করতে পারেন


12

বাশের জন্য, চেষ্টা করুন

chsh -s $(which bash)

Zsh এর জন্য, চেষ্টা করুন

chsh -s $(which zsh)

6

zsh এর একটি বিল্টিন কমান্ড রয়েছে emulateযা উপযুক্ত বিকল্পগুলি সেট করে বিভিন্ন শেল অনুকরণ করতে পারে, যদিও সিএসএস কখনই সম্পূর্ণরূপে অনুকরণ করা যায় না।

emulate bash
perform commands
emulate -R zsh

-র পতাকাটি শেলটির জন্য তাদের ডিফল্ট মানগুলিতে সমস্ত বিকল্প পুনরুদ্ধার করে।

দেখুন: zsh ম্যানুয়াল


1
এটি কীভাবে বাশের কোনও সংস্করণ অনুকরণ করবে তা পরিষ্কার নয়, এটি কি বাশ 4.x অনুকরণ করবে? বা 5.x?
এডগার আর্টিউইউনিয়ান

2

ব্যাশে স্যুইচ করতে আপনার কেবল bashটার্মিনালে টাইপ করতে সক্ষম হতে হবে এবং তারপরে zshzsh এ স্যুইচ করতে টাইপ করতে হবে। অন্তত আমার জন্য কাজ করে।


এটি এমনকি সহজ।
অ্যান্ড্রোমদা

2
এটি কাজ করে, তবে প্রতিবার আপনি টাইপ করলে zshবা bashআপনি একটি সাব-শেল (বর্তমান শেলের নীচে সাবপ্রসেস) এ যাচ্ছেন। সর্বাধিক সর্বাধিক শেলটিতে ফিরে আসতে আপনাকে বেশ কয়েকবার প্রস্থান টাইপ করতে হবে।
রিচভেল

0

ম্যাক ওএসে ক্যাটালিনা ডিফল্ট ইন্টারেক্টিভ শেলটি zsh। বাশ থেকে শ্যাশকে zsh এ পরিবর্তন করতে:

chsh -s /bin/zsh

তারপরে আপনাকে আপনার ম্যাক পাসওয়ার্ড প্রবেশ করতে হবে। টার্মিনালটি প্রস্থান করুন এবং এটি আবার খুলুন। এটি সফলভাবে ssh এ পরিবর্তন হয়েছে কিনা তা পরীক্ষা করতে নিম্নলিখিত কমান্ডটি জারি করুন।

echo $SHELL

ফলাফলটি যদি / বিন / zsh হয় তবে আপনার কাজটি সম্পন্ন হবে।

এটিকে আবার ব্যাশে পরিবর্তন করতে, টার্মিনালে নিম্নলিখিত কমান্ডটি জারি করুন।

chsh -s /bin/bash

এটি ব্যবহার করে আবার যাচাই করুন echo $SHELL। তারপরে ফলাফলটি / বিন / বাশ হওয়া উচিত।


0

আপনি কেবল টাইপ করতে পারেন bashবা আপনি যদি সর্বদা ব্যাশ ব্যবহার করতে চান তবে:

"আইটির্ম 2" তে

  • পছন্দসমূহ> প্রোফাইল> কমান্ডে যান
  • ড্রপডাউন থেকে "কমান্ড" নির্বাচন করুন
  • আদর্শ bash

আইটির্ম বন্ধ করে পরীক্ষা করুন এবং এটি আবার খুলুন


আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.