Misingi ya Linux: Utangulizi wa bash. Kutumia njia kamili na jamaa kwenye dashibodi Utangulizi wa bash

Baada ya kusoma nakala hii, utagundua ni nini bash(mkalimani wa kawaida wa amri ya Linux), jifunze jinsi ya kutumia amri za kawaida: ls, cp, mv...elewa madhumuni ya ingizo, viungo ngumu na vya mfano, na mengi zaidi.

Mafunzo haya yanalenga wale wapya kwenye Linux na kwa wale wanaotaka kukagua au kuboresha uelewa wao wa kanuni za msingi za Linux, kama vile kunakili na kuhamisha faili, kuunda viungo, kwa kutumia amri za kawaida za Linux pamoja na maelekezo kwingine na mirija. Katika makala hii utapata mifano mingi inayoelezea nyenzo zilizowasilishwa. Kwa wanaoanza, habari nyingi zitakuwa mpya, lakini kwa watumiaji wa hali ya juu zaidi nyenzo hii inaweza kuwa zana bora ya muhtasari wa maarifa na ujuzi uliopo.

Utangulizi wa bash

Shell

Ikiwa unatumia Linux, basi unajua kwamba baada ya kuingia unasalimiwa na haraka ya mkalimani wa amri. Kwa mfano hii:

\$

Ikiwa baada ya kuingia kwenye ganda la picha imepakiwa, basi ili kufikia mkalimani wa amri unahitaji kuzindua emulator ya terminal (gnome-terminal, xfce4-terminal, konsole, xterm, rxvt ...) au kubadili kwenye mojawapo ya vituo vya kawaida. kwa kubofya CtrlAltF1 au CtrlAltF2 na kadhalika.

Mwongozo wa shell kwenye kompyuta yako unaweza kutofautiana na kile kinachoonyeshwa kwenye mfano. Inaweza kuwa na jina la mtumiaji, jina la kompyuta, na jina la saraka ya sasa ya kufanya kazi. Lakini licha ya tofauti hizi zote, programu inayochapisha mwaliko huu inaitwa " ganda"(shell), na uwezekano mkubwa ganda lako la amri ni programu inayoitwa bash.

Unakimbia bash?

Unaweza kuangalia ikiwa bash inaendesha na amri ifuatayo:

\$ mwangwi \$SHELL/bin/bash

Ikiwa unapokea kosa kama matokeo ya kutekeleza amri hii au matokeo yake yanatofautiana na yale katika mfano, basi inawezekana kwamba mfumo wako hautumii bash kama ganda la amri. Licha ya hili, nyenzo nyingi zitakuwa muhimu, lakini bado tunapendekeza ubadilishe kwa bash. Hii inaweza kufanywa (ikiwa bash imewekwa kwenye mfumo) na amri:

\$ bash

bash ni nini

Bash (kifupi cha " B yetu- a faida SH ell") ndiye mkalimani wa amri ya kawaida kwenye mifumo mingi ya Linux. Majukumu yake ni pamoja na usindikaji na kutekeleza amri ambazo mtumiaji hudhibiti kompyuta. Mara tu ukimaliza, unaweza kutoka kwa mchakato wa ganda. Baada ya kushinikiza funguo CtrlD, timu Utgång au kuondoka Mchakato wa shell utasitishwa na utaulizwa kuingiza jina lako la mtumiaji na nenosiri tena.

Kutumia "cd"

Wacha tuanze kutumia bash kuzunguka mfumo wa faili. Ili kuanza, chapa amri ifuatayo:

$ cd/

Kwa amri hii tulionyesha bash kwamba tunataka kuhamia kwenye saraka ya mizizi - / . Saraka zote katika mfumo zimepangwa katika muundo wa mti na / huu ni mwanzo wake (au mzizi). Timu CD hutumikia kubadilisha saraka ya sasa ya kufanya kazi.

Njia

Ili kujua ni wapi kwenye mfumo wa faili ulipo (saraka ya sasa ya kufanya kazi), chapa:

\$ pwd /

