$HOME
साथ ~
के बजाय ऐसे। टिल्डे का विस्तार केवल तब होता है जब टिल्ड अनजान होता है। info "(bash) Tilde Expansion"
देखें।
आप इसे उद्धृत किए बिना file=~/Desktop
भी कर सकते हैं, लेकिन यदि आप कभी इसके क्षेत्र में विभाजक के साथ कुछ के साथ इसका हिस्सा बदलते हैं, तो यह टूट जाएगा। चर के मूल्यों को उद्धृत करना वैसे भी आदत में आने के लिए एक अच्छी बात है। क्वोटिंग चर file=~/"Desktop"
भी काम करेगा लेकिन मुझे लगता है कि यह बदसूरत है।
$HOME
पसंद करते हैं करने के लिए एक और कारण है, जब संभव: टिल्ड विस्तार केवल शब्दों की शुरुआत में क्या होता है। तो command --option=~/foo
केवल तभी काम करेगा यदि command
tilde विस्तार स्वयं करता है, जो कमांड द्वारा भिन्न होगा, जबकि command --option="$HOME/foo"
हमेशा काम करेगा।
स्रोत
2011-12-07 00:46:34
मैंने शीर्षक को और अधिक वर्णनात्मक बनाने के लिए बदल दिया। –
[संभवतः बैश में काम नहीं कर रहे टिल्ड विस्तार का संभावित डुप्लिकेट] (https://stackoverflow.com/questions/5748216/tilde-expansion-not-working-in-bash) – codeforester