| Field | Value | Copy |
|---|---|---|
| Numeric | {{ fullNumeric }} | |
| Symbolic | {{ fullSymbolic }} | |
| chmod command | {{ command }} | |
| ls -l preview | {{ lsOutput }} | |
| User / Group / Others | {{ uTriplet }} · {{ gTriplet }} · {{ oTriplet }} |
| Operation | Effect | Copy |
|---|---|---|
{{ item.operation }} |
{{ item.description }} |
Unix file permissions describe what the owner, group, and others can do with a file or directory. You can express them in octal digits or with letters that stand for read, write, and execute. Converting between these views makes it easier to check commands and explain changes.
Pick bits for each of the three triplets and include setuid, setgid, or sticky when needed. The numeric code and symbolic form update together. You can preview an ls -l style string and a full chmod command before you run it.
When a umask applies it clears permission bits from a base mode at file creation. Use the umask helper to see the resulting octal for files and directories and the matching symbolic form.
The tool helps you plan and explain permission changes. Apply them in a terminal only when you are sure they match your intent and the target path.
Each triplet encodes read, write, and execute as bits with weights four, two, and one. The three octal digits represent user, group, and others in that order. An optional leading digit carries setuid, setgid, and sticky bits with weights four, two, and one.
| Scope | Symbolic | Octal | Notes |
|---|---|---|---|
| User | r w x | 4 2 1 → 0–7 | Sum of set bits |
| Group | r w x | 4 2 1 → 0–7 | Sum of set bits |
| Others | r w x | 4 2 1 → 0–7 | Sum of set bits |
| Special | u+s g+s o+t | 4 2 1 → 0–7 | Leading digit |
Numeric 0755 becomes u=rwx,g=rx,o=rx. With sticky on a directory it appears as drwxr-xr-t in a long listing.
Symbolic u=rw,g=r,o= maps to 0640. Adding setgid becomes 2640 and sets group execution on directories as an inherited group bit.
A umask clears bits from a base mode. Files often start from 666 and directories from 777. Subtract the mask bitwise to get the resulting mode. For example 022 on files yields 644 and on directories yields 755.
| Input | Accepted Families | Output | Encoding/Precision |
|---|---|---|---|
| Numeric or symbolic mode | Octal 0000–07777; u=,g=,o= forms | Numeric, symbolic, chmod | Exact strings |
| Recursive, verbose | Booleans | Command flags | Literal |
| Umask | Octal 000–0777 | File and dir results | Exact strings |
No paths or commands are sent anywhere. Results are computed locally.
u/g/o with + − = and respect copies like g=u.s or S and t or T depending on execute.= is used.