Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> बाश प्रोग्रामिंग

5 मानक पूर्णता लिनक्स बैश कमांड लाइन में उपलब्ध है

लिनक्स में, डिफ़ॉल्ट रूप से बैश उपयोगकर्ताओं को कमांड लाइन में उपयोग करने के लिए निम्नलिखित मानक पूर्णता प्रदान करता है:

  1. चर नाम पूरा करना
  2. उपयोगकर्ता नाम पूर्णता
  3. निष्पादन योग्य पूर्णता
  4. फ़ाइल नाम और निर्देशिका पूर्णता
  5. होस्टनाम पूर्णता

<एच3>1. चर नाम पूर्णता

टर्मिनल में $ टाइप करने के बाद, टैब को दो बार दबाने पर नीचे दिखाए गए अनुसार सभी उपलब्ध शेल चर प्रदर्शित होंगे।

$ echo $[TAB][TAB]
$_ $COMP_POINT $HOSTTYPE $PS1
$_backup_glob $COMPREPLY $IFS $PS2
$BASH $COMP_TYPE $inx $PS4
$BASH_ALIASES $COMP_WORDBREAKS $LANG $PWD
$BASH_ARGC $COMP_WORDS $LANGUAGE $RANDOM
$BASH_ARGV $cur $LESSCLOSE $redir
$BASH_CMDS $cword $LESSOPEN $SECONDS
$BASH_COMMAND $DIRSTACK $LINENO $SHELL
$BASH_COMPLETION_COMPAT_DIR $DISPLAY $LINES $SHELLOPTS
$BASH_LINENO $errx $LOGNAME $SHLVL
$BASHOPTS $EUID $LS_COLORS $split
$BASHPID $exclude $MACHTYPE $SUDO_COMMAND
$BASH_REMATCH $flag $MAIL $SUDO_GID
$BASH_SOURCE $FUNCNAME $MAILCHECK $SUDO_UID
$BASH_SUBSHELL $GROUPS $OLDPWD $SUDO_USER
$BASH_VERSINFO $__grub_script_check_program $OPTERR $suffix
$BASH_VERSION $HISTCMD $OPTIND $TERM
$__colormgr_commandlist $HISTCONTROL $OSTYPE $UID
$COLORTERM $HISTFILE $outx $USER
$COLUMNS $HISTFILESIZE $PATH $USERNAME
$COMP_CWORD $HISTSIZE $PIPESTATUS $words
$COMP_KEY $HOME $PPID $XAUTHORITY
$COMP_LINE $HOSTNAME $prev $_xspecs
<एच3>2. उपयोगकर्ता नाम पूर्णता

जब आप टैब को दो बार दबाते हैं, टिल्ड (~) के बाद, बैश स्वचालित रूप से उपयोगकर्ता नाम पूरा करना शुरू कर देगा।

$ cd ~[TAB][TAB]
~bala/ ~raj/
~jason/ ~randy/
~john/ ~ritu/
~mayla/ ~thomas/
~nisha/ ~www-data

कृपया ध्यान दें कि यह होम डायरेक्टरी से यूजरनेम को पिक-अप नहीं करता है। इसके बजाय, यह /etc/passwd फ़ाइल से सभी उपलब्ध उपयोगकर्ता नाम प्रदर्शित करता है

<एच3>3. निष्पादन योग्य के लिए पथनाम पूर्णता

जब आप एक कमांड को निष्पादित करने का प्रयास कर रहे हैं, यदि निष्पादन योग्य के पास निष्पादन की अनुमति है, तो यह स्वचालित रूप से पूर्ण हो जाएगा, यदि एक एकल मिलान पाया जाता है जैसा कि नीचे दिए गए उदाहरण में दिखाया गया है।

$ ls -l /etc/init.d/reboot
-rwxr-xr-x 1 root root 639 Jan 30 2013 /etc/init.d/reboot

$ /etc/init.d/reb[TAB][TAB]

$ /etc/init.d/reboot

जब कई मिलान मिलते हैं, तो यह उपलब्ध कमांड प्रदर्शित करेगा।

