Käsurea lõpetamine

Allikas: Pingviini viki


Käsurea automaatne lõpetamine

Kindlasti on kõik, kes Linuxiga kokku puutunud, kas tekstikonsoolis või graafilise keskkonna terminaliaknas kasutanud võimalust programmide, kataloogide ja failide nimesid lõpetada klahvi <TAB> vajutamisega peale nime algusosa sisestamist. Kuid see funktsioon oma vaikimisi olekus ei ole eriti nutikas. Vaatleme näiteks situatsiooni, kus kasutaja tahab liikuda kataloogi Dokumendid ning on kirjutanud terminali järgmise rea:

$ cd D

ning vajutab <TAB>'i. Loogiliselt mõeldes võiks käsu cd puhul see tegevus pakkuda välja vaid kataloogide nimed, kuid enamasti näidatakse lisaks kataloogidele ka kõiki D-tähega algavaid faile.

Selleks puhuks on välja mõeldud vahend nimega bash_completion. Selle kasutamise eelduseks on fail /etc/bash_completion, mis piisavalt uue bash'i korral ja vähemasti Debianil baseeruvates süsteemides võiks juba olemas olla. Kui teie süsteemis see fail puudub, saate selle alla laadida siit: http://www.caliban.org/bash/index.shtml#completion (kerige pisut alla lõiguni Download, sikutage fail märkmega "tarred and gzipped source for bash 2.05 and later, including bash 3.x", pakkige see oma masinas lahti ning kopeerige arhiivis olev fail bash_completion kataloogi /etc).

Et nimetatud funktsionaalsust ka reaalselt kasutada, tuleb muuta faili /etc/bash.bashrc:

sudo nano /etc/bash.bashrc

Leidke sealt failist järgmine lõik:

#if [ -f /etc/bash_completion ]; then
# . /etc/bash_completion
#fi

ning eemaldage nende kolme rea eest kommentaar, nii et tulemus oleks selline:

if [ -f /etc/bash_completion ]; then
 . /etc/bash_completion
fi

Kui neid ridu seal veel ei olnud, siis lihtsalt lisage nad faili lõppu. Salvestage muudatused ning logige kasutaja välja ja uuesti sisse, seejärel peaks käsurea lõpetamine <TAB> klahviga töötama hoopis nutikamalt: lisaks failide ja kataloogide eristamisele vastavalt kasutatavale käsule saab lõpetada ka paljude programmide käsureaargumente ning veel palju muud.

NB: Juhul kui te ei soovite mingil põhjusel lubada nimetatud funktsionaalsuse vaid mõnele kindlale kasutajale, lisage eeltoodud kolm rida nende kasutajate kodukataloogis paiknevasse faili .bashrc ning eemaldage või kommenteerige nad välja failist /etc/bash.bashrc.


Välislingid