72c12b7f77
* [hi] Add content/hi/docs/tasks/tools/included/optional-kubectl-configs-bash-mac.md Added the localisation of optional-kubectl-configs-bash-mac.md (#30570) * Update content/hi/docs/tasks/tools/included/optional-kubectl-configs-bash-mac.md Co-authored-by: Anubhav Vardhan <vardhananubhav@gmail.com> * Update content/hi/docs/tasks/tools/included/optional-kubectl-configs-bash-mac.md Co-authored-by: Anubhav Vardhan <vardhananubhav@gmail.com> * Update content/hi/docs/tasks/tools/included/optional-kubectl-configs-bash-mac.md Co-authored-by: Anubhav Vardhan <vardhananubhav@gmail.com> * Update content/hi/docs/tasks/tools/included/optional-kubectl-configs-bash-mac.md Co-authored-by: Anubhav Vardhan <vardhananubhav@gmail.com> * Update content/hi/docs/tasks/tools/included/optional-kubectl-configs-bash-mac.md Co-authored-by: Anubhav Vardhan <vardhananubhav@gmail.com> * Update content/hi/docs/tasks/tools/included/optional-kubectl-configs-bash-mac.md Co-authored-by: Anubhav Vardhan <vardhananubhav@gmail.com> * Update content/hi/docs/tasks/tools/included/optional-kubectl-configs-bash-mac.md Co-authored-by: Anubhav Vardhan <vardhananubhav@gmail.com> * Update content/hi/docs/tasks/tools/included/optional-kubectl-configs-bash-mac.md Co-authored-by: Anubhav Vardhan <vardhananubhav@gmail.com> * Update content/hi/docs/tasks/tools/included/optional-kubectl-configs-bash-mac.md Co-authored-by: Anubhav Vardhan <vardhananubhav@gmail.com> * Update content/hi/docs/tasks/tools/included/optional-kubectl-configs-bash-mac.md Co-authored-by: Anubhav Vardhan <vardhananubhav@gmail.com> * Update content/hi/docs/tasks/tools/included/optional-kubectl-configs-bash-mac.md Co-authored-by: Anubhav Vardhan <vardhananubhav@gmail.com> * Update content/hi/docs/tasks/tools/included/optional-kubectl-configs-bash-mac.md Co-authored-by: Anubhav Vardhan <vardhananubhav@gmail.com> * Update content/hi/docs/tasks/tools/included/optional-kubectl-configs-bash-mac.md Co-authored-by: Anubhav Vardhan <vardhananubhav@gmail.com> * Update content/hi/docs/tasks/tools/included/optional-kubectl-configs-bash-mac.md Co-authored-by: Anubhav Vardhan <vardhananubhav@gmail.com> * Update content/hi/docs/tasks/tools/included/optional-kubectl-configs-bash-mac.md Co-authored-by: Anubhav Vardhan <vardhananubhav@gmail.com> * Update content/hi/docs/tasks/tools/included/optional-kubectl-configs-bash-mac.md Co-authored-by: Anubhav Vardhan <vardhananubhav@gmail.com> * Update content/hi/docs/tasks/tools/included/optional-kubectl-configs-bash-mac.md Co-authored-by: Anubhav Vardhan <vardhananubhav@gmail.com> * Update content/hi/docs/tasks/tools/included/optional-kubectl-configs-bash-mac.md Co-authored-by: Anubhav Vardhan <vardhananubhav@gmail.com> * Update content/hi/docs/tasks/tools/included/optional-kubectl-configs-bash-mac.md Co-authored-by: Anubhav Vardhan <vardhananubhav@gmail.com> * Update content/hi/docs/tasks/tools/included/optional-kubectl-configs-bash-mac.md Co-authored-by: Anubhav Vardhan <vardhananubhav@gmail.com> Co-authored-by: Anubhav Vardhan <vardhananubhav@gmail.com>
90 lines
6.8 KiB
Markdown
90 lines
6.8 KiB
Markdown
---
|
|
title: "macOS पर bash ऑटो-कम्पलीशन"
|
|
description: "macOS पर bash ऑटो-कम्पलीशन के लिए कुछ वैकल्पिक कॉन्फ़िगरेशन।"
|
|
headless: true
|
|
---
|
|
|
|
### परिचय
|
|
|
|
Bash के लिए kubectl समापन स्क्रिप्ट `kubectl completion bash` कमांड के साथ उत्पन्न की जा सकती है। आपके शेल में समापन स्क्रिप्ट को सोर्स करने से kubectl ऑटोकम्पलीशन सक्षम हो जाती है।```
|
|
|
|
हालाँकि, समापन की स्क्रिप्ट [**bash-completion**](https://github.com/scop/bash-completion) पर निर्भर हैं जिसका अर्थ है कि आपको पहले इस सॉफ़्टवेयर को इंस्टॉल करना होगा।
|
|
|
|
{{< warning >}}
|
|
Bash-completion के लिये दो संस्करण हैं v1 और v2। v1 bash 3.2 के लिये हैं (जो macOS के लिए डिफ़ॉल्ट है), और v2 bash 4.1+ के लिए है।kubectl कम्पलीशन स्क्रिप्ट Bash-completion v1 और Bash 3.2 के साथ ठीक से **काम नहीं करती है**। इसके लिए **Bash-completion v2** और बैश 4.1+ की आवश्यकता है। इसलिए macOS पर kubectl कम्पलीशन को सही तरीके से इस्तेमाल करने के लिए , आपको bash 4.1+ इनस्टॉल और उपयोग करना होगा ([*निर्देश*](https://itnext.io/upgrading-bash-on-macos-7138bd1066ba))। निम्नलिखित निर्देश मानते हैं कि आप बैश का उपयोग करते हैं (अर्थात 4.1 का कोई भी बैश संस्करण या इससे नया)।
|
|
{{< /warning >}}
|
|
|
|
### अपग्रेड बैश
|
|
|
|
निम्नलिखित निर्देश मानते हैं कि आप बैश 4.1+ का उपयोग करते हैं। आप अपने बैश के संस्करण को यह चलाकर देख सकते हैं:
|
|
|
|
```bash
|
|
echo $BASH_VERSION
|
|
```
|
|
|
|
यदि यह बहुत पुराना है, तो आप Homebrew का उपयोग करके इसे इनस्टॉल/अपग्रेड कर सकते हैं:
|
|
|
|
```bash
|
|
brew install bash
|
|
```
|
|
|
|
अपने शेल को पुनः लोड करें और सत्यापित करें कि इच्छित संस्करण का उपयोग किया जा रहा है:
|
|
|
|
```bash
|
|
echo $BASH_VERSION $SHELL
|
|
```
|
|
|
|
Homebrew आमतौर पर इसे `/usr/local/bin/bash` पर इनस्टॉल करता है।
|
|
|
|
### इनस्टॉल bash-completion
|
|
|
|
{{< note >}}
|
|
जैसा कि उल्लेख किया गया है, ये निर्देश मानते हैं कि आप Bash 4.1+ का उपयोग करते हैं, जिसका अर्थ है कि आप bash-completion v2 इनस्टॉल करेंगे (Bash 3.2 और bash-completion v1 पर kubectl पूर्णता काम नहीं करेगी)।
|
|
{{< /note >}}
|
|
|
|
आप `type_init_completion` से सत्यापित कर सकते हैं कि क्या आपके पास bash-completion v2 पहले से इनस्टॉल है। यदि नहीं, तो आप इसे Homebrew से इनस्टॉल कर सकते हैं
|
|
|
|
```bash
|
|
brew install bash-completion@2
|
|
```
|
|
|
|
जैसा कि इस कमांड के आउटपुट में बताया गया है, अपनी `~/.bash_profile` फ़ाइल में निम्नलिखित जोड़ें:
|
|
|
|
```bash
|
|
export BASH_COMPLETION_COMPAT_DIR="/usr/local/etc/bash_completion.d"
|
|
|
|
[[ -r "/usr/local/etc/profile.d/bash_completion.sh" ]] && . "/usr/local/etc/profile.d/bash_completion.sh"
|
|
```
|
|
|
|
अपने शेल को पुनः लोड करें और `type_init_completion` से सत्यापित करें कि bash-completion v2 सही ढंग से इनस्टॉल है।
|
|
|
|
### kubectl ऑटोकम्पलीशन सक्षम करें
|
|
|
|
अब आपको यह सुनिश्चित करने की आवश्यकता है कि kubectl समापन स्क्रिप्ट आपके सभी शेल सत्रों (sourced) में प्राप्त हो जाए। इसे हासिल करने के कई तरीके हैं:
|
|
|
|
- अपने कम्पलीशन स्क्रिप्ट को `~/.bash_profile` में सोर्स करें:
|
|
|
|
```bash
|
|
echo 'source <(kubectl completion bash)' >>~/.bash_profile
|
|
```
|
|
|
|
- कम्पलीशन स्क्रिप्ट को `/usr/local/etc/bash_completion.d` डायरेक्टरी में जोड़ें:
|
|
|
|
```bash
|
|
kubectl completion bash >/usr/local/etc/bash_completion.d/kubectl
|
|
```
|
|
|
|
- यदि आपके पास kubectl के लिए एक नाम (alias) है, तो आप उस उपनाम के साथ काम करने के लिए शेल कम्पलीशन को बढ़ा सकते हैं:
|
|
|
|
```bash
|
|
echo 'alias k=kubectl' >>~/.bash_profile
|
|
echo 'complete -F __start_kubectl k' >>~/.bash_profile
|
|
```
|
|
|
|
- यदि आपने Homebrew के साथ kubectl इनस्टॉल किया है (जैसा कि यहां बताया गया है), तो kubectl कम्पलीशन स्क्रिप्ट पहले से ही `/usr/local/etc/bash_completion.d/kubectl` में होनी चाहिए। ऐसे में आपको कुछ भी करने की जरूरत नहीं है।
|
|
|
|
{{< note >}}
|
|
bash-completion Homebrew से इनस्टॉल होने पर, सारे फाइल्स को `BASH_COMPLETION_COMPAT_DIR` डायरेक्टरी में सोर्स कर देता है। इसलिए आखरी दो तरीके काम करते हैं।
|
|
{{< /note >}}
|
|
किसी भी स्थिति में, आपके शेल को पुनः लोड करने के बाद, Kubectl पूर्णता कार्य करना चाहिए।
|