ক্ষয় ইতিমধ্যে আপনার নির্দিষ্ট প্রশ্নের উত্তর দিয়েছে। তবে এটি একটি zsh
প্রশ্ন এবং সম্পর্কে PATH
। সুতরাং এখানে অন্য একটি বিষয়: মান ভেরিয়েবল পাশাপাশি $PATH
, এছাড়াও আছে $path
, যা একটি অ্যারে। এখানে আপনি পার্থক্যটি দেখতে পাচ্ছেন (কলোন না না ...):
$ print $PATH
/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin
$print $path
/bin /usr/bin /usr/local/bin /usr/X11R6/bin
দুটি রূপই স্বয়ংক্রিয়ভাবে সিঙ্কে রাখা হয়। সুতরাং, একটি অ্যারে ব্যবহার করে কি সুবিধা?
- পরবর্তীটি আপনি
typeset -U path
"প্রতিটি সদৃশ মানের প্রথম উপস্থিতি রাখুন" (থেকে man zshbuiltins
) এর মাধ্যমে ঘোষণা করতে পারেন । এর অর্থ এটি আপনার পথটিকে পরিষ্কার রাখে, এমনকি আপনি যদি ক্রমাগত উত্স উত্পন্ন করেন ~/.zshrc
(কারণ আপনি এটি বা যে কোনও কিছু পরিবর্তন করেছেন) এবং বারবার একই মানগুলির সাথে বিশৃঙ্খলা না করে।
- আপনি
path+=(/new/path)
আপনার রাস্তায় একটি নতুন ডিরেক্টরি যুক্ত করতে ব্যবহার করতে পারেন । কোনও উপাদান মুছে ফেলার জন্য আপনাকে কয়েকটি কৌশল ব্যবহার করতে হবে, দেখুন /programming//q/3435355/2037712 বা http://www.zsh.org/mla/users//2005/msg01132.html
- আপনি সহজেই PATH এর মাধ্যমে উপাদানগুলির উপর লুপ করতে পারেন
for i ($path) { print $i # or do something else }
অবশেষে, আমার কনফিগারেশনের একটি অংশ এখানে দেওয়া হয়েছে:
typeset -U path
path=(/new/path1
/new/path2
$path)
export PATH
.zshenv
।