<केंद्र> <एच3>4. फ़ाइल नाम और निर्देशिका पूर्णता

यह पूर्णता फ़ाइल नाम और निर्देशिका नामों के लिए है जो कमांड लाइन पर दूसरी और बाद की स्थिति में हो रहे हैं। उपरोक्त उदाहरण के विपरीत, यह किसी भी अनुमति की जांच नहीं करता है, और केवल सभी उपलब्ध फाइलों और निर्देशिकाओं को प्रदर्शित करेगा।

$ ls
countfiles.sh dir1 dir2 dir3 

$ cat [TAB][TAB]
countfiles.sh dir1 dir2 dir3 

$ cat c[TAB][TAB]

$ cat countfiles.sh

साथ ही, जब प्रदर्शित करने के लिए बहुत सारी फाइलें हों, तो स्क्रीन पर सभी संभावनाओं को प्रदर्शित करने के बजाय, जो बहुत भ्रमित करने वाली हो सकती हैं, यह निम्नलिखित चेतावनी संदेश देगा।

$ ls -l /etc/
Display all 228 possibilities? (y or n)

5. होस्टनाम पूर्णता

कनेक्ट करने के लिए होस्टनाम प्राप्त करने के लिए, नीचे दिखाए गए अनुसार @ प्रतीक के बाद दो बार टैब दबाएं:

$ ssh john@[TAB][TAB]
@dev-db @fileserver @qa-server
@prod-db @localhost @web-server

आप इस होस्टनाम पूर्णता सुविधा का उपयोग किसी भी कमांड के साथ कर सकते हैं जहां आप होस्टनाम के लिए @ दे सकते हैं। उदाहरण के लिए, आप इसका उपयोग scp के साथ भी कर सकते हैं जैसा कि नीचे दिखाया गया है:

$ scp filename.txt john@[TAB][TAB]
@dev-db @fileserver @qa-server
@prod-db @localhost @web-server

कृपया ध्यान दें कि यह उपलब्ध होस्टनामों को /etc/hosts फ़ाइल से चुनता है।


  1. CentOS/RHEL में बैश ऑटो कंप्लीशन को कैसे इनस्टॉल और इनेबल करें?

    बैश (बॉर्न अगेन शेल ) निस्संदेह सबसे लोकप्रिय लिनक्स शेल है, कोई आश्चर्य नहीं कि यह कई लिनक्स वितरणों पर डिफ़ॉल्ट शेल है। इसकी सबसे आकर्षक विशेषताओं में से एक अंतर्निहित स्वतः पूर्णता . है समर्थन। कभी-कभी TAB . के रूप में संदर्भित किया जाता है पूरा होने पर, यह सुविधा आपको कमांड संरचना को आसानी से प

  1. लिनक्स में प्रभावी बैश स्क्रिप्ट लिखने के लिए 10 उपयोगी टिप्स

    शेल स्क्रिप्टिंग प्रोग्रामिंग का सबसे आसान रूप है जिसे आप लिनक्स में सीख सकते हैं/कर सकते हैं। इसके अलावा, यह सिस्टम प्रशासन के लिए कार्यों को स्वचालित करने, नई सरल उपयोगिताओं/उपकरणों को विकसित करने के लिए एक आवश्यक कौशल है, लेकिन कुछ का उल्लेख करने के लिए। इस लेख में, हम प्रभावी और विश्वसनीय बैश स

  1. मजेदार तरीके से बैश सीखने के लिए 3 कमांड लाइन गेम

    सीखना कठिन काम है, और किसी को भी काम पसंद नहीं है। इसका मतलब है कि बैश सीखना कितना भी आसान क्यों न हो, फिर भी यह आपको काम जैसा लग सकता है। बेशक, जब तक आप गेमिंग के माध्यम से नहीं सीखते। आपको नहीं लगता कि बैश टर्मिनल का उपयोग करने का तरीका सिखाने के लिए कई गेम होंगे, और आप सही होंगे। गंभीर पीसी गेमर