logo

Kako pridobiti celotno pot datoteke v Linuxu

Med ustvarjanjem lupinskih skriptov pogosto delamo z datotekami Linuxa. Toda včasih moramo poznati celotno pot datoteke, na kateri delamo, in ta članek vam bo povedal, kako lahko dobite celotno pot datoteke. Našteli smo nekaj metod, ki vam bodo pomagale najti lokacijo določene datoteke.

Toda preden gremo naprej, najprej ustvarimo datoteko:



Zgornji rezultat jasno kaže, da je bila datoteka file.txt uspešno ustvarjena.

Zdaj si bomo ogledali metode, ki nam bodo dale celotno pot do datoteke. V tem članku je skupaj navedenih 6 metod. Vključujejo:

1. način: Ukaz povezave za branje

Ukaz readlink se uporablja za tiskanje kanoničnih imen datotek. Za tiskanje lokacije datoteke bomo uporabili možnost -f v kombinaciji s povezavo za branje. Tukaj sta izvedba in rezultat:



2. način: Ukaz realpath

Ukaz realpath prikaže absolutno pot datoteke. Tukaj ne bomo uporabili nobene možnosti, za razliko od ukaza readlink. Izvedba in rezultat sta podana spodaj:

3. način: Ukaz dirname

Druga zanimiva možnost je ukaz dirname. Zavzame celotno pot datoteke, odstrani ime datoteke s poti in prikaže ostalo na zaslonu. Spodaj si oglejte izvedbo in rezultate:

4. način: Kombinacija ukazov basename in dirname

Videli smo, kako uporabiti ukaz dirname. Toda s tem ukazom lahko naredimo še eno stvar. Ta ukaz lahko združimo z drugim, imenovanim osnovno ime. Ukaz basename deluje popolnoma nasprotno od dirname. Zavzame celotno pot datoteke, odstrani vse, kar se pojavi pred imenom datoteke, in ostalo prikaže na zaslonu.



Zdaj bomo prešli na demonstracijo. Toda preden pokažemo kombinirano uporabo osnovnega imena in imena imenika, si bomo najprej ogledali, kako deluje osnovno ime:

Jasno je, da zgornji izhod prikazuje samo ime datoteke.

Nato bomo videli, kako lahko zgornje ukaze uporabljamo skupaj. Ustvarimo lupinski skript z imenom file_path.sh, ki vsebuje naslednje:

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

Zgoraj smo uporabili ukaz dirname za iskanje lokacije datoteke, ki jo bomo vnesli kot prvi argument ukazne vrstice. Nato smo se pomaknili do lokacije datoteke in natisnili trenutni delovni imenik. Z ukazom -P smo zahtevali fizično lokacijo datoteke. Nazadnje smo uporabili ukaz basename za tiskanje samo imena datoteke.

Če izvedemo zgornji skript lupine, bo rezultat:

Zgoraj lahko vidimo, da so izhodi teh dveh ukazov povezani v enega, da dobimo celotno pot datoteke.

5. način: Ukaz najdi

The najdi ukaz je še en način za pridobitev celotne poti datoteke. Poglejmo, kako deluje:

Zgoraj smo za pridobitev lokacije datoteke uporabili ukaz find z naslednjimi podukazi:

  • The - tip f ukaz nam pomaga pri iskanju datotek.
  • The - ime ukaz nam pomaga pri iskanju datotek v trenutnem delovnem imeniku in njegovih podimenikih.

Zgornji izhod nam jasno pokaže celotno pot do datoteke.

6. način: Ukaz ls

Še ena metoda je uporaba ukaza ls. Če je kot argument posredovan imenik, so navedene vse datoteke in mape, ki se nahajajo v tem imeniku. Toda če je ime datoteke posredovano skupaj z ukazom pwd, nam ukaz pokaže lokacijo datoteke. Oglejte si naslednje:

Zgoraj lahko vidimo, da je na zaslonu prikazana celotna pot datoteke.

Zaključek :

V tem članku smo razpravljali o nekaterih uporabnih načinih za pridobitev celotne poti datoteke. Torej, naslednjič, ko se vam zatakne, uporabite eno od zgornjih metod, da takoj dobite odgovor.