Di Linux, secara default Bash menyediakan penyelesaian standar berikut untuk digunakan pengguna di baris perintah:
- Penyelesaian nama variabel
- Nama pengguna selesai
- Penyelesaian yang dapat dijalankan
- Nama file dan direktori selesai
- Penyelesaian nama host
1. Penyelesaian Nama Variabel
Setelah mengetik $ di terminal, menekan tab dua kali akan menampilkan semua variabel shell yang tersedia seperti yang ditunjukkan di bawah ini.
$ 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
2. Penyelesaian Nama Pengguna
Ketika Anda menekan tab dua kali, setelah tilde (~), bash akan secara otomatis memulai penyelesaian nama pengguna.
$ cd ~[TAB][TAB] ~bala/ ~raj/ ~jason/ ~randy/ ~john/ ~ritu/ ~mayla/ ~thomas/ ~nisha/ ~www-data
Harap dicatat bahwa ini tidak mengambil nama pengguna dari direktori home. Sebagai gantinya, ini menampilkan semua nama pengguna yang tersedia dari file /etc/passwd
3. Penyelesaian Pathname untuk Yang Dapat Dieksekusi
Ketika Anda mencoba untuk mengeksekusi sebuah perintah, jika executable memiliki izin eksekusi, maka secara otomatis akan selesai, jika satu kecocokan ditemukan seperti yang ditunjukkan pada contoh di bawah ini.
$ 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
Ketika beberapa kecocokan ditemukan, itu akan menampilkan perintah yang tersedia.
4. Penyelesaian Nama File dan Direktori
Penyelesaian ini untuk nama file dan nama direktori yang muncul di posisi kedua dan selanjutnya pada baris perintah. Tidak seperti contoh di atas, ini tidak memeriksa izin apa pun, dan hanya akan menampilkan semua file dan direktori yang tersedia.
$ ls countfiles.sh dir1 dir2 dir3 $ cat [TAB][TAB] countfiles.sh dir1 dir2 dir3 $ cat c[TAB][TAB] $ cat countfiles.sh
Juga, ketika ada banyak file yang akan ditampilkan, alih-alih menampilkan semua kemungkinan di layar, yang mungkin akan sangat membingungkan, itu akan memberikan pesan peringatan berikut.
$ ls -l /etc/ Display all 228 possibilities? (y or n)
5. Penyelesaian Nama Inang
Untuk menghubungkan nama host, tekan tab dua kali setelah simbol @ seperti yang ditunjukkan di bawah ini:
$ ssh john@[TAB][TAB] @dev-db @fileserver @qa-server @prod-db @localhost @web-server
Anda dapat menggunakan fitur penyelesaian nama host ini bersama dengan perintah apa pun yang dapat Anda berikan @ untuk nama host. Misalnya, Anda dapat menggunakan ini dengan scp juga seperti yang ditunjukkan di bawah ini:
$ scp filename.txt john@[TAB][TAB] @dev-db @fileserver @qa-server @prod-db @localhost @web-server
Harap dicatat bahwa ini mengambil nama host yang tersedia dari file /etc/hosts.