1

About ls -F in the man ls for -F does mention about:

-F, --classify
  append indicator (one of */=>@|) to entries

I read the following:

Where the list is:

@ indicates a symbolic link 
* indicates an executable 
= indicates a socket file 
| indicates a named pipe 
> indicates a door 
/ indicates a directory

But, where is the official Unix/Linux complete list of the indicator entries types? of course including their description

Manuel Jordan
  • 1,728
  • 2
  • 16
  • 40

1 Answers1

5

The symbols added by ls -F are specified by POSIX as follows:

Write a <slash> ('/') immediately after each pathname that is a directory, an <asterisk> ('*') after each that is executable, a <vertical-line> ('|') after each that is a FIFO, and an at-sign ('@') after each that is a symbolic link. For other file types, other symbols may be written.

This is the official specification for POSIX-compliant systems.

The last sentence in the quote above allows implementations to add other symbols for other file types; for GNU ls, the documentation specifies:

Append a character to each file name indicating the file type. Also, for regular files that are executable, append ‘*’. The file type indicators are ‘/’ for directories, ‘@’ for symbolic links, ‘|’ for FIFOs, ‘=’ for sockets, ‘>’ for doors, and nothing for regular files.

Since each implementation can add its own symbols, there is no official complete list.

Stephen Kitt
  • 434,908
  • I see - practically each link (about the list of types) complements the other - really wondered why there is no an official and unique complete list. – Manuel Jordan Sep 30 '21 at 13:31