আমি কেবল একটি বাশ স্ক্রিপ্ট তৈরি করেছেন যা কেবল করে ls -l
।
ম্যাভারিক্স এবং ওএসএক্সের পুরানো সংস্করণগুলিতে আমি কেবল স্ক্রিপ্টে একটি সিমলিংক তৈরি করেছি এবং এটিতে রেখেছি /usr/bin
ফোল্ডার ( ln -s ll.sh /usr/bin/ll
) এবং আমি তারপর স্ক্রিপ্ট ব্যবহার করে নির্বাহ করতে পারে ll
কোন ফোল্ডার থেকে।
এল ক্যাপিটান আপগ্রেড করার পর থেকে আমি এই স্ক্রিপ্ট লোড করতে অক্ষম। আমি SIP নিষ্ক্রিয় করেছি যাতে আমি সিমলিংক তৈরি করতে সক্ষম হব এবং স্ক্রিপ্ট স্পষ্টভাবে কার্যকর হয়। অবস্থান ( /usr/bin
) অবশ্যই $ PATH তে এবং আমি এমনকি $ PATH তে স্ক্রিপ্টের জন্য একটি পথ যোগ করার চেষ্টা করেছি।
কিছুই কাজ মনে হচ্ছে, আমি পেয়ে যাচ্ছি -bash: ll: command not found
।
আমি $ PATH প্রতিটি আপডেটের পরে টার্মিনালটি পুনরায় চালু করেছি এবং আমি চেষ্টা করেছি source ~/.bash_profile
কিন্তু কোন পার্থক্য হয় না।
সম্পাদনা: আমি স্ক্রিপ্টগুলির বর্তমান ডিরেক্টরিটি $ PATH এ যোগ করার চেষ্টা করেছি এবং এটিও একই ত্রুটি প্রদান করে। শেষ পর্যন্ত আমি আমার সব স্ক্রিপ্ট aliased যাতে তারা চালানো হবে।
ll.sh
-script_ হয় করছে ls -l
তারপর আপনি একটি ব্যবহার করা উচিত উপনাম পরিবর্তে. সেট alias ll='ls -l'
মধ্যে ~/.profile
অথবা ~/.bash_profile
, যা আপনি ব্যবহার করছেন। দেখ 6.6 এলিয়াস মধ্যে বেস রেফারেন্স ম্যানুয়াল ।
ls -l
উদাহরণস্বরূপ, আমার বেশ কয়েকটি স্ক্রিপ্ট রয়েছে যা বিভিন্ন জিনিস করে। আমি তাদের সব জন্য একটি উপনাম করতে পারে কিন্তু আমি পূর্ববর্তী বাস্তবায়ন এখনও সম্ভব কিনা বিস্মিত। আমি .sh স্ক্রিপ্ট চালানো যদি এটা জরিমানা রান।
ll.sh
কেবল হতে হবে ll
। আমি একটি পৃথক ডিরেক্টরি আছে আমি আমার স্ক্রিপ্ট সব রাখা এবং যে ডিরেক্টরি পাথ নাম যোগ করুন $PATH
। আমার কাছে সেই ডিরেক্টরীতে 150 টি স্ক্রিপ্ট আছে এবং একটিতে এক্সটেনশান নেই তবে এটি সমস্ত এক্সিকিউটেবল। কিছু এমনকি আছে symlinks (ফাইন্ডার Aliases না, এবং সঙ্গে বিভ্রান্ত করা হবে না bash aliases ) সুবিধার জন্য টার্মিনাল টাইপ সংক্ষিপ্ততর নাম। এইভাবে আমার সমস্ত স্ক্রিপ্টগুলি আরো কেন্দ্রীয়ভাবে অবস্থিত এবং সিস্টেম এক্সিকিউটেবলগুলির সাথে মিশ্রিত হয় না।
ls -l /usr/bin/ll
?