কোনও কারণে এই অ্যাসাইনমেন্টটি: OUT=$(git describe HEAD)
স্টাডআউটে মুদ্রণ (উদাহরণস্বরূপ):fatal: No names found, cannot describe anything.
এটি কি স্বাভাবিক আচরণ? অন্যান্য আদেশের সাথে কেন এটি ঘটে না?
কোনও কারণে এই অ্যাসাইনমেন্টটি: OUT=$(git describe HEAD)
স্টাডআউটে মুদ্রণ (উদাহরণস্বরূপ):fatal: No names found, cannot describe anything.
এটি কি স্বাভাবিক আচরণ? অন্যান্য আদেশের সাথে কেন এটি ঘটে না?
উত্তর:
এটি আসলে stderr
আউটপুট, না stdout
। একটি ইন্টারেক্টিভ টার্মিনাল থেকে একটি কমান্ড চালানোর সময়, উভয়ই stdout
এবং stderr
টার্মিনালে যেতে সেট করা হয়।
আপনি যদি stderr
নিজের ভেরিয়েবলের আউটপুট চেয়েছিলেন (যা আপনি সম্ভবত করেন না তবে তবে এটি) এটির stdout
মতো পুনর্নির্দেশ :
OUT=$(git describe HEAD 2>&1)
অথবা আপনি যদি না চান যে আপনার স্ক্রিপ্টটি চালাচ্ছেন সেই ব্যক্তি যদি stderr
আউটপুটটি দেখতে পায় তবে এটিকে এভাবে ফেলে দিন:
OUT=$(git describe HEAD 2>/dev/null)