रन टाइम के दौरान प्रतिस्थापन~/.bashrc
का मूल्यांकन$()
करने के लिए किसी को उपनाम कैसे मिलता है , इसके बजाय ~ / .bashrc निष्पादित किया जाता है (जब एक टर्मिनल खोलते हैं)?
मैं अक्सर यह आदेश चलाता हूं कि मैं इसके लिए एक उपनाम जोड़ना चाहूंगा:
svn diff -r $(svn info | grep ^Revision | awk {'print $2'}):HEAD $(svn info | grep ^URL | awk {'print $2'}) | colordiff
हालाँकि, जब मैं इसे ~/.bashrc
एक उपनाम के रूप में जोड़ता हूं , तो मैं देखता हूं कि मूल्यांकन उन मूल्यों के लिए कठिन-कोडित हैं जो मैंने उस समय खोला था जब मैंने टर्मिनल खोला था:
$ alias
alias svnbranch='svn diff -r 178184:HEAD svn+ssh://branches/t4252 | colordiff'
अगर मैं एक टर्मिनल खोलता हूँ ~
तो मुझे त्रुटियाँ मिलती हैं:
svn: E155007: '/home/dotancohen' is not a working copy
svn: E155007: '/home/dotancohen' is not a working copy
svn: E155007: '/home/dotancohen' is not a working copy
svn: E155007: '/home/dotancohen' is not a working copy
$ alias
alias svnbranch='svn diff -r :HEAD | colordiff'
$
मैंने उर्फ के इन दो रूपों की कोशिश की है ~/.bashrc
, वे दोनों एक ही प्रभाव है (जैसा कि मुझे उम्मीद थी):
alias svnbranch="svn diff -r $(svn info | grep ^Revision | awk {'print $2'}):HEAD $(svn info | grep ^URL | awk {'print $2'}) | colordiff"
alias svnbranch="svn diff -r `svn info | grep ^Revision | awk {'print $2'}`:HEAD `svn info | grep ^URL | awk {'print $2'}` | colordiff"
रन टाइम पर प्रतिस्थापन के ~/.bashrc
मूल्यांकन के लिए किसी को उपनाम कैसे मिलता है$()
?
इसके अतिरिक्त, Google में इस स्थिति की खोज कोई कैसे करेगा ? मैंने "bashrc प्रतिस्थापन", "bashrc आलसी प्रतिस्थापन", और अन्य प्रमुख वाक्यांशों पर Google के लिए प्रयास किया है, लेकिन मुझे इस बारे में कुछ नहीं मिला है कि मुझे क्या लगता है कि जानकारी खोजने के लिए एक सामान्य पर्याप्त मुद्दा होना चाहिए।
alias cdp="cd ~/projects"
। एक शेल स्क्रिप्ट में ऐसा नहीं कर सकते।
$HOME/bin
जाता हैPATH
यदि आपके पास इन दिनों ऐसी कोई निर्देशिका है।