Katika mfano hapo juu / - hoja ya amri CD- kuitwa njia. Hapa ndipo mahali kwenye mfumo wa faili ambapo tunataka kuhamia. Kwa kesi hii / - njia kabisa, hii ina maana kwamba njia ni jamaa na saraka ya mizizi.

Njia kabisa

Hapa ni baadhi ya mifano ya njia kabisa

/dev /usr /usr/bin /usr/local/bin

Kama unavyoweza kuwa umeona, njia hizi zote zinafanana ambazo huanza nazo / . Kwa kubainisha njia /usr/local/bin kama hoja kwa amri CD tunamwambia aende kwenye saraka ya mizizi / , kisha kwa saraka ya usr, kisha kwa local na bin. Njia kamili daima huanza na /

Njia za jamaa

Aina ya pili ya njia inaitwa jamaa. Bash, timu CD na amri zingine huhesabu njia hizi zinazohusiana na saraka ya sasa. Njia za jamaa hazianzi kamwe / . Kwa mfano, ikiwa tuko katika /usr

\$ cd /usr

Kisha tunaweza kwenda kwa /usr/local/bin kwa kutumia njia ya jamaa

\$ cd local/bin \$ pwd/usr/local/bin

Matumizi ".."

Njia zinazohusiana zinaweza kuwa na saraka moja au zaidi «..» . ".." inaonyesha saraka kuu ya saraka yetu ya kufanya kazi. Mfano:

\$ pwd/usr/local/bin\$ CD.. \$ pwd/usr/ndani

Kama unaweza kuona, timu CD..‘inatuinua hadi ngazi ya juu’.

Inaweza kuongeza .. kwa njia ya jamaa. Hii itaturuhusu kuhamia saraka ambayo iko katika kiwango sawa na ile tuliyomo. Mfano:

\$ pwd/usr/local\$ cd ../share \$ pwd/usr/shiriki

Mifano kwa kutumia njia za jamaa

Njia za jamaa zinaweza kuwa ngumu sana. Hapa kuna baadhi ya mifano. Matokeo ya kutekeleza maagizo hayajaonyeshwa, jaribu kuamua ni saraka gani utakuwa katika kutumia bash.

\$ cd /bin \$ cd ../usr/share/zoneinfo \$ cd /usr/X11R6/bin \$ cd ../lib/X11 \$ cd /usr/bin \$ cd ../bin/../bin

Saraka ya kufanya kazi "."

Kabla hatujamaliza kuzungumzia timu CD, kuna mambo machache zaidi yanayostahili kutajwa. Kwanza, kuna saraka nyingine maalum «.» , ambayo inaelekeza kwenye saraka ya sasa. Saraka hii inatumika kuendesha faili zinazoweza kutekelezwa ziko kwenye saraka ya sasa.

\$ ./myprog

Katika mfano wa mwisho, myprog ni faili inayoweza kutekelezwa iliyo kwenye saraka ya sasa ambayo itazinduliwa kwa ajili ya utekelezaji.

cd na saraka ya nyumbani ya mtumiaji

Ili kwenda kwenye saraka yako ya nyumbani, unahitaji kuandika

\$ CD

Bila mabishano, cd itakupeleka kwenye saraka yako ya nyumbani. Kwa mtumiaji mkuu, saraka ya nyumbani kawaida ni /mizizi, na kwa watumiaji wa kawaida - /home/username/. Lakini vipi ikiwa tunataka kutaja faili maalum iliyo kwenye saraka ya nyumbani. Kwa mfano, kama hoja kwa programu 'myprog'? Unaweza kuandika:

\$ ./myprog /home/user/myfile.txt

Walakini, kutumia njia kamili za faili sio rahisi kila wakati. Operesheni sawa inaweza kufanywa kwa kutumia ~ -tildes:

\$ ./myprog ~/myfile.txt

~ - jina maalum linaloelekeza kwenye saraka ya nyumbani ya mtumiaji katika bash.

Saraka za nyumbani za watumiaji wengine

Lakini vipi ikiwa tunahitaji kuelekeza faili kwenye saraka ya nyumbani ya mtumiaji mwingine? Ili kufanya hivyo, baada ya tilde unahitaji kuonyesha jina la mtumiaji huyu. Kwa mfano, ili kuelekeza kwenye faili fredsfile.txt iliyoko katika saraka ya nyumbani ya mtumiaji fred:

