আমার একটি পরিষেবা রয়েছে যা বুটে চলে এবং সেই পরিষেবাদিতে এটি পটভূমিতে একটি বাশ স্ক্রিপ্টকে কল করে যা কিছু পরিবেশের পরিবর্তনশীল রফতানি করে। আমার যে সমস্যাটি হচ্ছে তা হ'ল সেই পরিবেশের ভেরিয়েবলগুলি পটভূমি প্রক্রিয়াটির পিতামাতার কাছে প্রেরণ করা হচ্ছে না সুতরাং আমার স্ক্রিপ্টটি কার্যকর করার সাথে সাথেই তা চলে যায়।
তদ্ব্যতীত, স্ক্রিপ্টটি পরিষেবাটি চালুর পরে আবার একটি স্ক্রিপ্ট কল করে যা আমার কাছে থাকা একটি অ্যাপ্লিকেশন শুরু করে। এই অ্যাপ্লিকেশনটির সেই পরিবেশের ভেরিয়েবলগুলির অ্যাক্সেস দরকার।
আমি এটি চালিত আরএইচইএল সিস্টেমটি ব্যবহারকারীর দ্বারা কখনই লগইন করা উচিত নয়, এটি কেবল বুট হয়ে যায় এবং অ্যাপ্লিকেশনটি শুরু করে। আমি জানি একটি পিতা বা মাতা প্রক্রিয়ার জন্য যে পরিবেশের / শেল করতে পারবে না সত্যিই একটি শিশু পটভূমি প্রক্রিয়া শেল যদিও দ্বারা সেট করা যেতে।
আমার স্ক্রিপ্টের মাধ্যমে এটি করার জন্য আমার একটি উপায় প্রয়োজন যা আমার পরিষেবাতে ডেকে আনা হয় (যদিও ব্যাকগ্রাউন্ডে আবশ্যক নয়), সেগুলি আমার সেবারে যুক্ত করে না (যা আমার পক্ষে কাজ করে না) এবং না /etc/environment
বা কোনও স্টোরেজ করে নয় .profile
বা যে যেমন কিছু।
আমার পরিষেবাতে আমি পরিবেশের ভেরিয়েবলগুলি যুক্ত করার চেষ্টা করেছি (যদিও আমি এটি করতে চাই তা নয়):
export TEST=192.168.1.1
আমি আমার সেবায় এটিও চেষ্টা করেছি:
TEST=192.168.1.1
export TEST=${TEST}
আমি পরিবর্তন করার চেষ্টা করেছি যে কীভাবে আমার পরিষেবা বাশ স্ক্রিপ্টটিকে কল করে:
/bin/asdf/script &
আমিও স্ক্রিপ্ট গুন চেষ্টা যাতে এটি একই শেল (যা আমি থেকে পেয়েছেন রান এই ):
. ./bin/asdf/script
#I'm very confused why this didn't work
আমিও পাওয়া এই যা আকর্ষণীয় লাগছিল কিন্তু এটা সত্যিই আমার ক্ষেত্রে প্যান নি।