बैश उर्फ ​​- =… (अन्य नाम एक साधारण डैश होना चाहिए) काम नहीं कर रहा है


14

मैं एक उपनाम बनाना चाहता हूं cd -जिसके लिए सिर्फ एक डैश ( -) होना चाहिए । मैंने सफलता के बिना कोशिश की:

alias -='cd -'     # bash: alias: -=: Invalid option
alias \-='cd -'    # bash: alias: -=: Invalid option
alias '-'='cd -'   # bash: alias: -=: Invalid option
alias '\-'='cd -'  # bash: alias: `\-': Invalid alias name.

पूर्व तीन समान हैं (केवल अलग इनपुट, लेकिन बैश सभी को aliasएक ही तर्क के साथ एक ही कमांड में बदल देता है -=cd -), इसलिए यह कोई आश्चर्य की बात नहीं है कि त्रुटि संदेश समान है। मुझे लगता है कि यदि तर्क एक डैश के साथ शुरू होता है, तो इसे उपनाम के बजाय एक ध्वज के रूप में पार्स किया जाता है।

क्या -एक उपनाम नाम के रूप में उपयोग करना संभव है ?


1
कभी बारे में पता थाcd -
मार्को Ceppi

@MarcoCeppi मुझे न तो आज तक। अधिक अच्छे ट्रिक्स के लिए चेकआउट कमांडलाइनफू.com/commands/browse/sort-by-votes !
लेमन

जवाबों:


28

अधिकांश आदेशों के साथ, आप --एक तर्क के रूप में पारित कर सकते हैं , और बाद के सभी तर्कों को ऑपरेंड के रूप में माना जाता है और विकल्प के रूप में नहीं, भले ही वे डैश के साथ शुरू हों। aliasबैश में निर्मित पहचानता है --

alias -- -='cd -'

1
हा! यह नहीं पता था। धन्यवाद! :)
लीमीज़
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.