কিভাবে bash কমান্ডের জন্য একাধিক এনভ ভেরিয়েবল সেট করে


108

কমান্ড চালানোর আগে আমার EC2_Home এবং JAVA_Home ভেরিয়েবল সেট করার কথা রয়েছে (ec2- বর্ণনা-অঞ্চলগুলি)

আমি কীভাবে একসাথে করব?

উত্তর:


164

আপনি কমান্ডের আগে কমান্ড লাইনে একটি একক কমান্ডের জন্য ভারসাম সেট করতে পারেন:

$ EC2_HOME=/path/to/dir JAVA_HOME=/other/path ec2-describe-regions

পর্যায়ক্রমে, আপনি সেগুলি পরিবেশে রফতানি করতে পারেন, সেক্ষেত্রে সেগুলি ভবিষ্যতের সমস্ত আদেশের জন্য সেট করা থাকবে:

$ export EC2_HOME=/path/to/dir
$ export JAVA_HOME=/other/path
$ ec2-describe-regions

7
মনে রাখবেন, যদিও এটি অস্বাভাবিক মনে হলেও আপনি লিখতেও পারেন export EC2_HOME=/path JAVA_HOME=/path।
— উইলিয়াম পার্সেল

4
স্ক্রিপ্টগুলিতে ওয়ান-টাইম বিকল্পটি বেশ কার্যকর। রুট বা অন্য ব্যবহারকারীর হিসাবে কমান্ডটি প্রয়োগ করতে হবে এমন ব্যক্তির জন্য কেবল একটি নোট, ভেরিয়েবলগুলি সুডো বা ব্যবহারকারীর পরে আসতে হবে । উদাহরণস্বরূপsudo -u somebody CVSROOT=:ext:somebody@12.18.127.22:/usr/local/ncvs CVS_RSH=ssh cvs co my/dir/ancient-file.py
— Nagev

আপনি প্রিপেন্ডিংয়ের মাধ্যমে সরবরাহ করতে পারবেন এমন ভেরিয়েবলের সংখ্যার কি সীমা রয়েছে?
— স্যাম থমাস

সর্বাধিক কমান্ড লাইন দৈর্ঘ্যের সীমা, যা লিনাক্সে বেশ বড়।
— ক্রিস ডড

2

অন্যান্য * নিক্স সিস্টেম হিসাবে, আপনি নিজের হোম ডিরেক্টরিতে আপনার .bashrc ফাইলে নিম্নলিখিত হিসাবে ফাংশন যুক্ত করতে পারেন।

function startec2(){
    EC2_HOME=/path/to/dir
    JAVA_HOME=/other/path 
    ec2-describe-regions
}

এখন, আপনি নিম্নলিখিত কমান্ড দ্বারা আপনার প্রোগ্রাম শুরু করতে পারেন:

startec2

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