Linux file types

Linux File Types and How to Create Them

File Type Symbol Description How to Create
Regular File - Ordinary files (text, binaries, images, etc.) touch filename or echo "text" > filename
Directory d Contains other files/directories mkdir dirname
Symbolic Link l Shortcut or reference to another file or directory ln -s target linkname
Block Device File b Represents devices that transfer data in blocks (e.g., hard drives) sudo mknod filename b major minor
Character Device File c Represents devices that transfer data character by character (e.g., tty) sudo mknod filename c major minor
Socket s Used for inter-process communication (network or local sockets) In code: socket() syscall; From shell: nc -lU socketfile (creates a UNIX socket file)
FIFO (Named Pipe) p Special file for inter-process communication (first-in, first-out) mkfifo filename

 

File Type How to Create Example Write Example Read Example Notes
Regular File touch file.txt
echo "data" > file.txt
echo "hello" > file.txt cat file.txt Most common file type
Directory mkdir mydir Cannot write data directly ls mydir Holds other files/directories
Symbolic Link ln -s target symlink echo "hi" > symlink (writes to target) cat symlink Shortcut to another file
Block Device sudo mknod /dev/myblock b 8 0 sudo dd if=file.img of=/dev/myblock sudo dd if=/dev/myblock of=file.img Represents disks, partitions, etc.
Character Device sudo mknod /dev/mychar c 4 64 echo "A" > /dev/mychar cat /dev/mychar Serial ports, terminals, etc.
FIFO (Named Pipe) mkfifo mypipe echo "msg" > mypipe cat mypipe Used for inter-process communication
Socket Created by programs or nc -lU /tmp/mysock “msg” nc -U /tmp/mysock` nc -lU /tmp/mysock
0 0 votes
Article Rating
Subscribe
Notify of
guest
0 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments