Whereis
Autor
Joonas-Tanel Kessel A21
Sissejuhatus ja ülevaade
Kavatsen siin ära kirjeldada käsu nimega 'whereis, mis oma olemuselt räägib lahti, mida ta teeb- where is ehk kus on. Kasutatakse eelkõige binaarkoodi, lähtekoha ja manual-failide otsimiseks süsteemist. Whereis-i kasutades võetakse otsitavalt sõnelt ära kõik faili-laiendid, mis pruugivad seda otsingut hoopis segada. Samuti ei kasutata seal etteantud teid- ei täispikka ega otsest. Seejärel proovib whereis käsk leida otsitavat sõnet Linux süsteemist. Tegemist on lihtsa käsuga, mida on ka lihtne kasutada tänu oma võtmetele.
Whereis käsk proovib üles leida dokumente ja faile hard-coded teedest(lühike-,täispikk tee), mis on kirjeldatud glob-mustritega. Käsk üritab kasutada oma otsingus $PATH ja $MANPATH keskkonna muutujaid. Kõige lihtsam viis, et teada saada, mis teid whereis käsk kasutab on lõppu lisada -l operaator. Sellisel viisil kuvatakse välja teed, miskaudu otsiti dokumenti või kausta.
Whereis käsk on üks osa util-linux paketist, mis on saadaval Linux Kernel Archive-ist, järgneval aadressil- [[1]]
The whereis command is part of the util-linux package and is
available from Linux Kernel Archive ⟨ftp://ftp.kernel.org/pub/linux/utils/util-linux/⟩.
Käsu formaadid
Whereis-i puhul on võimalik otsida nii ilma, kui ka koos võtmega.
$ whereis [-valikud]
$ whereis [otsitav sõne ilma võtmeta}
$ whereis -b[otsitav sõne võtmega}
Whereis põhiline kasutamine e. syntax
whereis | [käsklus e. command]. |
whereis | programm. |
whereis | [valikud] programm |
whereis | BMS kaust e. directory -f käsklus e. command |
Näited whereis kasutusest
Whereis kasutamine failide e. files otsimiseks, kus näitena otsime faili "linux".
$ whereis linux
Whereis kasutamine binaarfailide e. binary files otsimiseks, kus näitena otsime "linux" binaarfaile
$ whereis -b linux
Siinkohal tuleb tähele panna asjaolu, et binaarfailide otsimiseks lisandub käskluse enda järele "-b"
Binaarfailid piiramine kaustades
You can pass the following option to limit limit the places where whereis searches for files: Selle tõkisega on võimalik piirata kindlate kaustadega binaarfailide otsimist nendes kaustades
Whereis kasutamine juhendifaiide e. manual files otsimiseks, kus näitena otsime "linux" juhendifaile
$ whereis -m linux
Siinkohal tuleb tähele panna asjaolu, et juhendifailide otsimiseks lisandub käskluse enda järele "-m"
Whereis kasutamine lähtekoodi e. source code otsimiseks, kus näitena otsime "linux" lähtekoodi
$ whereis -s linux
Siinkohal tuleb tähele panna asjaolu, et lähtekoodi otsimiseks lisandub käskluse enda järele "-s"
Ebaharilikud failid ja nende otsimine
Ebaharilikeks failideks nimetatakse just neid faile, millel on rohkem kui üks sisestus selle faili kohta. Järgnev näide näitab kuidas kasutada whereis käsklust ebaharilike failide otsimiseks.
$ whereis -m -u *
Whereis kasutamisest kaustapiirangutega
Binaarfailide otsimise limiteerimine kindlate kataloogidega
Käsu järele kirjutatakse tühikutega eraldatud kaustad
$ whereis -B nimekiri piiravatest kaustadest
Juhendifailide otsimise limiteerimine kindlate kataloogidega
Käsu järele kirjutatakse tühikutega eraldatud kaustad
$ whereis -M nimekiri piiravatest kaustadest
Lähtefailide otsimise limiteerimine kindlate kataloogidega
Käsu järele kirjutatakse tühikutega eraldatud kaustad
$ whereis -S nimekiri piiravatest kaustadest
Failide kustutamine nende leidmisel Whereis-iga
Kutstutab kausta, mida whereis käsuga ette kirjutati. Oluline on meeles pidada, et saab kasutada vaid operaatoritega -B, -M või -S
$ whereis -M -f
Failide otsimiseks kasutatud teekondade kuvamine -l käsu abil.
Võimalik kasutada ka ilma operaatoriteta (-M, -B, -S), kus viimasel juhul jäetakse välja "hard-coded" teekonnad.
$ whereis [-M] -l
Näide mitme võtme kasutamisest Whereis käsu juures
Toon näitena ülesande, kus proovin leida /usr/bin kataloogist kõik dokumendid, mida ei ole dokumenteeritud /usr/man/man1 kataloogis või oma source-i /usr/bin kataloogis.
Kõigepealt sisenen kataloogi täispika teega
$ cd /usr/bin
Seejärel kirjutan käsu, et otsida kataloogist käsuga ebaharilikke faile, mis on juhendifailid ja lähtekoodis.
$ whereis -u -ms
Lisan käsule otsa veel operaatoreid ja kaustu, kus otsin lisaks eelnevale ka piiranguga juhendifaile kaustast /usr/man/man1
$ whereis -u -ms -M /usr/man/man1
Lisan veel ühe operaatori koos piirava kaustaga, kus viimasest otsin lähtekood, kaustast /usr/src/ -f. Lõpetan käsu *-operaatoriga et kuvataks kõik andmed
$ whereis -u -ms -M /usr/man/man1 -S /usr/src -f *