কিভাবে 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.