ব্যাশে pathmunge(), যেমন একটি সাধারণ ক্রিয়াকলাপ যেমন / ইত্যাদি / বাশআরসিআরসি প্রয়োগ করা হয় , PATHএটি ইতিমধ্যে উপাদানগুলির মধ্যে তালিকাভুক্ত না থাকলে কোনও পথ সংযোজন বা প্রিপেন্ড করে PATH।
উদাহরণ:
$ echo $PATH
/bin:/usr/bin
$ pathmunge /home/me/bin
$ echo $PATH
/home/me/bin:/bin:/usr/bin
$ pathmunge /home/me/bin
$ echo $PATH
/home/me/bin:/bin:/usr/bin
পাথ যুক্ত করার নিখুঁত উপায় নিম্নলিখিত হিসাবে থাকবে:
$ echo $PATH
/bin:/usr/bin
$ PATH=/home/me/bin:$PATH
$ echo $PATH
/home/me/bin:/bin:/usr/bin
$ PATH=/home/me/bin:$PATH
$ echo $PATH
/home/me/bin:/home/me/bin:/bin:/usr/bin
আমি সিএসএস সম্পর্কে খুব কম জানি, এবং আমি কেবল এই সাধারণ জিনিসটি করতে চাই: তালিকায় ইতিমধ্যে এটি না থাকলে একটি পথ যুক্ত করুন। আমি সচেতন যে csh এর pathপরিবর্তে ব্যবহার করে PATHএবং এটি হ'ল যথাযথ csh অ্যারে।
হতে পারে সিএসএসের মতো কিছু অ্যারের ফাংশন রয়েছে if !(foobar in $path) then blahযা একটি pathmunge()অযৌক্তিকর মতো ফাংশন করে । সেক্ষেত্রে, এটি সঠিক উত্তর।
echo $PATH | grep /home/me/binতবে আপনি রিটার্ন কোডটি চেক করতে পারেন এবং নতুন পথটি কেবলমাত্র এটি শূন্য নয় (যেমন স্ট্রিংটি পাওয়া যায় নি) যুক্ত করতে পারেন।
csh, কেউ যদি আপনার উদ্দেশ্য কী তা জিজ্ঞাসা করে (যদি এটি প্রশ্নটিতে বর্ণিত না হয়) তবে আপনি এই আদেশটি ব্যবহার করার চেয়ে ভাল উত্তর পেতে পারেন। এটি তাদের কম বৈধ করে না, তবে আপনি চিহ্নিত করতে পারেন যে আপনি সেই নির্দিষ্ট কমান্ডটি ব্যবহার করছেন।
:$PATH:এবং একটি caseবিবৃতি যা *:$1:*কোনও মিল না করে কোনও মিল না করে। যেহেতু csh অ্যারেগুলিকে সমর্থন করে আমি আশা করছি সেখানে প্রকৃত অ্যারে অপারেটর রয়েছে, দুর্ভাগ্যক্রমে ম্যান পেজ এবং tcsh.org উইকি "অ্যারে", "তালিকা" বা "সিকোয়েন্স" এ নীরব রয়েছে, তারা ব্যতীত যে এগুলি বা সেই বিশেষ ভেরিয়েবলটি একটি অ্যারে।