\$ ./myprog ~fred/fredsfile.txt

Amri za Linux

Utangulizi wa ls

Labda tayari unaifahamu timu ls, ambayo, inayoitwa bila hoja, inaonyesha orodha ya faili zilizohifadhiwa kwenye saraka ya kufanya kazi:

\$ cd /usr \$ ls X11R6 doc i686-pc-linux-gnu lib man sbin ssl bin gentoo-x86 include libexec portage share tmp distfiles i686-linux info local portage.old src

Ukitaja chaguo -a, utaweza kuona faili zote, pamoja na zile zilizofichwa (ambazo majina yao huanza na nukta).

\$ ls -a. bin gentoo-x86 ni pamoja na libexec portage share tmp .. distfiles i686-linux info local portage.old src X11R6 doc i686-pc-linux-gnu lib man sbin ssl

Orodha ya kina ya saraka

Baada ya amri yenyewe ls faili moja au zaidi au saraka zinaweza kubainishwa kama hoja yake. Ikiwa unataja jina la faili, amri ls itaonyesha habari kuhusu faili hii pekee. Na ukitaja jina la saraka, ls itaonyesha yaliyomo yake yote. Chaguo '-l' timu ls inaweza kuwa muhimu sana ikiwa unataka, pamoja na majina ya faili, kupata maelezo zaidi juu yao (haki za faili, jina la mmiliki, wakati wa marekebisho ya mwisho ya faili na ukubwa wake).

Mfano ufuatao unaonyesha matumizi ya chaguo '-l' kuonyesha habari kuhusu faili zilizohifadhiwa kwenye saraka ya /usr

\$ ls -l /usr drwxr-xr-x 7 mzizi mzizi 168 Nov 24 14:02 X11R6 drwxr-xr-x 2 mzizi 14576 Des 27 08:56 bin drwxr-xr-x 2 mzizi mzizi 8856 Des 26 drxwst12 Des 22 20:57 hati -> share/doc drwxr-xr-x 62 mzizi 1856 Des 27 15:54 gentoo-x86 drwxr-xr-x 4 mzizi 152 Des 12 23:10 i686-xrx-linux drwxr-xr-x 4 mzizi wa mizizi 96 Nov 24 13:17 i686-pc-linux-gnu drwxr-xr-x 54 mzizi 5992 Des 24 22:30 ni pamoja na lrwxrwxrwx 1 mzizi 10 Des 22 20:57 info xrwxrinfo -> share -> -x 28 mzizi wa mizizi 13552 Des 26 00:31 lib drwxr-xr-x 3 mzizi wa mizizi 72 Nov 25 00:34 libexec drwxr-xr-x 8 mzizi 240 Des 22 20:57 mzizi wa ndani lrwx 25 Dec 2 Des :57 man -> share/man lrwxrwxrwx 1 root root 11 Des 8 07:59 portage -> gentoo-x86/ drwxr-xr-x 60 mzizi 1864 Des 8 07:55 portage.old drwxr-xr-mzizi-x 3096 Des 22 20:57 sbin drwxr-xr-x 46 mzizi wa mizizi 1144 Des 24 15:32 shiriki drwxr-xr-x 8 mzizi 328 Des 26 00:07 src drwxr-xr root 4 Nov 1-7 25 ssl lrwxrwxrwx mzizi 1 10 Des 22 20:57 tmp -> ../var/tmp

