Files¶
One line: A name in a directory has a type before it has permissions. ls -l shows the type as one letter, and the type decides what opening the name does: read bytes, wait for a writer, or refuse. Dots have rules of their own: . and .. are entries every directory lists, and a dot at the start of a name only hides it from ls and *.
| Lesson | Level | What it settles |
|---|---|---|
The first letter of ls -l is the type |
101 | the seven letters on real files, the same types in test, find -type, zsh's glob qualifiers and fish's path filter, what opening a FIFO and a socket file does, and one Mac disk under two letters |
| What a dot means to the shell | 101 | . and .. as entries every directory lists, a leading dot that hides a name from ls and * and from nothing else, the . builtin and where it looks for a file, and ./, in bash 5.2 and 3.2, zsh and fish |
Planned¶
Rough order, not a promise:
- Nine permission bits, and three more:
rwx,umask, setuid, setgid and the sticky bit, and the@or+a Mac prints after them - A hard link is a second name; a symlink is a file holding one: the link count,
lnagainstln -s, and whatrmremoves statand the inode: sizes, blocks and three timestamps, through GNU and BSDstat's different flags