কীভাবে স্থায়ীভাবে লিনাক্স / ইউনিক্সে $ PATH সেট করবেন?


879

আমি আমার পথে একটি ডিরেক্টরি যুক্ত করার চেষ্টা করছি যাতে এটি সর্বদা আমার লিনাক্সের পথে থাকবে। আমি চেষ্টা করেছিলাম:

export PATH=$PATH:/path/to/dir

এটি কাজ করে, তবে প্রতিবারই আমি টার্মিনালটি থেকে বের হয়ে একটি নতুন টার্মিনাল উদাহরণ শুরু করি, এই পথটি হারিয়ে গেছে এবং আমাকে আবার এক্সপোর্ট কমান্ড চালাতে হবে।

আমি কীভাবে এটি করতে পারি যাতে এটি স্থায়ীভাবে সেট হয়ে যায়?

উত্তর:


229

এটি করার একাধিক উপায় রয়েছে। আসল সমাধান উদ্দেশ্য উপর নির্ভর করে।

পরিবর্তনশীল মানগুলি সাধারণত নির্ধারিত তালিকা বা শেল স্ক্রিপ্ট যা সিস্টেম বা ব্যবহারকারী সেশনের শুরুতে সঞ্চালিত হয় তা সংরক্ষণ করা হয়। শেল স্ক্রিপ্টের ক্ষেত্রে আপনাকে অবশ্যই একটি নির্দিষ্ট শেল সিনট্যাক্স এবং exportবা setকমান্ড ব্যবহার করতে হবে ।

