एक स्क्रिप्ट लिखने की कोशिश करना जो एप्लिकेशन के संस्करण की खोज करता है और फिर मूल्य लौटाता है। मेरी समस्या यह है कि मूल्य तीन से चार अंतराल लंबा है (उदाहरण 4.3.2)।
मैंने कुछ समय के लिए खोज की है और आपको कोई भी वाक्यविन्यास नहीं मिल सकता है जो आपको इसमें किसी भी संख्या के लिए एक =! या -ge का उपयोग करने की अनुमति देगा जिसमें इसमें अवधियों की संख्या अधिक होगी। बस सोच रहा था कि किसी के पास एक बेहतर तरीका है या मैं बस हर संस्करण को जारी करने के लिए जोड़ रहा हूं।
मैं क्या चाहता हूँ
else if [ $version1 -ge "9.0.8" ]; then
अब कैसे लिखा जाता है
vercheck=`mdls -name kMDItemVersion /Applications/iMovie.app`
version=`echo ${vercheck:17}`
version1=`echo ${version:1:5}`
[...]
else if [ $version1 = "9.0.8" ]; [ $version1 = "9.1.1" ]; then
echo "You already have this version or a higher version installed"
exit 0
mdls -raw -name kMDItemVersion /Applications/iMovie.app
आपको सुपरफ्लस सामान के बिना सिर्फ वर्जन नंबर देगा।