Safu wima ya kwanza inaonyesha habari kuhusu haki za ufikiaji za kila faili kwenye orodha. (Baadaye kidogo nitaeleza ni herufi gani inamaanisha nini) Safu inayofuata inaonyesha idadi ya viungo kwa kila kipengele cha orodha. Safu ya tatu na ya nne ni mmiliki na kikundi cha faili, kwa mtiririko huo. Safu ya tano ni saizi. Ya sita ni wakati ambapo faili ilirekebishwa mara ya mwisho (‘saa ya mwisho iliyorekebishwa’ au mtime). Safu wima ya mwisho ni jina la faili au saraka (Ikiwa hii ni kiunga, basi baada ya ' –> ‘ inasimamia jina la kitu kinachorejelea).

Jinsi ya kutazama saraka tu

Wakati mwingine kuna haja ya kutazama habari tu kuhusu saraka, na sio kuhusu yaliyomo yao yote. Chaguo litakusaidia kukabiliana na kazi hii '-d', ambayo inaambia amri kuonyesha habari kuhusu saraka pekee. Mfano:

\$ ls -dl /usr /usr/bin /usr/X11R6/bin ../share drwxr-xr-x 4 mzizi 96 Des 18 18:17 ../share drwxr-xr-x 17 mzizi 576 Des 24 09:03 /usr drwxr-xr-x 2 mzizi 3192 Des 526 /usr /X11R6/bin drwxr-xr-x 2 mzizi 14576 Des 27 08:56 /usr/bin

Orodha ya kujirudia na habari ya ingizo

Kitendo cha chaguo '-R' kinyume cha kitendo '-d'. Inakuruhusu kuonyesha habari kuhusu faili zilizo kwenye saraka kwa kujirudia. Kwanza, yaliyomo kwenye saraka ya kiwango cha juu yanaonyeshwa, kisha yaliyomo kwenye subdirectories zote kwa upande wake, na kadhalika. Matokeo ya amri hii yanaweza kuwa ya muda mrefu, kwa hivyo hatutoi mfano, lakini unaweza kujaribu mwenyewe kwa kuandika ' ls -R'au' ls -Rl‘.

Na hatimaye, chaguo '-mimi' kutumika kuchapisha ingizo za kila kitu cha mfumo wa faili.

\$ ls -i /usr 1409 X11R6 314258 i686-linux 43090 libexec 13394 sbin 1417 bin 1513 i686-pc-linux-gnu 5120 local 13408 share 8316 distfiles 15394 sbin 1417 bin 1513 i686-pc-linux-gnu 5120 local 13408 share 8316 distfiles 15396 manc 8 1778 manc 23748 info 3 892 portage 36737 ssl 70744 gentoo-x86 1585 lib 5132 portage. zamani 784 tmp

Ingizo ni nini?

Kila kitu cha mfumo wa faili (faili, saraka ...) ina nambari yake ya kipekee, inayoitwa ingizo(nambari ya nodi). Taarifa hii inaweza kuonekana kuwa isiyo na maana, lakini kuelewa kazi ya ingizo itakusaidia kuelewa shughuli nyingi za mfumo wa faili. Kwa mfano, hebu tuangalie «.» Na «..» kama viungo vilivyopo kwenye kila saraka. Ili kuelewa saraka ni nini «..» , tafuta ingizo la saraka /use/local

\$ ls -id /usr/local 5120 /usr/local

Kama tunavyoona, ingizo la saraka /usr/local ni 5120. Sasa hebu tuone ni ingizo gani saraka /usr/local/bin/.. ina:

\$ ls -id /usr/local/bin/.. 5120 /usr/local/bin/..

Inabadilika kuwa ingizo za saraka za /usr/local na /usr/local/bin/.. ni sawa! Hii inamaanisha kuwa ingizo 5120 inarejelewa na majina mawili: /usr/local na /usr/local/bin/.. Hiyo ni, haya ni majina mawili tofauti kwa saraka sawa. Kila ingizo huelekeza kwenye eneo maalum kwenye diski.

Kila ingizo inaweza kuwa na majina ya vitu vingi vya mfumo wa faili vinavyohusishwa nayo. Idadi ya 'visawe' vya faili (vitu vya mfumo wa faili vinavyorejelea ingizo sawa) inaonyeshwa na nambari katika safu wima ya pili ya pato la amri. ls -l‘.

\$ ls -dl /usr/local drwxr-xr-x 8 mzizi 240 Des 22 20:57 /usr/local

Mfano huu unaonyesha (safu wima ya pili) kwamba saraka /usr/local inarejelewa na vitu 8 tofauti vya mfumo wa faili. Haya ndio majina yao:

/usr/local /usr/local/. /usr/local/bin/.. /usr/local/games/.. /usr/local/lib/.. /usr/local/sbin/.. /usr/local/share/.. /usr/local/ src/..

mkdir

Hebu tuangalie amri mkdir. Inatumika kuunda saraka mpya. Mfano ufuatao unaonyesha uundaji wa saraka tatu mpya (tic, tac, toe) kwenye saraka ya /tmp

\$ cd /tmp $ mkdir tic tac toe

Amri chaguomsingi mkdir haiwezi kuunda muundo wa saraka uliowekwa. Kwa hivyo, ikiwa unahitaji kuunda saraka kadhaa zilizowekwa ( won/der/ful), basi itabidi uite amri hii mara tatu kwa zamu:

\$ mkdir won/der/ful mkdir: haiwezi kuunda saraka "won/der/ful": Hakuna faili au saraka kama hiyo \$ mkdir alishinda \$ mkdir won/der \$ mkdir won/der/ful

Unaweza kurahisisha operesheni hii kwa kuongeza chaguo '-p' kwa amri ya mkdir. Chaguo hili hukuruhusu kuunda muundo wa saraka uliowekwa:

\$ mkdir -p rahisi/kama/pie

Ili kujifunza zaidi juu ya uwezo wa shirika hili, soma usaidizi, unaoitwa kwa amri mtu mkdir. Kuna msaada kwa karibu amri zote katika mwongozo huu (kwa mfano mtu ls), isipokuwa CD, kwa sababu imejengwa kwa bash (kwa amri kama hizo, msaada unaitwa kama hii: msaada cd)

kugusa

Wacha tuendelee kwenye kusoma amri cp Na mv, inayotumika kunakili, kubadilisha jina na kuhamisha faili na saraka. Lakini kabla ya hapo, wacha tuunda faili tupu kwenye saraka ya /tmp kwa kutumia amri kugusa:

\$ cd /tmp \$ gusa nakala

Timu kugusa inasasisha wakati wa mwisho wa ufikiaji wa faili (safu ya sita ya pato la amri ls -l) ikiwa tayari ipo au inaunda faili mpya tupu ikiwa haipo bado. Baada ya operesheni hii tunapaswa kuwa na faili tupu /tmp/copyme.

mwangwi

Sasa kwa kuwa tuna faili tupu, hebu tuandike kamba ya maandishi ndani yake kwa kutumia amri mwangwi, ambayo huchapisha hoja iliyopitishwa kwake kwa kifaa cha kawaida cha pato (kituo cha maandishi kwa upande wetu).

\$ echo "faili ya kwanza" faili ya kwanza

Kuandika mstari kwa faili yetu, hebu tuelekeze pato la amri kwake mwangwi:

\$ echo "firstfile"> nakala

Ishara > (zaidi) huambia ganda kuelekeza matokeo ya amri upande wa kushoto kwa faili ambayo jina lake liko kulia. Ikiwa faili yenye jina sawa haipo, itaundwa moja kwa moja. Na ikiwa faili kama hiyo tayari ipo, itaandikwa tena (yaliyomo ndani yake yote yatafutwa kabla ya kuandika laini yetu). Timu 'ls -l' itaonyesha kuwa saizi ya faili yetu sasa ni ka 10 - ka tisa zimechukuliwa na neno 'firstfile' na byte moja kwa herufi ya mlisho wa mstari.

\$ ls -l nakala-rw-r--r-- mzizi 1 10 Des 28 14:13 nakala

paka na cp

Ili kutoa yaliyomo kwenye faili kwenye terminal, tumia amri paka:

\$ nakala ya paka faili ya kwanza

Sasa tunaweza kuanza kuchambua utendaji wa msingi wa amri cp. Amri hii inachukua hoja mbili. La kwanza ni jina la faili lililopo (‘copyme’), la pili ni jina la nakala mpya tunayotaka kutengeneza (‘copiedme’).

\$ cp copyme imenakiliwa

Tunaweza kuhakikisha kuwa nakala mpya ya faili ina nambari tofauti ya ingizo (hii inamaanisha kuwa tulipokea faili mpya tofauti, na sio kiunga cha ile ya zamani tu)

\$ ls -i copyme copiedme 648284 imenakili 650704 nakala

mv

Sasa hebu tumia amri mv kubadilisha jina la faili ("copiedme" -> "movedme"). Nambari ya ingizo haibadilika baada ya operesheni hii, tu jina la faili linabadilika.

\$ mv copiedme ilinisogeza \$ ls -nilinisogeza 648284 ilinihamisha

Nambari ya ingizo haibadilika tu ikiwa faili iliyopewa jina inabaki ndani ya mfumo wa faili ambapo faili asili ilikuwa. Tutaangalia kwa karibu muundo wa mifumo ya faili katika mojawapo ya sehemu zifuatazo za mafunzo haya.

Timu mv hukuruhusu sio kubadilisha jina la faili tu, lakini pia kuzihamisha. Kwa mfano, kuhamisha faili /var/tmp/myfile.txt kwa saraka /nyumbani/mtumiaji unahitaji kutoa amri:

\$ mv /var/tmp/myfile.txt /home/user

Faili itahamishwa hadi kwenye saraka ya nyumbani ya mtumiaji mtumiaji hata ikiwa iko kwenye mfumo tofauti wa faili (katika kesi hii, faili itakiliwa kwenye eneo jipya baada ya hapo awali itafutwa). Kama unavyoweza kukisia, kuhamisha faili kwa mfumo mwingine wa faili hubadilisha ingizo lake. Hii hutokea kwa sababu kila mfumo wa faili una seti yake tofauti ya ingizo.

Ikumbukwe kwamba kuna uwezekano kwamba nambari mpya ya ingizo iliyowekwa inaweza kuendana na ile ya zamani, lakini ni ndogo sana.

Ili kuhamisha faili kadhaa kwa wakati mmoja kwenye saraka moja unahitaji kuandika:

\$ mv /var/tmp/myfile1.txt /var/tmp/myfile2.txt /home/user \$ mv -t /home/user /var/tmp/myfile1.txt /var/tmp/myfile2.txt

Ikiwa unaongeza chaguo '-v', ripoti juu ya operesheni iliyofanywa itaonyeshwa kwenye skrini:

\$ mv -vt /home/user /var/tmp/myfile1.txt /var/tmp/myfile2.txt"/var/tmp/myfile1.txt" -> "/home/user/myfile1.txt" "/var/tmp/myfile2.txt" -> "/home/user/myfile2.txt"

Faili zote katika Linux zina anwani maalum katika mfumo wa faili ambazo tunaweza kuzifikia kwa kutumia kidhibiti faili au huduma za kiweko. Hii ni mada rahisi, lakini wanaoanza wengi wana shida nayo.

Katika makala fupi ya leo tutaangalia njia ya faili ya Linux ni nini, inaweza kuwa nini, jinsi ya kuandika kwa usahihi na mengi zaidi. Ikiwa ulikuwa na shida na hii hapo awali, basi baada ya kusoma kifungu kila kitu kitakuwa wazi kabisa.

Njia za faili kwenye Linux

Mfumo wa faili wa Linux ni tofauti sana na Windows. Hatutazingatia muundo wake; hiyo ilifanyika hapo awali. Tutazingatia kufanya kazi na faili.

Tofauti muhimu zaidi ni kwamba anwani ya faili haianza kutoka kwa gari, kwa mfano, C: \ au D: \ kama inavyotokea kwenye Windows, lakini kutoka kwenye mizizi, saraka ya mfumo wa mizizi ambayo wengine wote wameunganishwa. Anwani yake - /. Na hapa tunahitaji kuzungumza juu ya anwani. Njia za faili za Linux hutumia kufyeka mbele "/" kutenganisha saraka kwenye anwani, na hii ni tofauti na ile uliyozoea kuona kwenye Windows - \.

Kwa mfano, ikiwa katika Windows njia kamili ya faili kwenye eneo-kazi inaonekana kama C:\Users\Sergiy\Desktop\, basi njia ya faili katika Linux itakuwa tu /home/sergiy/desktop/. Kwa hili, kila kitu ni rahisi na wazi hadi sasa. Lakini matatizo hutokea zaidi.

Katika mfumo wa uendeshaji wa Linux, kunaweza kuwa na aina kadhaa za njia za faili. Wacha tuangalie ni njia gani ziko kwenye Linux:

  • Njia kamili, kamili ya linux kutoka kwa mzizi wa mfumo wa faili- tayari umeona njia hii katika mfano hapo juu, huanza kutoka kwenye mizizi "/" na inaelezea njia nzima ya faili;
  • Njia ya jamaa ya Linux- hii ndio njia ya faili inayohusiana na folda ya sasa; njia kama hizo mara nyingi husababisha machafuko.
  • Njia inayohusiana na folda ya nyumbani ya mtumiaji wa sasa.- njia katika mfumo wa faili, lakini sio kutoka kwa mizizi, lakini kutoka kwa folda ya mtumiaji wa sasa.

Hebu sasa tuchunguze kwa undani jinsi njia hizi zinavyoonekana katika Linux, na pia tuangalie mifano michache ili kuifanya iwe wazi kabisa. Kwa onyesho, tutatumia matumizi ya ls, ambayo imeundwa kutazama yaliyomo kwenye saraka.

Kwa mfano, tunayo saraka kama hii kwenye folda yetu ya nyumbani iliyo na faili nne ndani yake:

Hivi ndivyo njia kamili ya Linux kwa moja ya faili itaonekana kama:

ls /home/sergiy/tmp/file1

Hii tayari ni njia ya jamaa ya Linux, ambayo huanza kutoka kwa folda ya nyumbani, imeteuliwa ~/. Kumbuka, sio ~, yaani ~/. Basi unaweza kutaja folda ndogo, kwa upande wetu tmp:

Kweli, au njia ya faili kwenye Linux, inayohusiana na folda ya sasa:

Kiungo cha kwanza kinaelekeza kwenye folda ya sasa (.), cha pili (..) kinaelekeza kwenye folda ya juu zaidi. Hii hufungua uwezekano mkubwa zaidi wa urambazaji wa katalogi. Kwa mfano, kurejelea faili kwenye folda ya sasa unaweza kutumia muundo ufuatao:

Hii haina maana wakati wa kutazama yaliyomo kwenye faili. Lakini ni muhimu sana wakati wa kutekeleza programu. Kwa sababu programu itatafutwa kwanza katika mazingira ya PATH, na kisha tu kwenye folda hii. Kwa hivyo, ikiwa unahitaji kuendesha programu ambayo iko kwenye folda ya sasa na inaitwa sawa na ile iliyo kwenye saraka ya /bin, basi bila kiunga wazi ambacho unahitaji kutafuta faili kwenye folda ya sasa, hakuna kitakachofanya kazi.

Ubunifu kama huo unaweza kutokea mara nyingi wakati wa kuandaa programu. Unaweza kutumia alama hizi zote na njia za faili za linux sio tu kwenye terminal, lakini pia katika meneja wa faili yoyote, ambayo inaweza kuwa rahisi sana.

Lakini terminal ya Linux hutoa chaguzi zaidi. Unaweza kutumia herufi rahisi za kadi-mwitu moja kwa moja kwenye anwani za faili au saraka. Kwa mfano, unaweza kuorodhesha faili zote kuanzia na f:

Au unaweza hata kutafuta sio tu kwenye folda ya tmp, lakini kwenye folda yoyote ya folda yako ya nyumbani:

Na hii yote itafanya kazi, labda sio lazima kila wakati na vitendo. Lakini katika hali fulani inaweza kusaidia sana. Kazi hizi zinatekelezwa kwa kiwango cha ganda la Bash, kwa hivyo unaweza kuzitumia kwa amri yoyote. Gamba linaangalia ni faili ngapi zilipatikana na huita amri kwa kila moja yao.

hitimisho

Ni hayo tu. Sasa unajua kila kitu unachohitaji sio tu kuandika njia sahihi ya faili ya Linux, lakini pia kufanya vitendo ngumu zaidi, kama vile kutafuta faili au kuvinjari saraka kwa kutumia amri ya cd. Ikiwa una maswali yoyote, uliza kwenye maoni!

Machapisho yanayohusiana:


Hivi majuzi nilielezea amri za kuelekeza saraka kwenye terminal Linux. Kwa hivyo niliamua kuendelea na hadithi kuhusu amri kwenye koni. Kwa hivyo harakati zinaonekana kutatuliwa. Sasa nataka kuangalia kwa undani zaidi ni njia gani za saraka ziko kwenye koni.

Hebu kwanza tuangalie njia zinazojulikana zaidi kwa faili na saraka zetu, ambazo ni njia kamili. Fungua terminal na toa amri inayoonyesha njia kamili ya saraka yako ya nyumbani. Nilizungumza kuhusu timu hii hivi karibuni, hapa. Ingiza pwd:


:~$pwd
/nyumbani/dante


Kama unaweza kuona, amri hii ya koni ilionyesha njia kamili kuanzia saraka ya mizizi. Nilielezea aina hii ya harakati kupitia saraka hivi karibuni, harakati hii kwa kutumia njia kabisa. Lakini hizi sio uwezekano wote wa kusonga kupitia kategoria za mfumo wetu wa kufanya kazi. Katika mfumo wa uendeshaji Linux, pia kuna uwezekano wa kutumia njia za jamaa.

Njia zinazohusiana katika kategoria za hesabu za kiweko zinazohusiana na aina uliyomo. Wanaweza kutumika kwa kutumia ".." nukta mbili zilizoonyeshwa mbele ya folda tunayotaka kwenda. Twende mahali fulani katika mfumo wetu wa uendeshaji. Kwa mfano, kwenye folda usr na kukagua yaliyomo na timu ls.

dante@dante-1001PXD:~$ cd /usr
dante@dante-1001PXD:/usr$ ls

dante@dante-1001PXD:/usr$

Hapa tunaona orodha ya saraka zinazopatikana. Wacha tuende kwenye saraka " shiriki».

dante@dante-1001PXD:~$ cd /usr/share


Kwa hivyo, sasa tuko kwenye kitengo /usr/shiriki kama tunavyoona. Hebu sasa twende kwenye kategoria ambayo iko kwenye kiwango sawa na kitengo tulichomo. Kwa mfano, katika kitengo " mtaa" Hii inaweza kufanywa kwa kutumia njia kamili kama hii.

dante@dante-1001PXD:~$ cd /usr/local

dante@dante-1001PXD:/usr/share$ pwd
/usr/shiriki
dante@dante-1001PXD:/usr/share$


Kama unavyoona, nimekuonyesha kwenye koni njia kamili ya kufika mahali ulipo. Tunajua kuwa saraka " mtaa" iko kwenye kiwango sawa na saraka " shiriki” na tunaweza kutumia amri kama hii.

dante@dante-1001PXD:/usr/share$ cd ../local
dante@dante-1001PXD:/usr/local$


Kama unaweza kuona, amri ya swala imekuwa rahisi zaidi. Lakini hii ni tu ikiwa unakumbuka saraka ambazo ziko kwenye kiwango sawa na saraka yako ya kufanya kazi, na sikumbuki saraka zingine kila wakati kwenye koni.

Ili kuhamia saraka inayofuata, ingiza tu amri kwenye koni kuhusu saraka yako ya kufanya kazi. Kwa madhumuni haya, tumia badala yake ".." pointi mbili, "." nukta moja na utasonga ukilinganisha na saraka kwenye koni ambayo unapatikana sasa. Hebu turudi kwenye saraka /usr na tuangalie tena kilichopo.

dante@dante-1001PXD:/usr/local$ cd /usr
dante@dante-1001PXD:/usr$ ls
bin michezo ni pamoja na lib local sbin share src
dante@dante-1001PXD:/usr$


Wacha tuende kwenye saraka " shiriki»inahusiana na saraka ambayo tuko sasa. Ili kufanya hivyo, ingiza kwenye console

dante@dante-1001PXD:/usr$ cd ./local
dante@dante-1001PXD:/usr/local$


Kama unaweza kuona, kutumia njia za jamaa kunaweza kupunguza sana amri unazoingiza kwenye koni Linux.