নিম্নলিখিতগুলির সাথে আমার একটি বাশ স্ক্রিপ্ট রয়েছে:
#!/bin/bash -e
egrep "^username" /etc/passwd >/dev/null
if[ $? -eq 0 ]
then
echo "doesn't exist"
fi
এই স্ক্রিপ্টটি -e ছাড়া চলবে না। -e
এই স্ক্রিপ্টটির জন্য কী করে ? এছাড়াও, $?
এই প্রসঙ্গে কী করে?
-e
অধীনে নথিভুক্ত করা হয় set
।
if egrep -q "^username" /etc/passwd ; then echo "doesn't exist" ; fi
if
এবং এর মধ্যে একটি জায়গা মিস করছেন [
। এই স্ক্রিপ্টটি সাথে কাজ করবে না -e
, কারণ স্ক্রিপ্টের grep
অধীনে কিছু না -e
পেলে ঠিক সেখানেই শেষ হয়ে যাবে। ছাড়া -e
, আপনি বার্তাটি পিছনের দিকে পেয়েছেন: 0 এর একটি স্ট্যাটাস ( $?
) এর অর্থ গ্রিপ ব্যবহারকারীকে খুঁজে পেয়েছিল। নোট করুন যে এটি হতে হবে `গ্রেপ '^ ব্যবহারকারীর নাম:', যাইহোক (দীর্ঘ নাম সহ অন্য কোনও ব্যবহারকারী যদি থাকে তবে কী হবে)।
#/bin/bash -e
হিসাবে একই প্রভাব #/bin/bash
লাইন # 1 এবং set -e
# 2 লাইনে?
-e
ব্যক্তি পৃষ্ঠা থেকে (আমি সত্যিই একটি উত্তর ঠিকানা এই দেখতে চাই)।$?
সর্বশেষ প্রস্থান কোড রয়েছে (egrep
উপরে উত্পন্ন প্রক্রিয়াটি)।