Kjør Chmod separat for filer og kataloger
Hvis du er en Linux-bruker, har du sannsynligvis hørt om konsollappen chmod. Det er et nyttig verktøy som gjør det mulig å endre filsystemtillatelser ved å bruke en terminalsesjon eller en terminalemulator. Når du kjører den, endrer den tillatelsene du angir for filer og kataloger på en gang. Men du må kanskje endre filtillatelser separat fra katalogtillatelser og omvendt. Her er hvordan det kan gjøres.
Det er flere måter å gjøre det på, men min favoritt og mest pålitelige måte å gjøre det på er å kombinere chmod med xrags og finne verktøy. Følgende kommando vil kun endre tillatelsene for filer.
finn /path/to/location -type f -print0|xargs -0 chmod 644
Her er finne kommandoen viser alle filene på den angitte plasseringen. -type f-bryteren forteller den bare å liste filer og ekskludere kataloger. Bryteren -print0 tillater behandling av filnavn på en måte slik at fil- eller katalognavn som inneholder mellomrom eller nye linjer blir korrekt håndtert.
En lignende passende kommando kan også brukes for kataloger. Den eneste delen du trenger å endre er -type f til -type d:
finn /bane/til/sted -type d -print0 |xargs -0 chmod 755
Tips: Du kan spare tid og skrive mindre ved å bruke dette trikset.
- Først, bruk filsystemtillatelser på filer og mapper ved å kjøre chmod i rekursiv modus:
chmod -R 644 /path/to/location
Den vil bruke rw-r-r-tillatelser til alle filer og mapper på den angitte plasseringen.
- Deretter utfører du kommandoen kun for kataloger:
finn /bane/til/sted -type d -print0 |xargs -0 chmod 755
Det er det.