সিস্টেম প্রশস্ত

  1. /etc/environmentঅনন্য কার্যকারিতা তালিকা, রেফারেন্স অনুমতি দেয়। মত সিস্টেম-ব্যাপী ডিরেক্টরি যোগ করার জন্য পারফেক্ট /usr/local/something/binকরার জন্য PATHপরিবর্তনশীল বা সংজ্ঞায়িত JAVA_HOME। পিএএম এবং সিস্টেমডি দ্বারা ব্যবহৃত।
  2. /etc/environment.d/*.confঅনন্য কার্যকারিতা তালিকা, রেফারেন্স অনুমতি দেয়। মত সিস্টেম-ব্যাপী ডিরেক্টরি যোগ করার জন্য পারফেক্ট /usr/local/something/binকরার জন্য PATHপরিবর্তনশীল বা সংজ্ঞায়িত JAVA_HOME। কনফিগারেশনটি একাধিক ফাইলগুলিতে বিভক্ত হতে পারে, সাধারণত প্রতিটি সরঞ্জাম প্রতি একটি (জাভা, গো, নোডজেএস)। সিস্টেমডি দ্বারা ব্যবহৃত যা ডিজাইন অনুসারে ব্যবহারকারীর লগইন শেলগুলিতে সেই মানগুলি পাস করে না।
  3. /etc/xprofileএক্স উইন্ডো সিস্টেম সেশন শুরু করার সময় শেল স্ক্রিপ্ট কার্যকর করা হয়েছিল। এটি প্রতিটি ব্যবহারকারীর জন্য চালিত হয় যা এক্স উইন্ডো সিস্টেমে লগইন করে। এটি PATHপ্রতিটি ব্যবহারকারীর মতো বৈধ এমন এন্ট্রিগুলির জন্য একটি ভাল পছন্দ /usr/local/something/bin। ফাইলটি অন্য স্ক্রিপ্টের সাথে অন্তর্ভুক্ত করা হয়েছে সুতরাং আপনার পিসিক্স শেল সিনট্যাক্সটি ব্যবহার করুন যা আপনার ব্যবহারকারীর শেলের সিনট্যাক্স নয়।
  4. /etc/profileএবং /etc/profile.d/*শেল স্ক্রিপ্ট। এটি কেবল শেল-সিস্টেমের জন্য একটি ভাল পছন্দ। এই ফাইলগুলি কেবল লগইন মোডে শেল দ্বারা পঠিত হয়।
  5. /etc/<shell>.<shell>rc। শেল লিপি। এটি একটি দুর্বল পছন্দ কারণ এটি একক শেল নির্দিষ্ট। অ-লগইন মোডে ব্যবহৃত।

ব্যবহারকারী সেশন

  1. ~/.pam_environment। অনন্য কার্যকারিতা তালিকা, কোনও রেফারেন্স অনুমোদিত নয়। এক্স এক্স উইন্ডো সিস্টেম সেশন বা শেল হলে প্রতিটি ব্যবহারকারীর সেশনটি অপ্রাসঙ্গিক শুরুতে পিএএম দ্বারা লোড করা হয়। আপনি সহ অন্যান্য ভেরিয়েবল উল্লেখ থাকতে পারে না HOMEবা PATHতাই এটি সীমিত ব্যবহারের হয়েছে। পিএএম দ্বারা ব্যবহৃত
  2. ~/.xprofileশেল লিপি। এক্স এক্স উইন্ডো সিস্টেম সিস্টেমে লগইন করার সময় এটি কার্যকর করা হয়। এখানে বর্ণিত পরিবর্তনশীলগুলি প্রতিটি এক্স অ্যাপ্লিকেশনটিতে দৃশ্যমান। ব্যাপ্ত জন্য পারফেক্ট পছন্দ PATHযেমন মান ~/binবা ~/go/binঅথবা ব্যবহারকারীর নির্দিষ্ট সংজ্ঞা GOPATHবা NPM_HOME। ফাইলটি অন্য স্ক্রিপ্টের সাথে অন্তর্ভুক্ত করা হয়েছে সুতরাং আপনার পিসিক্স শেল সিনট্যাক্সটি ব্যবহার করুন যা আপনার ব্যবহারকারীর শেলের সিনট্যাক্স নয়। শর্টকাট দিয়ে শুরু করা আপনার গ্রাফিকাল পাঠ্য সম্পাদক বা আইডিই সেই মানগুলি দেখতে পাবে।
  3. ~/.profile, ~/.<shell>_profile, ~/.<shell>_loginশেল স্ক্রিপ্ট। এটি কেবলমাত্র টার্মিনাল বা টার্মিনাল এমুলেটর থেকে শুরু হওয়া প্রোগ্রামগুলির জন্য দৃশ্যমান হবে। এটি কেবল শেল-সিস্টেমের জন্য একটি ভাল পছন্দ। লগইন মোডে শেল দ্বারা ব্যবহৃত।
  4. ~/.<shell>rc। শেল লিপি। এটি একটি দুর্বল পছন্দ কারণ এটি একক শেল নির্দিষ্ট। অ-লগইন মোডে শেল দ্বারা ব্যবহৃত।

মন্তব্য

জিনোম অন ওয়েল্যান্ড পরিবেশটি পেতে ব্যবহারকারী লগইন শেল শুরু করে। এটা তোলে কার্যকরভাবে লগ-ইন শেল কনফিগারেশনের ব্যবহার ~/.profile, ~/.<shell>_profile, ~/.<shell>_loginফাইল।

সারগ্রন্থ

  • পরিবেশ
  • environment.d
  • সজোরে আঘাত
  • হানাহানি

বিতরণ নির্দিষ্ট ডকুমেন্টেশন

সম্পর্কিত

লগইন শেল এবং নন-লগইন শেলের মধ্যে পার্থক্য?


4
বিস্তারিত উত্তরের জন্য আপনাকে ধন্যবাদ, এটি উচ্চতর হওয়া উচিত। হয়তো .bash_profileপাশাপাশি তালিকায় যুক্ত করা উচিত?
জেমস কো

2
@ জামেসকো যা 4 নম্বরে ছিল
trve.fa7ad

1
আমি মনে করি সেরা উত্তরটি প্রস্তাবিত /etc/environment। তবে আমি কি লগ আউট না করে এবং তা সতেজ করতে পারি? কখনও কখনও আমি ব্যাশ বা শ ব্যবহার করি না তাই source /etc/environmentকাজ করে না।
banan3'14

2
দুর্দান্ত এবং আমার মতে সর্বাধিক সম্পূর্ণ উত্তর। অনেক বেশি হওয়া উচিত।
পিটার গ্লোর

2
আমার এই বিষয়টি অনুসন্ধান করার কারণটি আসলে ছিল Go খুশী হয়ে আমি একা নই যে বুঝতে পেরেছিলাম যে .বাশার্ক সঠিক জায়গা নয়। ;)
পিটার গ্লার

1039

আপনার এটি আপনার ~/.profileবা ~/.bashrcফাইলে যুক্ত করতে হবে। 

export PATH="$PATH:/path/to/dir"

আপনি যা করছেন তার উপর নির্ভর করে আপনি বাইনারিগুলিতেও সিমলিংক করতে পারেন:

cd /usr/bin
sudo ln -s /path/to/binary binary-name

মনে রাখবেন যে সেশনটির অবশিষ্ট অংশগুলির জন্য এটি স্বয়ংক্রিয়ভাবে আপনার পথ আপডেট করবে না। এটি করতে, আপনার চালানো উচিত:

source ~/.profile 
or
source ~/.bashrc

11
প্রশ্ন কয়েক। 1) $PATHএবং এর মধ্যে কোলন থাকা উচিত নয় /usr/bin। 2) /usr/binএমনকি সেখানে থাকা উচিত। 3) আপনি বরং ব্যবহার করা উচিত /usr/local/bin?
বাটান্দোয়া

197
দয়া করে নোট করুন : আপনার ব্যাশ পাঠের শেষে একটি পিছনের কোলন ছেড়ে যাওয়ার জন্য এটি প্রায়শই একটি সুরক্ষা গর্ত হিসাবে বিবেচিত হয় কারণ এটি এটি তৈরি করে যাতে বাশ বর্তমান ডিরেক্টরিটিতে এটি সন্ধান করতে পারে যদি নির্বাহযোগ্যকে খুঁজে না পায়। যে ব্যবহারকারীরা এই পোস্টটি আরও তথ্যের সন্ধান করছেন এটি তাদের পরামর্শ দেওয়া উচিত।
erewok

51
@ অ্যাডামরবার্টসন এটি অনিরাপদ- যখন আপনি কোনও টারবাল আনপ্যাক করেন তখন দৃশ্যের বিষয়টি বিবেচনা করুন, তারপরে cdযে ডিরেক্টরিটি আপনি এটি প্যাক করেছেন, সেখানে চালনা করুন ls--- এবং তারপরে বুঝতে পারবেন যে টারবালটিতে একটি দূষিত প্রোগ্রাম বলা lsহয়েছিল।
লিলি চুং

21
আমার জন্য এটি ছিল .বাশ_প্রোফাইল, প্রোফাইলে নয়। দেখে মনে হচ্ছে এটি সবার জন্য আলাদা।
donquixote

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

243

উবুন্টুতে, সম্পাদনা করুন /etc/environment। এর একমাত্র উদ্দেশ্য হল পরিবেশের ভেরিয়েবলগুলি সংরক্ষণ করা। মূলত এখানে $ PATH ভেরিয়েবল সংজ্ঞায়িত করা হয়। এটি আমার /etc/environmentফাইলের একটি পেস্ট :

PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"

সুতরাং আপনি এই ফাইলটিকে মূল হিসাবে খোলার জন্য এবং যা খুশি তা যুক্ত করতে পারেন।

তাত্ক্ষণিক ফলাফলের জন্য, চালান (সাধারণ ব্যবহারকারী এবং মূল হিসাবে চেষ্টা করুন ):

source /etc/environment && export PATH

হালনাগাদ:

আপনি যদি zsh(ওরফে জেড শেল) ব্যবহার করেন তবে মন্তব্যগুলির ঠিক পরে এই লাইনটি যুক্ত করুন /etc/zsh/zshenv:

source /etc/environment

আমি উবুন্টু 15,10 উপর এই সামান্য ছল সম্মুখীন, কিন্তু যদি আপনার zsh সঠিক পাচ্ছেন না পাথ , এই হতে পারে কেন


13
সমস্ত সিস্টেমে / ইত্যাদি / পরিবেশ নেই
ব্যবহারকারী 3439968

9
এফডাব্লুআইডাব্লুটি আর্চ লিনাক্সেও $PATHসংজ্ঞায়িত করা /etc/profileহয়েছে।
স্পারহক

3
@ ই-সুশী আমি আসলে তাতে হতবাক হয়েছি। আমি নিজে 14.04.1 এ উবুন্টুতে আছি। এবং আমি আপনাকে প্রতিজ্ঞা করতে পারেন ফাইলের মধ্যে নির্মিত এসে।
trve.fa7ad

2
সূর্যের নীচে কিন্তু / ইত্যাদি / পরিবেশের অধীনে প্রতিটি পরামর্শ চেষ্টা করার পরে এবং সেগুলি সব কাজ না করে অবশেষে আমি এটিকে হোঁচট খেয়েছি। আমি উবুন্টু 14.04 এও আছি এবং এটিই কেবলমাত্র পুনরায় বুট করার পরে প্যাথএইচ পরিবর্তনশীল।
চকোমোনকি

4
পরিবেশের ফাইল আপডেট করার পরে ব্যবহারকারীর পিসি পুনরায় চালু করা উচিত।
হরিশ_এন

70

exportঘোষণাটি রাখুন ~/.bashrc। আমার .bashrc এ এতে রয়েছে:

export PATH=/var/lib/gems/1.8/bin:/home/fraxtil/.bin:$PATH

7
পুনঃসূচনা দরকার?
ক্লিক করুন

2
আমি এটি .profile'এর মধ্যে রাখার পরে কাজ করেছি , খুঁজে পেলাম না.bashrc
1'13

এটি সঠিক সিস্টেমের উপর নির্ভরশীল হতে পারে; আমি নিশ্চিত না ঠিক কোনটি শর্ত নির্ধারণ করে কোন ফাইলটি কার্যকর করা হয়েছে। সমস্যাটি সমাধান হলেও খুশী।
ফ্রেমস্টিল

12
@ ক্লিক ক্লিক আপভোট কনফিগারেশন source ~/.bashrcপুনরায় লোড করার জন্য আপনাকে যা করতে হবে .bashrc। তারপরে এটি কাজ করবে
বিগস্যাক

4
exportকীওয়ার্ডটি কেবল তখনই প্রয়োজন হয় যদি PATHইতিমধ্যে পরিবেশের পরিবর্তনশীল হিসাবে পতাকাঙ্কিত না করা হয় - এটি প্রায় নিঃশর্তভাবে হবে। কেবল PATH=/var/lib/gems/1.8/bin:/home/fraxtil/.bin:$PATHএকই প্রভাব হবে।
চার্লস ডাফি 17

30

আপনি $PATHস্থায়ীভাবে 2 উপায়ে সেট করতে পারেন ।

  1. নির্দিষ্ট ব্যবহারকারীর জন্য পথ নির্ধারণ: আপনার ব্যবহারকারীর .bash_profileহোম ডিরেক্টরিতে প্রবেশের প্রয়োজন হতে পারে ।

    যেমন আমার ক্ষেত্রে আমি টমক্যাট ব্যবহারকারী প্রোফাইলে জাভা পাথ সেট করব

    [tomcat]$ echo "export PATH=$PATH:/path/to/dir" >> /home/tomcat/.bash_profile
  2. সমস্ত সিস্টেম ব্যবহারকারীদের জন্য সাধারণ পাথ সেট করতে আপনার এই জাতীয় পথ নির্ধারণ করতে হতে পারে:

    [root~]# echo "export PATH=$PATH:/path/to/dir" >> /etc/profile

3
আপনার ডিস্ট্রোতে ফাইলটির নাম দেওয়া /etc/profilesআছে s? আমার নেই s। আমার মনে হয় আপনার টাইপো আছে
ক্রিস জনসন

3
আপনি সম্ভবত প্রোফাইল ফাইলটিতে লিখতে চলেছেন escape উদাহরণস্বরূপ প্রতিধ্বনি "এক্সপোর্ট PATH = AT AT पथ: / পথ / থেকে / দির" >> / ইত্যাদি / প্রোফাইল, সেই স্ক্রিপ্টটি যখন এটির মানের উপর ভিত্তি করে আক্ষরিক মানকে সেট করার পরিবর্তে চলতে থাকে তখন আপনি চলকের সাথে সংযুক্ত হন way এই প্রাথমিক কমান্ড কার্যকর করার সময়।
বুভিনে

15

আপনি স্থানীয় ব্যবহারকারীর জন্য সেন্টোস বা আরএইচইএল এ ব্যবহার করতে পারেন:

echo $"export PATH=\$PATH:$(pwd)" >> ~/.bash_profile

এটি PATH- এ বর্তমান ডিরেক্টরিটি যুক্ত করুন (বা আপনি অন্যান্য ডিরেক্টরি ব্যবহার করতে পারেন) এটি স্থায়ী করে তোলে তবে পরবর্তী ব্যবহারকারী লগনে কার্যকর হয়।

আপনি যদি পুনরায় লগইন করতে না চান তবে ব্যবহার করতে পারেন:

source ~/.bash_profile

# User specific environment and startup programsএই মন্তব্যটি উপস্থিত থাকা পুনরায় লোড করুন.bash_profile


12

আপনি এই ফাইলগুলির মধ্যে একটি সম্পাদনা করে স্থায়ীভাবে সেট করতে পারেন:

/etc/profile (সকল ব্যবহারকারীর জন্য)

~/.bash_profile (বর্তমান ব্যবহারকারীর জন্য)

~/.bash_login (বর্তমান ব্যবহারকারীর জন্য)

~/.profile (বর্তমান ব্যবহারকারীর জন্য)

আপনি /etc/environmentস্থায়ী PATH এনভায়রনমেন্ট ভেরিয়েবল সেট করতেও ব্যবহার করতে পারেন তবে এটি ভেরিয়েবল সম্প্রসারণ সমর্থন করে না

থেকে নেওয়া হয়েছে: http://www.sysadmit.com/2016/06/linux-anadir-ruta-al-path.html


7

আমি গতকাল এই প্রশ্নটিতে হোঁচট খেয়েছি যখন আমার নিজের স্ক্রিপ্টগুলি প্যাথ-এ যুক্ত করতে একটি ফোল্ডার যুক্ত করার উপায় অনুসন্ধান করছিলাম - এবং আমার নিজের ~/.profileফাইলটি (লিনাক্স মিন্টে 18.1 এ) ইতিমধ্যে এটি রয়েছে তা জানতে পেরে অবাক হয়েছিল :

# set PATH so it includes user's private bin if it exists
if [ -d "$HOME/bin" ] ; then
    PATH="$HOME/bin:$PATH"
fi

সুতরাং, আমাকে যা করতে হয়েছিল তা হ'ল ফোল্ডারটি তৈরি ~/binকরা এবং আমার স্ক্রিপ্টগুলি সেখানে।


7

আমি মনে করি সবচেয়ে মার্জিত উপায় হ'ল:

এটিকে ~ / .bashrc ফাইলে যুক্ত করুন এই কমান্ডটি চালান

gedit ~ / .bashrc

এটির ভিতরে আপনার পথ যুক্ত করুন

PATH = AT PATH: / opt / node / bin রফতানি করুন

2.সূত্র। / .Bashrc

(উবুন্টু)


6

আপনি সেই লাইনটি আপনার কনসোল কনফিগার ফাইলে (যেমন .bashrc) যোগ করতে পারেন


2
আমার কাছে এই ফাইলগুলির মধ্যে /home/(username)
একটিও নেই

3
@ ক্লিকউপভোট: আপনি কোন শেল ব্যবহার করেন? (এবং বিন্দু দিয়ে শুরু হওয়া ফাইলগুলি গোপন রয়েছে, ls -aসেগুলি দেখার মতো আপনার প্রয়োজন ))
ডেভিড শোয়ার্টজ

যদি আপনার কাছে সেগুলির কোনও ফাইল না থাকে (বাশার্ক বা প্রোফাইল) আপনি ম্যানুয়ালি এগুলি তৈরি করতে পারেন এবং সেগুলি স্বয়ংক্রিয়ভাবে ব্যবহৃত হবে
trve.fa7ad

4

স্থায়ীভাবে PATH ভেরিয়েবল যুক্ত করুন

বিশ্ব:

echo "export PATH=$PATH:/new/path/variable" >> /etc/profile

স্থানীয় (শুধুমাত্র ব্যবহারকারীর জন্য):

echo "export PATH=$PATH:/new/path/variable" >> ~/.profile

জন্য বিশ্বব্যাপী পুনরায় আরম্ভ করুন। জন্য স্থানীয় আবার লগইন করুন।

উদাহরণ

আগে:

$ cat /etc/profile 

#!/bin/sh

export PATH=/usr/bin:/usr/sbin:/bin:/sbin

পরে:

$ cat /etc/profile 

#!/bin/sh

export PATH=/usr/bin:/usr/sbin:/bin:/sbin
export PATH=/usr/bin:/usr/sbin:/bin:/sbin:/new/path/variable

বিকল্পভাবে আপনি কেবল প্রোফাইল সম্পাদনা করতে পারেন:

$ cat /etc/profile 

#!/bin/sh

export PATH=/usr/bin:/usr/sbin:/bin:/sbin:/new/path/variable

অন্য উপায় (ধন্যবাদ gniourf_gniourf):

echo 'PATH=$PATH:/new/path/variable' >> /etc/profile

আপনার এখানে ডাবল কোট ব্যবহার করা উচিত নয়! প্রতিধ্বনি 'এক্সপোর্ট PATH = $ PATH: / new / পাথ / ভেরিয়েবল' ... এবং যাইহোক, রফতানি কীওয়ার্ডটি খুব সম্ভবত অকেজো কারণ প্যাথ ভেরিয়েবলটি ইতিমধ্যে রফতানি হিসাবে চিহ্নিত হয়েছে marked - gniourf_gniourf


1
নাঃ। আপনার এখানে ডাবল কোট ব্যবহার করা উচিত নয়! echo 'export PATH=$PATH:/new/path/variable'... এবং exportযাইহোক , কীওয়ার্ডটি খুব সম্ভবত অকেজো কারণ PATHভেরিয়েবলটি সম্ভবত রফতানি হিসাবে চিহ্নিত হয়েছে।
gniourf_gniourf

নাহ, আপনার দ্বিগুণ উক্তি ব্যবহার করা উচিত কারণ single একক উদ্ধৃতিতে PATH আন্তঃবিবাহিত নয়। এবং বিটিডাব্লু রফতানিও দরকারী।
ব্যবহারকারী 3439968

আমি বুঝতে পেরেছি. আপনি ডাবল উদ্ধৃতি ব্যবহার করতে পারেন বা একক উদ্ধৃতি ব্যবহার করতে পারেন, কারণ প্রতিধ্বনি যখন ইকো কার্যকর হয় বা যখন / ইত্যাদি / প্রোফাইল কার্যকর হয় তখন ইন্টারপোল্ট হয় AT
ব্যবহারকারী 3439968

1
@ ব্যবহারকারী 3439968 আসলে, আপনি যদি একাধিক ফাইল থেকে AT PATH এ যুক্ত হন তবে ডাবল উদ্ধৃতিগুলি অনেকগুলি সমস্যার কারণ ঘটবে। বিবেচনা করুন: আপনি যখন ডাবল উদ্ধৃতি ব্যবহার করেন, তখন $ PATH সমস্ত পূর্বনির্ধারিত PATH ডিরেক্টরি সহ স্থির স্ট্রিংয়ে অনুবাদ হয়। /usr/localআপনি এটি ব্যবহার করে যোগ করুন বলে ~/.bashrc। এখন আপনি যদি /opt/binএকই ভেরিয়েবল ব্যবহার করে যুক্ত করতে চান /etc/bash.bashrc; AT পথ একই স্ট্যাটিক স্ট্রিংয়ে অনুবাদ করবে, ফলস্বরূপ $
পাথ সংযোজনের

4

1. / "ইত্যাদি / প্রোফাইল" ফাইলটি পরিবর্তন করুন।

#vi /etc/profile

সম্পাদনা স্থিতি প্রবেশ করতে এবং ফাইলের শেষে কার্সার সরানোর জন্য "i" কী টিপুন, অতিরিক্ত এন্ট্রি :

export PATH=$PATH:/path/to/dir;

"Esc" কী প্রস্থান সম্পাদনা স্থিতি টিপুন, ': wq' ফাইলটি সংরক্ষণ করুন।

2. কনফিগারেশন কার্যকর করুন

source /etc/profile

সমস্ত ফাইলের জন্য প্রোফাইল ফাইলটি কাজ করে ব্যাখ্যা করুন, আপনি যদি কেবলমাত্র সক্রিয় ব্যবহারকারীর জন্য বৈধ হতে চান তবে ".bashrc" ফাইলটি সেট করুন


4

এত গবেষণার পরে, আমি নিম্নলিখিত লিঙ্কটি দ্বারা অনুপ্রাণিত হয়ে এর জন্য একটি সহজ সমাধান খুঁজে পেয়েছি (আমি প্রাথমিক ওএস ব্যবহার করছি ) ।

সম্পাদনা মোডে .bashrc ফাইল খোলার জন্য নিম্নলিখিত কমান্ডটি চালান । [আপনি vi বা অন্য কোনও সম্পাদকও ব্যবহার করতে পারেন]।

~$ sudo nano ~/.bashrc

ফাইলের শেষে নীচের লাইনটি যুক্ত করুন এবং সংরক্ষণ করুন।

export PATH="[FLUTTER_SDK_PATH]/flutter/bin:$PATH"

উদাহরণ স্বরূপ :

export PATH="/home/rageshl/dev/flutter/bin:$PATH"

এখানে চিত্র বর্ণনা লিখুন

আমি বিশ্বাস করি উবুন্টু ডিস্ট্রোতে এলোমেলো পথে পথ নির্ধারণের এটি স্থায়ী সমাধান

আশা করি এটি সহায়ক হবে।


3

আপনি যে ফাইলগুলিতে রফতানি কমান্ড যুক্ত করেন তা নির্ভর করে আপনি লগইন-মোডে বা নন-লগইন-মোডে রয়েছেন।

আপনি যদি লগইন-মোডে থাকেন তবে যে ফাইলগুলি আপনি সন্ধান করছেন তা হ'ল / ইত্যাদি / বাশ বা /etc/bash.bashrc

আপনি যদি লগ-ইন-মোডে না থাকেন তবে আপনি ফাইল /.প্রোফাইলে বা /.profiles.d ডিরেক্টরিতে ফাইলগুলি সন্ধান করছেন

সিস্টেমের ভেরিয়েবলগুলি যদি উপরে বর্ণিত ফাইলগুলি।


3

যোগ /etc/profile.dস্ক্রিপ্ট ফোল্ডার [name_of_script].shলাইন দিয়ে: export PATH=$PATH:/dir/etc/profile.dফোল্ডারের মধ্যে থাকা প্রতিটি স্ক্রিপ্ট /etc/profileলগইন দ্বারা চালিত হয় ical


আপনার পরিবেশ কীভাবে কাস্টমাইজ করা যায় তার প্রস্তাবিত উপায়
ইউরি

1
এটি কেবলমাত্র যদি আপনি চান সেটিংসটি সিস্টেম-ব্যাপী, যা সম্ভবত সবচেয়ে সাধারণ ব্যবহারের ক্ষেত্রে না হয়। বেশিরভাগ লোকেরা স্থানীয়ভাবে এই পথটি নির্ধারণ করতে চায় (বা চাইবে), কারণ বেশিরভাগ ব্যবহারকারী / ভূমিকা প্রসঙ্গে বিভিন্ন অপারেশন করছেন এবং আপনি যত কম অনুমান করছেন তত ভাল।
এমপি চালিত

@ চালিত, হ্যাঁ, এটি কেবল সিস্টেম-ব্যাপী। আপনি যদি স্থানীয় পরিবর্তন PATH চান তবে আপনার export /। প্রোফাইল বা ~ / .bashrc এ একই রফতানি যুক্ত করা উচিত। এখানে আপনার বিবেচনা করা উচিত যে লগইন শেলগুলি ~ /। প্রোফাইল এবং ইন্টারেক্টিভ শেলগুলি ~ / .brcrc পড়ে read এটি অত্যন্ত গুরুত্বপূর্ণ কারণ উদাহরণস্বরূপ ssh কোনও লগইন করে না, সুতরাং ~ /। প্রোফাইলটি পড়বে না। / ইত্যাদি / প্রোফাইলে suse উত্স। / .Bashrc এর মতো বেশ কিছু বিচ্ছিন্নতা। তবে এটি সমস্ত লিনাক্সের জন্য সাধারণ নয় '
ইউরি

3

Zues77 সঠিক ধারণা আছে। ওপি "কীভাবে এই মাধ্যমে আমার উপায় হ্যাক করতে পারে" তা বলেনি। ওপি স্থায়ীভাবে কীভাবে $ পাথে যুক্ত হবে তা জানতে চেয়েছিলেন:

sudo nano /etc/profile

এটি এখানেই সমস্ত কিছুর জন্য সেট করা এবং প্রয়োজনীয় সমস্ত জিনিসের জন্য এটি পরিবর্তনের সেরা জায়গা $ পথ AT


3

আমার উত্তর সেটিং-আপ এর উল্লেখের মধ্যে রয়েছে go-langউপর Ubuntu linux/amd64.আমি এনভায়রনমেন্ট ভেরিয়েবল (পথ সেটিং একই কষ্ট সম্মুখীন GOPATHএবং GOBIN,) টার্মিনাল প্রস্থানে এটা হারানোর এবং ব্যবহার করে এটি পুনর্নির্মাণ source <file_name>প্রত্যেক time.The ভুল পথ করা ছিল ( GOPATHএবং GOBIN) ~/.bash_profileফোল্ডারে। কয়েক ভাল ঘণ্টা নষ্ট পর, আমি দেখা গেছে যে সমাধান করা ছিল GOPATHএবং GOBIN~/.bash_rcপদ্ধতিতে ফাইল:

export GOPATH=$HOME/go
export GOBIN=$GOPATH/bin
export PATH=$PATH:$GOPATH:$GOBIN

এবং এটি করে, গো ইনস্টলেশনটি ভাল কাজ করেছে এবং কোনও পথের ক্ষতি হয়নি।

সম্পাদনা 1: যে কারণে এই সমস্যাটি সম্পর্কিত হতে পারে তা হ'ল আপনার উবুন্টু টার্মিনাল বা জিনোম-টার্মিনালের মতো নন-লগইন শেলগুলির ~./bash_rcজন্য সেটিংস ফাইল থেকে নেওয়া হয় এবং লগইন শেলের জন্য সেটিংস ~/.bash_profileফাইল থেকে নেওয়া হয় এবং ~/.profileফাইল থেকে যদি ~/.bash_profileফাইলটি না পারা যায়।


3

ধরা যাক আপনি ম্যাকোএস চালাচ্ছেন এবং আপনার একটি বাইনারি রয়েছে যা আপনি বিশ্বাস করেন এবং আপনার সিস্টেম জুড়ে এটি সরবরাহ করতে চান তবে বাইনারিটি যে আপনার ডিরেক্টরিতে যোগ করা হবে সেই ডিরেক্টরিটি অবশ্যই চান না, আপনি অনুলিপি / সরানোর বিকল্প বেছে নিতে পারেন বাইনারিটি /usr/local/bin, যা ইতিমধ্যে আপনার পাঠে থাকা উচিত। এটি আপনার টার্মিনালে ইতিমধ্যে অ্যাক্সেস থাকতে পারে এমন অন্যান্য বাইনারিগুলির মতো বাইনারি কার্যকর করতে সক্ষম করবে।


3

এটি নিম্নলিখিত কমান্ডটি ব্যবহার করে সরাসরি যুক্ত করা যেতে পারে:

echo 'export PATH=$PATH:/new/directory' >> ~/.zshrc
source ~/.zshrc

2
প্রশ্নটি লেবেলযুক্ত bash, সুতরাং এটি খুব সহায়ক নয়।
লরেঞ্জ আলবে

2
এটি একটি বৈধ উত্তর -> শিরোনামটিতে কেবল লিনাক্সের কথা উল্লেখ করা হয়েছে, সুতরাং ব্যাশ এবং ALSO zshও করবে ... যদি ট্যাগিং কেবল "বাশ" হয় তবে ট্যাগগুলিতেও "zsh" যুক্ত করতে হবে
কার্লোস সালটোস

2

সর্বোত্তম সহজ উপায়টি হ'ল নিম্নলিখিত লাইনটি:
PATH="<directory you want to include>:$PATH"
হোম ডিরেক্টরিতে আপনার .bashrc ফাইলে।
আপনি টার্মিনালটি বন্ধ করে দিলে বা আপনার পিসি রিবুট করেও এটি পুনরায় সেট হবে না। এটি স্থায়ী


1
@ তবে আপনি যদি বলা হয় তা করেন তবে এটি আপনার সেটিংস স্থায়ীভাবে সেট করবে। আপনি টার্মিনালটি বন্ধ করলেও এটি কাজ করবে।
এডওয়ার্ড টরভাল্ডস

1

আমি মনে করি সবচেয়ে মার্জিত উপায় হ'ল:

এটি ~। / বাশার্ক ফাইলটিতে যুক্ত করুন

if [ -d "new-path" ]; then
  PATH=$PATH:new-path
fi

2.সূত্র। / .Bashrc

(উবুন্টু)


এবং উপরের পথটি প্রদর্শন করতে:
প্রিন্টফ

1

স্থায়ী পথ যোগ করার একটি উপায়, যা আমার পক্ষে কাজ করেছিল, তা হ'ল:

    cd /etc/profile.d
    touch custom.sh
    vi custom.sh 
    export PATH=$PATH:/path according to your setting/

আপনার কম্পিউটারটি পুনরায় চালু করুন এবং এখানে আমরা স্থায়ীভাবে চিয়ার্স করব path


আপনার কম্পিউটারটি পুনরায় চালু করার দরকার নেই। লগ আউট এবং আবার ফিরে প্রবেশ করা যথেষ্ট। এটি বেশ মার্জিত সমাধান কারণ ফাইলগুলি সম্পাদনা করার প্রয়োজন ছাড়াই কোনও পরিবর্তন ব্যাকআউট করা খুব সহজ। যদি একটি বিবৃতি নির্দিষ্ট করা যায় তবে এটি যদি সিস্টেমের মধ্যে কোনও ডিরেক্টরি উপস্থিত না থাকে তবে এটি PATH ভেরিয়েবলের সাথে যুক্ত হয় না।
ওয়ারউইক

0

ডিবিয়ান বিতরণের জন্য, আপনাকে:

    - edit ~/.bashrc  e.g: vim ~/.bashrc 
    - add export PATH=$PATH:/path/to/dir
    - then restart your computer. Be aware that if you edit ~/.bashrc  as root, your environment variable you added will work only for root

0

এটি ওয়ান-লাইনার । এটি একটি লাইন যুক্ত করে .bashrc। থা লাইনটি ডিরেক্টরিটি ইতিমধ্যে পথটিতে যুক্ত হয়েছে কিনা তা যাচাই করতে যাচ্ছে এবং না থাকলে সংযোজন করবে। এটি প্রতিবার আপনার উত্সটি উত্সের সময় আপনার ডিরেক্টরিটিকে অনুলিপি করা প্রতিরোধ করবে .bashrc

echo "[[ \":\$PATH:\" != *\":$(pwd)/path/to/add:\"* ]] && export PATH=\"\${PATH:+\${PATH}}:$(pwd)/path/to/add\"" >> ~/.bashrc

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