Lucrăm adesea cu fișiere Linux în timp ce creăm scripturi shell. Dar uneori trebuie să știm calea completă a unui fișier la care lucrăm și acest articol vă va informa cum puteți obține calea completă a unui fișier. Am enumerat câteva metode care vă vor ajuta să găsiți locația unui anumit fișier.
conversie șir de caractere în număr întreg
Dar înainte de a merge mai departe, să creăm mai întâi un fișier:
Rezultatul de mai sus arată clar că fișierul.txt a fost creat cu succes.
Acum, vom arunca o privire asupra metodelor care ne vor oferi calea completă a unui fișier. În total, există 6 metode enumerate în acest articol. Ei includ:
Metoda 1: Comanda readlink
Comanda readlink este folosită pentru a tipări numele de fișiere canonice. Vom folosi opțiunea -f în combinație cu readlink pentru a imprima locația fișierului. Iată implementarea și rezultatul:
Metoda 2: Comanda realpath
Comanda realpath afișează calea absolută a fișierului. Nu vom folosi nicio opțiune aici, spre deosebire de comanda readlink. Implementarea și rezultatele sunt prezentate mai jos:
Metoda 3: Comanda dirname
O altă opțiune interesantă este comanda dirname. Preia calea completă a unui fișier, scoate numele fișierului din cale și afișează restul pe ecran. Consultați implementarea și rezultatul de mai jos:
Metoda 4: Combinația de comenzi de bază și dirname
Am văzut cum să folosim comanda dirname. Dar există un alt lucru pe care îl putem face cu această comandă. Putem combina această comandă cu o alta numită basename. Comanda basename face exact opusul dirname-ului. Preia calea completă a unui fișier, elimină orice apare înaintea numelui fișierului și afișează restul pe ecran.
Acum, vom trece la demonstrație. Dar înainte de a demonstra utilizarea combinată a numelui de bază și numelui de bază, vom vedea mai întâi cum funcționează numele de bază:
În mod clar, rezultatul de mai sus arată doar numele fișierului.
În continuare, vom vedea cum pot fi utilizate împreună comenzile de mai sus. Să creăm un script shell numit file_path.sh, care conține următoarele:
#!/bin/bash echo '$(cd '$(dirname '')' && pwd -P)/$(basename '')'>
Mai sus, am folosit comanda dirname pentru a găsi locația fișierului, pe care o vom introduce ca prim argument în linia de comandă. Apoi, am navigat la locația fișierului și am tipărit directorul de lucru curent. Am solicitat locația fizică a fișierului folosind comanda -P. În cele din urmă, am folosit comanda de bază pentru a tipări numai numele fișierului.
Dacă executăm scriptul shell de mai sus, rezultatul va fi:
Putem vedea mai sus că ieșirile acestor două comenzi sunt concatenate într-una singură pentru a obține calea completă a fișierului.
Metoda 5: Comanda găsi
The comanda găsi este o altă modalitate de a obține calea completă a unui fișier. Să vedem cum funcționează:
Mai sus, am folosit comanda find cu următoarele subcomenzi pentru a obține locația fișierului:
- The -tip f comanda ne ajută căutând fișiere.
- The -Nume comanda ne ajută căutând fișierele din directorul de lucru curent și subdirectoarele acestuia.
Rezultatul de mai sus ne arată în mod clar calea completă a fișierului.
Metoda 6: Comanda ls
O altă metodă este să folosiți comanda ls. Dacă un director este transmis ca argument, atunci el listează toate fișierele și folderele care se află în acel director. Dar dacă un nume de fișier este transmis împreună cu comanda pwd, atunci comanda ne arată locația fișierului. Vedeți următoarele:
Putem vedea mai sus că calea completă a fișierului este afișată pe ecran.
Concluzie :
În acest articol, am discutat câteva modalități utile de a obține calea completă a unui fișier. Deci, data viitoare când rămâneți blocat, utilizați una dintre metodele de mai sus pentru a obține răspunsul imediat.