एक्सप्र आणि कॅल्क कमांडः टर्मिनलवर गणितातील शब्दांचे निराकरण करा

मी नेहमी स्क्रिप्ट प्रोग्रामिंग करणार्‍यांपैकी एक आहे बाश दैनंदिन परिस्थितीचे निराकरण करण्यासाठी (एपी / राउटर संकेतशब्द, स्वयंचलित प्रक्रिया इ. क्रॅक करा.).

विशिष्ट प्रसंगी मी गणिताच्या अभिव्यक्तीचे मूल्य एखाद्या चलनासाठी निर्दिष्ट करणे किंवा गणितातील अभिव्यक्त्यांसह कार्य करणे आवश्यक असल्याचे पाहिले आहे, तेथे मला स्वत: ला अशी अडचण आहे की बॅश आणि गणितातील अभिव्यक्ती, गणना फारच अनुकूल नाही. हे घडते की बॅश अजगरांसारखे नाही, आपण काय म्हणू शकतो चल = 1 + 5/6 (उदाहरणार्थ) बॅशमध्ये आपण कमांड वापरली पाहिजे व्यक्त o कॅल्क

Expr कमांड

दुस words्या शब्दांत, expr कमांड टर्मिनलमध्ये गणितातील अभिव्यक्ती सोडविण्यास मदत करते, त्याद्वारे आपली आवश्यक असलेली गणना करू शकतो. उदाहरणार्थ, आम्हाला 1 + 2 * 8/3 चा निकाल दिसू इच्छित असल्यास, आम्ही टर्मिनलमध्ये ठेवले:

expr 1 + 2 \* 8 / 3

लक्षात घ्या की तारकापूर्वी * मी बॅकस्लॅश ठेवला - »\ ... हे आवश्यक आहे, कारण एक्सप्रेटर तारकाचे स्पष्टीकरण गुणाकार चिन्ह म्हणून देत नाही.

आणि निकाल स्क्रीनवर दिसून येईल. येथे काही उदाहरणांसह एक स्क्रीनशॉट आहे:

स्क्रीनशॉट_एक्सप्र 1

जसे आपण अंतिम गणना (१ can/14 आणि १/ /)) मध्ये पाहू शकता, १ ने 4 ने भाग केलेले प्रत्यक्षात 13. is आहे आणि १ divided हे divided भागाकार प्रत्यक्षात 4.२14 आहे, तर हे कसे शक्य आहे की ते दोन्ही प्रकरणांमध्ये shows दाखवते? काय होते ते म्हणजे expr कमांड आपल्याला दशांश दर्शवित नाही, म्हणजेच स्वल्पविरामा नंतर काय होते ते दर्शवित नाही, ते केवळ आपल्याला पूर्णांक दर्शवते.

जर आम्हाला गणिताच्या अभिव्यक्तीचा परिणाम व्हेरिएबलला देऊ इच्छित असेल (उदा: 10/2), असे असेल:

variable=`expr 10 / 2`

मग आम्ही हे यासह तपासू:

echo $variable

प्रत्येक वर्ण दरम्यान अंतर असणे महत्वाचे आहे, म्हणजेच, प्रत्येक संख्येमधील अंतर, प्रत्येक जोड, वजाबाकी, गुणाकार किंवा भाग चिन्ह

कॅल्क कमांड

हे, मागील एकापेक्षा भिन्न आहे, दशांशांच्या बाबतीत अगदी अचूक आहे, उदाहरणार्थ:

calc 15 / 4

हे आम्हाला दर्शवेल: 3.75

बर्‍याच उदाहरणांसह एक स्क्रीनशॉट येथे आहे:

स्क्रीनशॉट_कॅल्क

जेव्हा आपण आधीच्या इमेज मध्ये पाहू शकता त्याप्रमाणे प्रत्येक कॅरेक्टरमध्ये कोणतीही स्पेस नसतात, म्हणजेच प्रत्येक कॅरॅक्टर मधे जागा नसते हे चांगले असते. किंवा * * च्या आधी त्यांना prep प्रीपेन्ड करण्याची आवश्यकता नाही

असो, मुळात हेच मला सांगायचे होते.

तथापि, प्रत्येक आदेशासाठी अजूनही काही इतर मनोरंजक टिप्स (विशेषतः कॅल्क) आहेत, मी शिफारस करतो की आपण हे पुस्तिका वाचा:

man calc

man expr

कोट सह उत्तर द्या


आपली टिप्पणी द्या

आपला ई-मेल पत्ता प्रकाशित केला जाणार नाही. आवश्यक फील्ड चिन्हांकित केले आहेत *

*

*

  1. डेटा जबाबदार: मिगुएल Áन्गल गॅटन
  2. डेटाचा उद्देशः नियंत्रण स्पॅम, टिप्पणी व्यवस्थापन.
  3. कायदे: आपली संमती
  4. डेटा संप्रेषण: कायदेशीर बंधन वगळता डेटा तृतीय पक्षास कळविला जाणार नाही.
  5. डेटा संग्रहण: ओकेन्टस नेटवर्क (EU) द्वारा होस्ट केलेला डेटाबेस
  6. अधिकारः कोणत्याही वेळी आपण आपली माहिती मर्यादित, पुनर्प्राप्त आणि हटवू शकता.

     चैतन्यशील म्हणाले

    खूप उपयुक्त, गणिताच्या गणितासाठी बॅश वापरणे निश्चितच चांगले होणार नाही, तर दशांश मोजण्यासाठी :)

        वाडा म्हणाले

      श्रीमान इलाव, आमच्याकडे अजूनही बॅश कॅल्क्युलेटर आहे - आम्ही मानक गणिताची ग्रंथालय वापरण्यासाठी -l वितर्क वापरू शकतो
      तशा प्रकारे काहीतरी

      $ echo "(4/8)+(6/9)" | bc -l
      1.166666666666666666666666

      ha

          चैतन्यशील म्हणाले

        😀

          इलियोटाइम 3000 म्हणाले

        उत्कृष्ट अशाप्रकारे, शुद्ध एक्स 11 वापरताना मी एक्सकॅलॅक स्थापित करण्याची त्रास टाळतो.

          केझेडकेजी ^ गारा म्हणाले

        अरे मला हे माहित नव्हते, महान !!

     clow_eriol म्हणाले

    धन्यवाद, हे बर्‍यापैकी उपयुक्त आहे 😉

        केझेडकेजी ^ गारा म्हणाले

      धन्यवाद ^ _ ^

     निशाचर म्हणाले

    धन्यवाद. सिस्टम कॅल्क्युलेटर मूलभूत ऑपरेशन्ससाठी प्रतिस्पर्धी होता.

        केझेडकेजी ^ गारा म्हणाले

      आम्हाला वाचण्यासाठी तुमचे आभार 🙂

     जोकिन म्हणाले

    चांगली टीप!

     पेड्रो लाला म्हणाले

    मला हे आवडले नाही