ব্যাশে বিস্মৃত চিহ্ন সহ চলক প্রতিস্থাপন


46

আমার .cfg বাশ স্ক্রিপ্ট ফাইলটিতে নিম্নলিখিত লাইন রয়েছে

DDF_SOURCE="siebel_DATA_DATE_FORMAT"
DATA_DATE_FORMAT=${!DDF_SOURCE}

কিভাবে ${!DDF_SOURCEমূল্যায়ন করা হয়? এটা হতে পারে !siebel_DATA_DATE_FORMAT, যা আমার কাছে বোঝায় না।

উত্তর:


65

এটা একটা হয় পরোক্ষ সম্প্রসারণ , এ নথিভুক্ত man bashঅধ্যায় সম্প্রসারণ , উপধারা প্যারামিটার সম্প্রসারণ :

যদি প্যারামিটারের প্রথম অক্ষরটি একটি বিস্ময়বোধক বিন্দু (!) হয় তবে ভ্যারিয়েবল ইন্ডিরেশনের একটি স্তর চালু করা হয়। বাশ অন্যান্য প্যারামিটার থেকে গঠিত ভেরিয়েবলের মানটি ভেরিয়েবলের নাম হিসাবে ব্যবহার করে; এই পরিবর্তনশীলটি তখন প্রসারিত হয় এবং সেই মানটি প্যারামিটারের মানের পরিবর্তে বাকী বিকল্পে ব্যবহৃত হয়। এটি পরোক্ষ সম্প্রসারণ হিসাবে পরিচিত।

bash-4.2$ DDF_SOURCE="siebel_DATA_DATE_FORMAT"

bash-4.2$ siebel_DATA_DATE_FORMAT='Hello Indirect Redirection'

bash-4.2$ DATA_DATE_FORMAT=${!DDF_SOURCE} # siebel_DATA_DATE_FORMAT must get value before this line

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