আমার একটি শেল স্ক্রিপ্ট রয়েছে যেখানে আমাদের নীচের লাইনগুলি রয়েছে if [ -z "$xyz" ]
এবং if [ -n "$abc" ]
তবে তাদের উদ্দেশ্য কী তা নিশ্চিত। কেউ দয়া করে ব্যাখ্যা করতে পারেন?
আমার একটি শেল স্ক্রিপ্ট রয়েছে যেখানে আমাদের নীচের লাইনগুলি রয়েছে if [ -z "$xyz" ]
এবং if [ -n "$abc" ]
তবে তাদের উদ্দেশ্য কী তা নিশ্চিত। কেউ দয়া করে ব্যাখ্যা করতে পারেন?
উত্তর:
আপনি এখানে বাশের অপারেটরদের জন্য খুব সুন্দর রেফারেন্স পেতে পারেন । আপনি যদি অন্য কোনও শেল ব্যবহার করে থাকেন তবে কেবল অনুসন্ধান করুন <my shell> operators
এবং আপনার প্রয়োজনীয় সমস্ত কিছুই খুঁজে পাবেন। আপনার বিশেষ ক্ষেত্রে, আপনি ব্যবহার করছেন:
-n
string is not null.
-z
string is null, that is, has zero length
বর্ণনা করা:
$ foo="bar";
$ [ -n "$foo" ] && echo "foo is not null"
foo is not null
$ [ -z "$foo" ] && echo "foo is null"
$ foo="";
$ [ -n "$foo" ] && echo "foo is not null"
$ [ -z "$foo" ] && echo "foo is null"
foo is null
man test
অথবা man [
আপনাকে পরীক্ষা কমান্ডের সমস্ত বিকল্প দেবে। এই ক্ষেত্রে, -n $ abc এর সামগ্রীটির শূন্য-দৈর্ঘ্য নেই কিনা তা পরীক্ষা করে দেখানো হচ্ছে এবং z xyz এর সামগ্রীটি শূন্য দৈর্ঘ্যের স্ট্রিং কিনা তা পরীক্ষা করে দেখছে।
man test
(সর্বদা?) বাহ্যিক-প্রোগ্রাম সংস্করণের জন্য ম্যান পৃষ্ঠাটি দেয়, যা (কমপক্ষে GNU-coreutils সংস্করণের জন্য) স্পষ্টভাবে সতর্ক করে দেয় যে কয়েকটি (IME সর্বাধিক) শেলের একটি বিল্টিন সংস্করণ রয়েছে যা আলাদা হতে পারে।