क्या मैं बैश में बुनियादी गणित कर सकता हूं?


33

मैं सोच रहा था, क्या बैश में सरल गणित करना संभव है? मैं कुछ ऐसा सोच रहा हूँ, = २५-५ २० या कुछ और छपेगा।

क्या यह आसानी से किया जा सकता है?

धन्यवाद


जवाबों:


21

बस bcटर्मिनल में टाइप करें । फिर उसके बाद सभी गणित का सामान टाइप करें।

bc" b asic c alculator" के लिए खड़ा है

फिर टाइप करें quitऔर बाहर निकलने के लिए एंटर करें।


2
सिर्फ स्पष्टता के लिए यह ऐसा होगा: इको 25-5 | ई.पू.
मेधाट हैली

गणित की कुछ समस्याओं के लिए, आपको इसे उद्धरणों में लपेटने की आवश्यकता हो सकती है, जैसेecho '0.6 * 12' | bc
हंस

आपको फ़्लोटिंग पॉइंट echo "scale=2;557/3672" | bc
प्रिसिजन

60

यदि हम वास्तव में बैश के बारे में बात कर रहे हैं, तो बॉर्न शेल (श) या अन्य गोले नहीं, यह आसान है।

बैश $ ((अभिव्यक्ति)) के साथ मूल भावों की गणना कर सकते हैं और यहां एक उदाहरण दिया गया है कि आप इसका उपयोग कैसे करना चाहते हैं:

 एक = 3
 ख = 4
 ग = $ ((7 * a + b))
 गूंज $ सी

या इंटरैक्टिव उपयोग के लिए, बस

 गूंज $ ((7 * 3 + 4))

यह उचित बाश लगता है, क्योंकि यह काम करता है। मैं अपने विश्वविद्यालयों में से एक में ssh-ing हूँ
कुरु

4
$((expression))वाक्य रचना POSIX का हिस्सा है shमानक, और से ली गई ksh
1

6
बैश केवल पूर्णांक अंकगणित कर सकते हैं। यह ksh93 या zsh
fpmurphy

3
यह स्वीकृत उत्तर होना चाहिए था।
एंड्रियास हार्टमैन

10

सरल गणना करने के लिए कई कमांड-लाइन उपयोगिताओं हैं:

$ expr 100 \* 4
400

$ echo '100 * 4' | bc
400

उनमें से सिर्फ दो का नाम लेना। गुणा करने से सावधान रहें क्योंकि यदि आप अपने * से बच नहीं पाते हैं तो शेल वाइल्डकार्ड के रूप में कोशिश और व्याख्या कर सकता है।



7

वैसे आपके सवाल का जवाब है, लेकिन इस पर विचार करें:

अधिकांश लिनक्स डिस्ट्रोस में अजगर पूर्वस्थापित है, इसलिए इसका उपयोग क्यों नहीं किया जाता है?

बस टाइप करो

python

टर्मिनल में और फिर आप चाहते हैं कि सभी अंकगणित करें, जैसे

2+2

आउटपुट 4 होगा :)

आप इसे सीधे -cअजगर तर्क के साथ टर्मिनल से भी कर सकते हैं ।

python -c 'print 2+2'

मेरे कंप्यूटर पर, टाइपिंग pythonशुरू होने में लगभग दो सेकंड लगते हैं। यदि आप सिर्फ 2 + 2 की तरह कुछ सरल करना चाहते हैं, तो कष्टप्रद।
श्रीवत्सआर

यदि आप फ्लोटिंग राउंडिंग नहीं चाहते हैं तो python3 का उपयोग करें। जैसे 2 / 30(अजगर: 0) (python3: 0.06666666666666667)
hrvoj3e

और यदि आपके पास केवल python3 स्थापित है, लेकिन 2//30int(2/30)
mazunki

3

या रूबी। :)

हालांकि यह पहले से स्थापित नहीं हो सकता है, यह बहुत जल्दी है।

टाइप करें irb, तब 2+2

या केवल ruby -e 'p 2+2'


हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.