Basic question regarding the ls utility. What do letters b and c mean at the beginning of the 10-symbol code describing the items' privileges?

From what I understand, when typing ls -l, the terminal provides a list of all items in a directory. Each item description is preceded by a 10-symbol code. This code says what the item type is (first symbol) and what the item privileges for the user, the user group and all other users are.

  • If the first symbol is a dash -, the item is a file.

  • If the first symbol is the letter d, the item is a directory.

  • If the first symbol is letter l, the item is a link / shortcut.

For example:

$ ls -l /home/phodor total 68 drwxr-xr-x 5 phodor phodor 4096 Dec 20 12:02 Documents drwxr-xr-x 9 phodor phodor 4096 Jan 17 12:02 Desktop drwxr-xr-x 7 phodor phodor 4096 Jan 13 22:42 Downloads -rw-r--r-- 1 phodor phodor 8980 Jun 27 2015 hello.txt lrwxrwxrwx 1 phodor phodor 29 Jan 17 12:02 MyEBook -> /home/phodor/Documents/EBook.pdf 

However some the 10-symbol code can also start with b or c for some items:

$ ls -l /dev crw--w---- 1 root tty 4, 0 Jan 17 09:19 tty0 brw-rw---- 1 root disk 1, 0 Jan 17 09:19 ram0 brw-rw---- 1 root disk 8, 0 Jan 17 09:19 sda 

What do b and c mean? What is the full list of values that the first symbol of the file description code can take (-, d, l, b, c, ...)?

1

1 Answer

From section 10.1.2 What information is listed of the GNU Coreutils 9.0 manual:

The file type is one of the following characters:

‘-’ regular file ‘b’ block special file ‘c’ character special file ‘C’ high performance (“contiguous data”) file ‘d’ directory ‘D’ door (Solaris) ‘l’ symbolic link ‘M’ off-line (“migrated”) file (Cray DMF) ‘n’ network special file (HP-UX) ‘p’ FIFO (named pipe) ‘P’ port (Solaris) ‘s’ socket ‘?’ some other file type 
1

Your Answer

Sign up or log in

Sign up using Google Sign up using Facebook Sign up using Email and Password

Post as a guest

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy