मैं पटकथा को झुकाव के लिए एक नया छात्र हूं, और मैं एक असाइनमेंट प्रश्न पर फंस गया हूं। मैं सोच रहा था कि क्या यह निर्धारित करने का एक आसान तरीका है कि उपयोगकर्ता का इनपुट पूर्णांक है या नहीं। अधिक विशेष रूप से, यदि किसी उपयोगकर्ता को पूर्णांक इनपुट करने के लिए कहा जाता है, तो क्या सत्यापित करने के लिए एक त्वरित जांच है?क्या यह निर्धारित करने का कोई आसान तरीका है कि उपयोगकर्ता इनपुट बैश में एक पूर्णांक है या नहीं?
उत्तर
यह द्वारा परीक्षण कर सकते हैं एक प्रकार का कड़वाहट है, यह किसी अन्य चीज़ के लिए -ईक का उपयोग कर रहा है, फिर इसका इरादा क्या था, लेकिन यह एक पूर्णांक की जांच करता है, अगर इसे कोई int नहीं मिलता है तो यह एक त्रुटि देता है जिसे आप/dev/null और टॉस कर सकते हैं झूठ का मूल्य
read input
if [ $input -eq $input 2>/dev/null ]
then
echo "$input is an integer"
else
echo "$input is not an integer"
fi
एक तरीका यह जांचना है कि इसमें गैर-संख्या वाले वर्ण हैं या नहीं। आप सभी अंकों के पात्रों को कुछ भी नहीं बदलते हैं और लंबाई की जांच करते हैं - यदि लंबाई है तो वहां गैर अंकों वाले वर्ण हैं।
if [[ -n ${input//[0-9]/} ]]; then
echo "Contains letters!"
fi
एक अन्य दृष्टिकोण यह जांचना है कि परिवर्तनीय संदर्भ में मूल्यांकन चरम स्वयं के बराबर है या नहीं। यह पार्टी विशेष के
if [[ $((foo)) != $foo ]]; then
echo "Not just a number!"
fi
मार पूछे जाने वाले प्रश्न entry #54
वह अकसर किये गए सवाल का शीर्षक है "मैं कैसे बता सकता हूं कि चर में एक वैध संख्या है या नहीं?" - पहचानने के संभावित तरीकों का एक गुच्छा प्रदान करता है। –
मैं इस पोस्ट http://www.unix.com/shell-programming-scripting/21668-how-check-whether-string-number-not.html है कि इस बारे में बात करती पाया जाता है।
अपने इनपुट अगर वहाँ नंबर पर एक +/- की जाँच करने की जरूरत नहीं है, तो आप कर सकते हैं:
expr $num + 1 2> /dev/null
if [ $? = 0 ]
then
echo "Val was numeric"
else
echo "Val was non-numeric"
fi
आप नियमित अभिव्यक्ति का उपयोग कर
if ! [[ "$yournumber" =~ ^[0-9]+$ ]] ;
then exec >&2; echo "error: Not a number"; exit 1
fi
यह सबसे शाब्दिक है, और इसलिए याद रखना सबसे आसान है। –
यह करने का एक और तरीका है। यह ज्यादातर मामलों में आवश्यकतानुसार थोड़ा अधिक विस्तृत है, लेकिन decimals भी संभाल लेंगे। मैंने गोलाकार संख्या प्राप्त करने के लिए नीचे दिया गया कोड लिखा था। यह प्रक्रिया में संख्यात्मक इनपुट के लिए भी जांच करता है।
#--- getRound -- Gives number rounded to nearest integer -----------------------
# usage: getRound <inputNumber>
#
# echos the rounded number
# Best to use it like:
# roundedNumber=`getRound $Number`
# check the return value ($?) and then process further
#
# Return Value:
# 2 - if <inputNumber> is not passed, or if more arguments are passed
# 3 - if <inputNumber> is not a positive number
# 0 - if <inputNumber> is successfully rounded
#
# Limitation: Cannot be used for negative numbers
#-------------------------------------------------------------------------------
getRound(){
if [ $# -ne 1 ]
then
exit 2
fi
#--- Check if input is a number
Input=$1
AB=`echo A${Input}B | tr -d [:digit:] | tr -d '.'`
if [ "${AB}" != "AB" ] #--- Allow only '.' and digit
then
exit 3
fi
DOTorNone=`echo ${Input} | tr -d [:digit:]` #--- Allow only one '.'
if [ "${DOTorNone}" != "" ] && [ "${DOTorNone}" != "." ]
then
exit 3
fi
echo $Input | awk '{print int($1+0.5)}' #--- Round to nearest integer
}
MyNumber=`getRound $1`
if [ $? -ne 0 ]
then
echo "Empty or invalid input passed"
else
echo "Rounded input: $MyNumber"
fi
- 1. क्या यह निर्धारित करने का कोई तरीका है कि आईफोन रोमिंग कर रहा है या नहीं?
- 2. क्या यह निर्धारित करने का एक शानदार तरीका है कि कोई पोस्ट सफल होगा या नहीं?
- 3. यह निर्धारित करने का कोई तरीका है कि कोई तत्व लपेटा गया है या नहीं?
- 4. क्या यह निर्धारित करने का कोई तरीका है कि कोई HTML चयन वर्तमान में खुला है या नहीं?
- 5. क्या यह बताने का कोई आसान तरीका है कि उपयोगकर्ता के पास Google 1+ एक यूआरएल
- 6. यह निर्धारित करने के लिए एक अच्छा एल्गोरिदम क्या है कि कोई इनपुट एक पूर्ण वर्ग है या नहीं?
- 7. क्या यह निर्धारित करने का कोई तरीका है कि उपयोगकर्ता किस Mulit उपयोगकर्ता सम्मेलन (एमयूसी) में शामिल हो गया है?
- 8. यह निर्धारित करने का तेज़ तरीका है कि एक पीआईडी (विंडोज) पर मौजूद है या नहीं?
- 9. क्या यह निर्धारित करने का कोई तरीका है कि ओरेकल में पैकेज का राज्य है या नहीं?
- 10. क्या कोई GWT प्रोग्राम यह बताने का कोई तरीका है कि यह होस्टेड या वेब मोड में है या नहीं?
- 11. क्या यह निर्धारित करने का कोई तरीका है कि कोई ई-मेल अपने गंतव्य तक पहुंचता है या नहीं?
- 12. यह निर्धारित करने का आसान तरीका है कि दिया गया ग्राफ किसी अन्य ग्राफ का सबग्राफ है या नहीं?
- 13. क्या यह निर्धारित करने का कोई विश्वसनीय तरीका है कि ब्राउज़र टैब या विंडो निष्क्रिय है या नहीं?
- 14. क्या यह निर्धारित करने का कोई तरीका है कि एक लिनक्स पीआईडी रोका गया है या नहीं?
- 15. निर्धारित करें कि जावास्क्रिप्ट मान एक "पूर्णांक" है या नहीं?
- 16. यह निर्धारित करने का सबसे अच्छा तरीका क्या है कि आज जावास्क्रिप्ट में कोई तारीख है या नहीं?
- 17. क्या यह निर्धारित करने का कोई तरीका है कि विकास मोड में जीडब्ल्यूटी कोड चल रहा है या नहीं?
- 18. यह पता लगाने का तेज़ तरीका है कि कोई उपयोगकर्ता सिस्टम पर मौजूद है या नहीं?
- 19. स्ट्रिंग में कोई छवि टैग है या नहीं, यह जांचने का सबसे आसान तरीका क्या है?
- 20. क्या यह निर्धारित करने का कोई तरीका है कि वर्तमान स्क्रीन स्पर्श का समर्थन करती है या नहीं?
- 21. क्या यह जांचने का कोई तरीका है कि कोई चर जावास्क्रिप्ट में दिनांक है या नहीं?
- 22. वीबीस्क्रिप्ट: जांचना कि उपयोगकर्ता इनपुट एक पूर्णांक
- 23. क्या यह निर्धारित करने का कोई तरीका है कि <select> ड्रॉपडाउन मेनू खुला है या नहीं?
- 24. यह बताने का कोई आसान तरीका है कि क्या mongodb अनुक्रमणिका अभी भी उपयोग की जा रही है या नहीं?
- 25. क्या कोई उपयोगकर्ता ट्रैक करने का कोई तरीका है कि कोई उपयोगकर्ता वेब पेज प्रिंट करता है या नहीं?
- 26. यह निर्धारित करने के लिए कि कोई ऑब्जेक्ट जावास्क्रिप्ट में एक वस्तु शब्दशः है या नहीं?
- 27. क्या कोई उपयोगकर्ता यह निर्धारित करने का कोई तरीका है कि कोई उपयोगकर्ता ब्रॉडबैंड का उपयोग कर रहा है या डायल-अप
- 28. क्या यह जानने का एक आसान तरीका है कि वर्तमान में एक मॉडल संवाद प्रदर्शित होता है या नहीं?
- 29. यह निर्धारित करने के लिए कि कोई कुंजी एक अक्षर या संख्या है या नहीं?
- 30. क्या यह बताने का कोई तरीका है कि एक एंड्रॉइड डिवाइस केवल वाईफाई है या नहीं?
यह मानता है/dev/null मौजूद है – Xofo
यह भी मानता है कि तर्क खाली नहीं है –