Sådan får du oktale filtilladelser fra kommandolinjen i Mac OS
Indholdsfortegnelse:
Kommandolinjebrugere er sandsynligvis bekendt med at bruge chmod til at indstille filtilladelser i numerisk eller okt alt format, for eksempel at køre en kommando som 'chmod 755 filnavn', men har du nogensinde undret dig over, hvordan du kan få filtilladelser i oktal format?
Hvis du vil se eller se den oktale numeriske værdi af tilladelser for enhver fil eller mappe via kommandolinjen, kan du gå til stat-kommandoen i Mac OS for at gøre det.
Vi antager, at du har et rimeligt niveau af erfaring og komfort på kommandolinjen. Hvis du ikke gør det, er denne artikel sandsynligvis ikke relevant for dig. De fleste Mac-brugere vil kun nogensinde se eller ændre filtilladelser gennem Mac Finder som beskrevet andetsteds (hvis endda det), hvorimod denne særlige artikel er rettet mod mere avancerede brugere.
Sådan får du numeriske chmod-tilladelsesværdier på Mac
For at komme i gang skal du starte Terminal-appen fra /Applications/ på Mac'en og bruge følgende kommandoer:
stat -f %A file.txt
Den kommando kan f.eks. udsende noget i stil med følgende:
$ stat -f %A wget-1.18.tar.gz 644
Hvor, i dette eksempel, er '644' den oktale værdi af disse filers tilladelser.
Alternativt kan du bruge -f og %OLp (ja, det er et stort 'o' og ikke et nul), outputtet vil være det samme, forudsat at filen også er:
stat -f %OLp /Applications/System\ Preferences.app
Eksempler på output for den kommando kan se ud som følgende og viser de numeriske oktalværditilladelser for målelementet:
"$ stat -f %OLp>"
I dette eksempel har applikationen "Systemindstillinger" en oktal tilladelsesværdi på 775.
Du burde ikke behøve at bruge citater, men hvis du af en eller anden grund har brug for at undslippe et filnavn eller en sti, eller til scriptingformål, er de nemme at placere som sådan:
"stat -f %OLp>"
Flaget -f er for format, du kan om specifikke formateringsmuligheder for statoutput fra manualsiden på stat med 'man stat'.
I sidstnævnte kommandotilfælde er "O" (stort bogstav o) specifikt til at opnå oktal output.
… flytter filer på Mac'en og ønsker at bevare de nøjagtige tilladelser og bekræfte det bagefter. Der er også utallige andre anvendelser, især hvis du kører en server af enhver slags fra Mac.
Disse kommandoer bør fungere på samme måde til at hente oktale tilladelser i stort set alle versioner af macOS, MacOS eller Mac OS X, uanset hvordan navngivningskonventionen skrives med stort. Det er dog bemærkelsesværdigt, at tilgangen til at få oktale tilladelser på Mac'en er forskellig fra resten af Linux-verdenen, så hvis du kommer til Mac'en fra Linux-verdenen, bliver du nødt til at justere de statistiske kommandoflag for nøjagtigt at få tilladelserne i okt alt format, det dækker vi hurtigt næste gang.
Få oktale filtilladelser fra kommandolinje i Linux
For at være grundig, vil vi kort diskutere at få oktale tilladelsesværdier også i Linux-verdenen, hvor du kan bruge følgende til at få de oktale filtilladelser:
"stat -c %a %n /Sti/Til/Fil"
Du kan også mere simpelt bruge kommandoen stat -c:
stat -c %a /Path/To/File.txt
Udgangen af numeriske værdier vil være den samme uanset, så længe den indtastede målfil selvfølgelig er den samme.
Igen, disse to sidstnævnte tilgange er linux-specifikke, og du skal bruge metoderne beskrevet yderligere ovenfor for at få oktale værdier af tilladelser til en fil i Mac OS.
Kender du andre metoder eller tilgange til at hente den numeriske værdi af filtilladelser på en Mac? Del dem i kommentarerne nedenfor!