ব্যাশ দিয়ে শুরু: -ল্ট এবং -জিটি আর্গুমেন্ট


24

আমি বাশ দিয়ে শুরু করছি এবং আমি নিম্নলিখিতগুলি পেয়েছি:

if test $first -lt $second
then
  echo $first is lower than $second
else
  if test $first -gt $second
  then
    echo $first is higher than $second
  else
    echo $first and $second are equals
  fi
fi

স্ক্রিপ্টটি পড়ার জন্য এবং এটি সম্পাদন করার জন্য, আমি জানি এটি কী করে তবে কী -ই-ও-জিটি-র জন্য নয়।

কেউ কি আমাকে বলতে পারেন যে সেই ধরণের 'সরঞ্জাম' এর নাম কী এবং তারা (-ল্ট এবং -জিটি) কী করে? ধন্যবাদ!


9
দুঃখিত, তবে আমি উল্লেখ করতে উপযুক্ত মনে করি যে echoকোডে থাকা বিবৃতিগুলি আপনার প্রশ্নের উত্তর দেয়।
ডেভনুল

ভেরিয়েবলগুলির চারপাশে নিখোঁজ উদ্ধৃতি রয়েছে
স্টাফেন চেজেলাস

উত্তর:


29

এটি সংক্ষিপ্ত less thanএবং greater than। এটি ব্যাশে পূর্ণসংখ্যার তুলনার জন্য ব্যবহৃত হয়। আপনি টাইপ করে আরও পড়তে পারেন man test:

   ....
   INTEGER1 -gt INTEGER2
          INTEGER1 is greater than INTEGER2
   ....
   INTEGER1 -lt INTEGER2
          INTEGER1 is less than INTEGER2
   ....

7

আপনি এর সংজ্ঞা জানতে পারেন -ltএবং -gtডকুমেন্টেশন মধ্যে testকমান্ড ( man test), অথবা ব্যাশ ডকুমেন্টেশন মধ্যে যেহেতু testএকটি বিল্ট-ইন কমান্ড ব্যাশ মধ্যে (অন্যান্য অধিকাংশ শাঁস মত)।

-ltএবং -gtসংখ্যার তুলনা (কম-বেশি [এবং সমান নয়), বৃহত্তর [এবং সমান নয়]। এছাড়াও কম / বৃহত্তর-সমান অপারেটর -leএবং -ge, এবং সমান এবং সমান না সমান অপারেটর -eqএবং রয়েছে -ne। এগুলি সংখ্যাসূচক অপারেটর, সুতরাং উভয় পক্ষের একটি সংখ্যা না থাকলে এবং এর 9চেয়ে কম বিবেচিত হলে একটি ত্রুটি হবে 10

নামগুলি -ltস্বাভাবিকের চেয়ে ব্যবহৃত হওয়ার কারণটি <হল চরিত্রটিকে <পুনঃনির্দেশ হিসাবে ব্যাখ্যা করা হবে। অপারেটরগুলি =এবং !=উপস্থিত রয়েছে, তবে তারা একটি স্ট্রিং তুলনা সম্পাদন করে: test 00 -eq 0সত্য যেখানে test 00 = 0মিথ্যা।

বাশ সহ কয়েকটি শেলের অপারেটর রয়েছে <এবং >যা স্ট্রিং লিক্সোগ্রাফিক তুলনা করে, তাই test 9 \< 10এটি মিথ্যা কারণ এর 9আগে বাছাই করা হয় 1(ব্যাকস্ল্যাশ অক্ষরটিকে <পুনঃনির্দেশ অপারেটর হিসাবে ব্যাখ্যা করা থেকে বিরত করে)। এই শেলগুলি পরীক্ষার জন্য ডাবল-বন্ধনী সিনট্যাক্সও সরবরাহ করে, যেমন [[ 9 < 10 ]](এর বিপরীতে [ 9 \< 10 ]), যার ভিতরে পুনর্নির্দেশগুলি থাকতে পারে না যাতে <উদ্ধৃত করার প্রয়োজন হয় না।


4

তারা কেবল অপারেটর।

সরল: gtএবং ltঅর্থ> (এর চেয়ে বড়) এবং <(এর চেয়ে কম)।

অপারেটরগুলির সম্পর্কে আরও তথ্যের জন্য আপনি এখানে দেখতে পারেন :


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