मेरे पास एक bash स्क्रिप्ट है जिसमें निम्नलिखित 2 लाइनें हैं:
Hour=$(date +"%H")
Hour=$((10#$Hour))
लाइन 2 क्या करता है?
मेरे पास एक bash स्क्रिप्ट है जिसमें निम्नलिखित 2 लाइनें हैं:
Hour=$(date +"%H")
Hour=$((10#$Hour))
लाइन 2 क्या करता है?
जवाबों:
10#
यह बताता है आधार 10 का उपयोग कर संख्या बढ़ाने के लिए:
एक अग्रणी 0 वाले स्थिरांक को अष्टक संख्या के रूप में व्याख्या की जाती है। एक प्रमुख '0x' या '0X' हेक्साडेसिमल को दर्शाता है। अन्यथा, संख्याएं फार्म [आधार #] एन लेती हैं, जहां वैकल्पिक आधार 2 और 64 के बीच एक दशमलव संख्या है जो अंकगणितीय आधार का प्रतिनिधित्व करता है, और n उस आधार में एक संख्या है। यदि आधार # छोड़ा गया है, तो आधार 10 का उपयोग किया जाता है। N निर्दिष्ट करते समय, 9 से अधिक अंकों को निचले क्रम के अक्षरों, अपरकेस अक्षरों, '@' और '_' द्वारा दर्शाया जाता है। यदि आधार 36 से कम या इसके बराबर है, तो 10 और 35 के बीच संख्याओं का प्रतिनिधित्व करने के लिए लोअरकेस और अपरकेस अक्षरों का परस्पर उपयोग किया जा सकता है।
उदाहरण:
आधार 16:
$ echo $((16#A))
10
आधार 8:
$ echo $((8#12))
10
आधार 2:
$ echo $((2#1010))
10
जैसा कि स्टीलड्राइवर बताते हैं कि यह संभवतया दिनांक कमांड से किसी भी संभावित अग्रणी शून्य को संभालने के लिए किया जा रहा है, लेकिन जीएनयू तिथि के हाल के संस्करणों के साथ इसका उपयोग करना आसान हो सकता है: date +%-H
date
) अग्रणी शून्य को एक-
+%-H