इस स्क्रिप्ट में मैं इस if
अभिव्यक्ति पाया:लिनक्स स्क्रिप्ट पर अभिव्यक्ति में -z मान का क्या अर्थ है?
if [ -z $1 ]; then
echo "Usage: createpkg.sh <rev package>"
exit
else
CURRENT_VERSION=$1
fi
मेरे समस्या मैं नहीं मिल सकता है कि वास्तव में इस -z
मूल्य का मतलब क्या है।
गूंज की सामग्री से मैं कटौती कर सकता हूं (शायद) $1
चर सॉफ़्टवेयर संस्करण का प्रतिनिधित्व करता है। और वह (शायद) -z
एक शून्य मान है। इसलिए यदि मैं इसे पारित किए बिना स्क्रिप्ट निष्पादित करता हूं तो सॉफ़्टवेयर का संस्करण जिसे मैं पैक कर रहा हूं, मुझे स्क्रिप्ट निष्पादित करने के लिए सही प्रक्रिया मुद्रित करें।
लेकिन मुझे -z
मान के वास्तविक अर्थ के बारे में निश्चित नहीं है।
एक साइड नोट के रूप में, आपको शायद अपने चर को कोट्स में संलग्न करना चाहिए। 'अगर [-z" $ 1 "];'। मुझे सही कारण याद नहीं है (कोई?) लेकिन ऐसा नहीं करने से कुछ मामलों में अवांछित व्यवहार हो सकता है। – aspyct
हां, @ एंटोनी_935, यदि चर में एक स्थान होता है तो यह समस्याग्रस्त हो जाएगा। यह 'अगर [-जो हैलो वर्ल्ड]' बन जाएगा जो 'बाश' समझने में सक्षम नहीं होगा। – fedorqui