logo

Kā iegūt pilnu faila ceļu operētājsistēmā Linux

Veidojot čaulas skriptus, mēs bieži strādājam ar Linux failiem. Bet dažreiz mums ir jāzina pilns faila ceļš, pie kura strādājam, un šajā rakstā jūs uzzināsit, kā iegūt visu faila ceļu. Mēs esam uzskaitījuši dažas metodes, kas palīdzēs jums atrast konkrēta faila atrašanās vietu.

Bet pirms turpināt, vispirms izveidosim failu:



Iepriekš redzamā izvade skaidri parāda, ka fails.txt ir veiksmīgi izveidots.

Tagad mēs apskatīsim metodes, kas sniegs mums pilnu faila ceļu. Kopumā šajā rakstā ir uzskaitītas 6 metodes. Tajos ietilpst:

1. metode: Lasīšanas saites komanda

Komanda readlink tiek izmantota, lai drukātu kanoniskos failu nosaukumus. Mēs izmantosim opciju -f kopā ar lasīšanas saiti, lai izdrukātu faila atrašanās vietu. Šeit ir ieviešana un izvade:



2. metode: Realpath komanda

Komanda realpath parāda faila absolūto ceļu. Mēs šeit neizmantosim nevienu opciju, atšķirībā no komandas readlink. Īstenošana un rezultāts ir norādīts zemāk:

3. metode: Vārds Command

Vēl viena interesanta iespēja ir komanda dirname . Tas aizņem visu faila ceļu, noņem faila nosaukumu no ceļa, bet pārējo parāda ekrānā. Apskatiet ieviešanu un iznākumu zemāk:

4. metode: Komandu basename un dirname kombinācija

Mēs esam redzējuši, kā izmantot komandu dirname. Bet ir vēl viena lieta, ko mēs varam darīt ar šo komandu. Mēs varam apvienot šo komandu ar citu, ko sauc par basename. Komanda basename darbojas pilnīgi pretēji dirname. Tas aizņem visu faila ceļu, noņem visu, kas parādās pirms faila nosaukuma, un pārējo parāda ekrānā.



Tagad mēs pāriesim pie demonstrācijas. Bet, pirms demonstrējam pamata un dirname kombinēto lietošanu, mēs vispirms redzēsim, kā darbojas bāzes nosaukums:

Skaidrs, ka iepriekš redzamajā izvadē ir redzams tikai faila nosaukums.

Tālāk mēs redzēsim, kā iepriekš minētās komandas var izmantot kopā. Izveidosim čaulas skriptu ar nosaukumu file_path.sh, kurā ir:

#!/bin/bash echo '$(cd '$(dirname '$1')' && pwd -P)/$(basename '$1')'>

Iepriekš mēs izmantojām komandu dirname, lai atrastu faila atrašanās vietu, ko ievadīsim kā pirmo komandrindas argumentu. Pēc tam mēs virzījāmies uz faila atrašanās vietu un izdrukājām pašreizējo darba direktoriju. Mēs pieprasījām faila fizisko atrašanās vietu, izmantojot komandu -P. Visbeidzot, mēs esam izmantojuši komandu basename, lai drukātu tikai faila nosaukumu.

Ja izpildīsim iepriekš minēto čaulas skriptu, izvade būs šāda:

Iepriekš redzams, ka šo divu komandu izvadi ir savienoti vienā, lai iegūtu pilnu faila ceļu.

5. metode: Atrast komanda

The atrast komandu ir vēl viens veids, kā iegūt visu faila ceļu. Apskatīsim, kā tas darbojas:

Iepriekš mēs esam izmantojuši komandu find ar šādām apakškomandām, lai iegūtu faila atrašanās vietu:

  • The - tipa f komanda palīdz mums meklēt failus.
  • The -vārds komanda mums palīdz, meklējot failus pašreizējā darba direktorijā un tā apakšdirektorijās.

Iepriekšējā izvade mums skaidri parāda pilnu faila ceļu.

6. metode: ls komanda

Vēl viena metode ir komandas ls izmantošana. Ja direktorijs tiek nodots kā arguments, tajā tiek uzskaitīti visi faili un mapes, kas atrodas šajā direktorijā. Bet, ja faila nosaukums tiek nodots kopā ar komandu pwd, komanda parāda faila atrašanās vietu. Skatiet tālāk norādīto.

Iepriekš redzams, ka ekrānā tiek parādīts pilns faila ceļš.

Secinājums :

Šajā rakstā mēs esam apsprieduši dažus noderīgus veidus, kā iegūt visu faila ceļu. Tāpēc nākamreiz, kad iestrēgsit, izmantojiet kādu no iepriekš minētajām metodēm, lai nekavējoties saņemtu atbildi.