Cum să obțineți permisiuni pentru fișierele octale din linia de comandă în Mac OS
Cuprins:
Utilizatorii liniei de comandă sunt probabil familiarizați cu utilizarea chmod pentru a seta permisiunile fișierelor în format numeric sau octal, de exemplu rulând o comandă precum „chmod 755 filename”, dar v-ați întrebat vreodată cum puteți obține permisiunile fișierelor în format octal?
Dacă doriți să vedeți sau să vizualizați valoarea numerică octală a permisiunilor oricărui fișier sau folder prin linia de comandă, puteți apela la comanda stat în Mac OS pentru a face acest lucru.
Presumăm că aveți un nivel rezonabil de experiență și confort la linia de comandă, dacă nu o faceți, atunci acest articol probabil că nu este relevant pentru dvs. Majoritatea utilizatorilor de Mac vor vedea sau modifica permisiunile pentru fișiere numai prin Mac Finder, așa cum este descris în altă parte (dacă chiar și așa), în timp ce acest articol este destinat utilizatorilor mai avansați.
Cum să obțineți valori numerice ale permisiunilor chmod pe Mac
Pentru a începe, lansați aplicația Terminal din /Aplicații/ pe Mac și utilizați următoarele comenzi:
stat -f %A fișier.txt
De exemplu, acea comandă poate scoate ceva de genul următor:
$ stat -f %A wget-1.18.tar.gz 644
Unde, în acest exemplu, „644” este valoarea octală a permisiunilor fișierelor respective.
În mod alternativ, puteți folosi -f și %OLp (da, este un „o” majuscul și nu un zero), rezultatul va fi același presupunând că fișierul este și el:
stat -f %OLp /Applications/System\ Preferences.app
Exemplu de ieșire pentru acea comandă poate arăta ca următorul, arătând permisiunile pentru valorile octale numerice pentru elementul țintă:
"$ stat -f %OLp>"
În acest exemplu, aplicația „Preferințe de sistem” are o valoare octală a permisiunilor de 775.
Nu ar trebui să fie nevoie să folosiți ghilimele, deși dacă aveți nevoie dintr-un motiv oarecare să scăpați de un nume de fișier sau cale sau în scopuri de scriptare, acestea sunt ușor de plasat astfel:
"stat -f %OLp>"
Indicatorul -f este pentru format, puteți despre opțiunile de formatare specifice pentru ieșirea statistică din pagina de manual pe stat cu „man stat”.
În acest ultim caz de comandă, „O” (o majusculă) este special pentru obținerea ieșirii octale.
Cunoașterea permisiunilor numerice exacte ale unui fișier sau folder este extrem de utilă din atât de multe motive și poate fi util să știți acest lucru dacă ajustați permisiunile diferitelor elemente sau chiar dacă" mutați fișiere pe Mac și doriți să păstrați permisiunile exacte și să le verificați după fapt. Există și nenumărate alte utilizări, mai ales dacă rulați un server de orice fel de pe Mac.
Aceste comenzi ar trebui să funcționeze la fel pentru a prelua permisiunile octale în aproape orice versiune de macOS, MacOS sau Mac OS X, indiferent de modul în care convenția de denumire este scrisă cu majuscule. În mod remarcabil, totuși, este că abordarea pentru obținerea de permisiuni octale pe Mac este diferită de restul lumii Linux, prin urmare, dacă veniți pe Mac din lumea Linux, va trebui să ajustați steaguri de comandă statistică pentru a obține cu precizie permisiunile în format octal, le vom acoperi rapid în continuare.
Obținerea permisiunilor de fișiere octale de la linia de comandă în Linux
De dragul de a fi amănunțit, vom discuta pe scurt despre obținerea valorilor de permisiuni octale și în lumea Linux, unde puteți folosi următoarele pentru a obține permisiunile pentru fișierele octale:
"stat -c %a %n /Path/To/File"
De asemenea, puteți folosi mai simplu comanda stat -c:
stat -c %a /Path/To/File.txt
Ieșirea valorii numerice va fi aceeași indiferent, atâta timp cât fișierul țintă introdus este, desigur, același.
Din nou, aceste ultime două abordări sunt specifice Linux și va trebui să utilizați metodele prezentate mai sus pentru a obține valori octale ale permisiunilor unui fișier în Mac OS.
Cunoașteți alte metode sau abordări pentru a regăsi valoarea numerică a permisiunilor de fișiere pe un Mac? Distribuiți-le în comentariile de mai jos!