কীভাবে আমার নিজস্ব প্রোগ্রামটির পথ নির্দিষ্ট করে না চালানো যায়


11

ধরা যাক আমি কিছু সংকলন করেছি এবং আমি এটির মতো চালিয়েছি:

$ /path/to/my/executable/mycmd
Hello World

এটি চালানোর জন্য আমার কী করা দরকার

$ mycmd
Hello World 

আমার কম্পিউটারের কোথাও থেকে?

উত্তর:


15

আপনি যা খুঁজছেন তা PATHপরিবেশগত পরিবর্তনশীল। এটি শেলটি জানায়, যেখানে প্রোগ্রামগুলির সন্ধান করা প্রয়োজন। আপনি এই পরিবর্তনশীলটির বর্তমান মানটি ব্যবহার করে দেখতে পারেন echo:

echo "$PATH"

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

  1. আপনার সিস্টেম প্যাকেজগুলি থেকে ইনস্টল করা কোনও ফাইল রাখে না এমন স্থানে প্রোগ্রাম সিস্টেম-ওয়াইড ইনস্টল করুন। বেশিরভাগ সিস্টেমে এ জাতীয় "নিরাপদ" ফোল্ডার অন্তর্ভুক্ত থাকে /usr/local/bin/এবং /opt/bin/- সেগুলি ইতিমধ্যে আপনার মধ্যে থাকা উচিত PATH। (এই ফোল্ডারগুলির ভিতরে দেখুন এবং সেগুলিতে যদি অনেকগুলি ফাইল থাকে তবে আপনার নিজের প্রোগ্রাম স্থাপনের জন্য এটি ভুল জায়গা এবং আপনার নিজের তালিকাভুক্ত অন্যান্য ফোল্ডারগুলিও দেখতে হবে PATH))
  2. আপনার PATHপরিবর্তনশীল পরিবর্তন করুন । এটি কম সুরক্ষিত, কারণ এটি অতিরিক্ত ফোল্ডারগুলি সংজ্ঞায়িত করে যেখানে প্রোগ্রামগুলি রাখা যেতে পারে এবং কেউ আপনাকে চালাতে পারে, আপনার নিজের প্রোগ্রাম চালানোর জন্য সেখানে রাখে।

    আপনি PATHঅস্থায়ীভাবে ব্যবহার করে ভেরিয়েবলটি পরিবর্তন করতে পারেন

    export PATH="$PATH:/path/to/your/executable"
    

    ( $PATH পরে মনে রাখবেন =) বা স্থায়ীভাবে আপনার .bashrcফাইলে উপরের লাইনটি যুক্ত করে (আপনি ব্যবহার করে ধরে নিচ্ছেন bash)।

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