====== UNIX File Types ====== | ^ Indicator in ls(1) ^ Get file descriptor ^ Create on file system ^ ^ Regular File | - | **open(2)** | **open(2)** | ^ Directory | d | **open(2)** | **mkdir(2)** | ^ Symbolic Link | l | - ((Linux does supports **open(2)** symbolic links by specifying flags ''O_NOFOLLOW'' and ''O_PATH'', since version 2.6.39)) | **symlink(2)** | ^ Block or Character Device | b or c | **open(2)** | **mknod(2)** | ^ Pipe | p | **open(2)**, **pipe(2)** | **mknod(2)** or **mkfifo(2)** ((Some kernels having **mkfifo(2)** system call to create named pipes, thus **mknod(2)** can't be used)) | ^ Socket | s | **socket(2)**, **accept(2)**, **socketpair(2)** | **bind(2)** |