উত্তর:
বাশ নিজেই বেশিরভাগ একই হবে। কয়েকটি ছোট পার্থক্য হবে তবে এগুলির কোনওটিই আপনার স্ক্রিপ্টগুলির বহনযোগ্যতার উপর প্রভাব ফেলবে না।
প্রধান সমস্যাটি হ'ল ম্যাকোএস কোর্টিলগুলি ফ্রিবিএসডি ভিত্তিক যখন আপনি যে ইউটিলিটিগুলি ব্যবহার করছেন সেগুলি সম্ভবত জিএনইউ প্রকল্প থেকে। ফ্রিবিএসডি কোর্টিলগুলি সর্বদা জিএনইউ কোর্টিলগুলির সাথে সামঞ্জস্যপূর্ণ নয়। জিএনইউ এবং সেড , গ্রেপ , পিএস এবং অন্যান্য ইউটিলিটিগুলির ফ্রিবিএসডি সংস্করণগুলির মধ্যে পারফরম্যান্স এবং আচরণগত পার্থক্য রয়েছে ।
আপনি গনুহ coreutils ইনস্টল করতে পারেন কিন্তু তারা আছে g-উপসর্গ (যেমন gcatজন্য cat)। এটা একটা ভাল ধারণা না গনুহ coreutils সঙ্গে MacOS এর coreutils প্রতিস্থাপন।
যদি এটি গুরুত্বপূর্ণ bashহয়ে থাকে তবে ম্যাক ওএস এক্স মাউন্টেন সিংহের সংস্করণটি এখনও 3.2 is আজকাল বেশিরভাগ লিনাক্স ডিস্ট্রিবিউশন 4.x সহ শিপিং করছে যাতে আপনি সংস্করণ 4 বৈশিষ্ট্যগুলি হারিয়ে যাবেন। বর্তমানে, হোমব্রু থেকে একটি কর্মসংস্থান হিসাবে সংস্করণ 4.2.45 উপলভ্য। মাভারিক্সে কী সংস্করণ রয়েছে তা আমি জানি না, আমি নিশ্চিত কেউ জানি না যে তাকে এখনও বলার অনুমতি দেওয়া হয়েছে।
অন্যদের দ্বারা উল্লিখিত হিসাবে, bashএকই bash(ইতিমধ্যে উল্লিখিত সংস্করণগুলি ব্যতীত) তবে ম্যাক ওএস এক্স একটি (বেশিরভাগ) বিএসডি ব্যবহারকারীল্যান্ড ব্যবহার করে। অনেকগুলি স্ট্যান্ডার্ড সিস্টেম ইউটিলিটির কিছুটা আলাদা বিকল্প রয়েছে বা কিছুটা ভিন্নভাবে আচরণ করে। দুর্ভাগ্যক্রমে তারা এখানে তালিকাবদ্ধ করার জন্য খুব বেশি।
ইনস্টল করুন homebrew (ক প্যাকেজ ম্যানেজার) তাহলে কিছু মৌলিক ইউটিলিটি GNU সংস্করণ ইনস্টল করা:
$ brew install coreutils
$ brew install gnu-sed
প্রতিটি ইনস্টলের পরে, এটি এমন পদক্ষেপগুলি প্রদর্শন করবে যাতে আপনি অনুসরণ করতে পারেন যাতে আপনি কেবল কল করতে পারেন dategdate উদাহরণস্বরূপ পরিবর্তে , যাতে আপনি এখনও কোনও পরিবর্তন ছাড়াই আপনার লিনাক্স ব্যাশ স্ক্রিপ্টগুলি ব্যবহার করতে পারেন।
অভিনন্দন, আপনি সবেমাত্র আপনার 99% ক্রস প্ল্যাটফর্মের স্ক্রিপ্টিং সমস্যা সমাধান করেছেন।
লিনাক্স থেকে ম্যাকের কাছে আসা একটি জিনিস হতাশার কারণ হতে পারে যে কোনও /procসিউডো-ফাইল সিস্টেম নেই। এটি আমার লিনাক্সের বেশ কয়েকটি স্ক্রিপ্টগুলি ভেঙে দিয়েছে এবং আপনি procআপনার ম্যাক ব্যাশ স্ক্রিপ্টে যে তথ্যটি পেয়েছেন একই তথ্য পাওয়ার উপযুক্ত উপায়গুলি খুঁজে পাওয়া জটিল trick
আমি একজন 'প্রধানত লিনাক্স, মাঝে মাঝে ম্যাক' ব্যবহারকারী এবং আমি এটি খুঁজে পাই:
বাশ, ~/.bashrcএবং ~/.bash_aliasesবেশিরভাগই একই কাজ করে।
আমি যে সমস্যাটি পেয়েছি তা হ'ল ম্যাকটিতে রঙিন প্রম্পটটি কার্যকর না করার পরিবর্তনের একটি কমান্ড। এটি এবং অন্যান্য অভিজ্ঞতা থেকে আমি আমার .bashrcফাইলটি সেট আপ করার সময় একটি টার্মিনাল উইন্ডো খোলা রাখতে এবং লগ ইন করতে শিখেছি । এটি ছিল আমি 'নতুন উইন্ডো' পরীক্ষা করতে এবং এখনও লগ ইন হওয়াতে কোনও ত্রুটি খুঁজে পেতে পারি।
psবিভিন্ন পতাকা রয়েছে, যেমন রয়েছেgrep)। আমার উবুন্টু স্ক্রিপ্টটি কেন আমার ম্যাকে একই আউটপুট তৈরি করছে না তা জানার চেষ্টা করার জন্য আমি কয়েকবার প্রাচীরের বিপরীতে মাথা বেঁধেছি।