Development

What Do the Different Colors Mean in the Linux ls Command

Captain Salem 4 min read

What Do the Different Colors Mean in the Linux ls Command?

In Linux and other Unix-Like operating system, the ls command allows you to list the files and directories in a specified directory.

The ls command is one of the most basic and yet fundamental commands in Linux. And whether you are just getting started with Linux terminal or have used it for years, the ls command will always be part of your arsenal.

However, have you ever wondered what the different colors mean in the ls command output?

In this tutorial, we will attempt to explain what these colors represent and what exactly determines the specific color.

What Determines the Color Output of the ls Command?

In Linux terminals, the colors displayed by the ls command are determined by the configuration of your terminal and the environment variable LS_COLORS.

To view the values of the LS_COLORS variable, you can use the echo command as shown:

echo $LS_COLORS

The command above should return an output as shown:

rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=00:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.avif=01;35:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:*~=00;90:*#=00;90:*.bak=00;90:*.old=00;90:*.orig=00;90:*.part=00;90:*.rej=00;90:*.swp=00;90:*.tmp=00;90:*.dpkg-dist=00;90:*.dpkg-old=00;90:*.ucf-dist=00;90:*.ucf-new=00;90:*.ucf-old=00;90:*.rpmnew=00;90:*.rpmorig=00;90:*.rpmsave=00;90:

NOTE: The actual values may vary depending on your terminal configuration. The above are the default values for an Ubuntu system.

What do the colors of the ls command mean?

As we have stated, the specific meanings of colors may vary slightly depending on your system and the terminal configuration. However, the following are the typical meaning colors of the output of the ls command.

image-20230618024332435

Blue

Blue is typically used to represent directories. When you use the ls command, directories are often displayed in blue to differentiate them from regular files.

Light Green

Light Green is usually used to represent executable files. Executable files are those that can be run as programs or scripts.

Cyan

Cyan is commonly used to represent links or symbolic links. Symbolic links are special files that act as pointers to other files or directories.

Red

Red is often used to highlight compressed or archived files. When you see red filenames, it usually indicates that the file has been compressed using tools like gzip or bzip2.

Magenta

Magenta is commonly used to indicate image files. It helps to identify files that are in commonly used image formats such as JPEG, PNG, or GIF.

Yellow

Yellow is typically used to represent device files or special files related to the system. These files include devices like hard drives, printers, or other peripherals.

White or Default

Regular files are usually displayed in white or the default color of your terminal. These are non-executable, non-compressed files without any special color codes.

Conclusion

In this tutorial, we attempted to outline the basic colors used in the ls command and what each of them could mean in your terminal output.

Note: You can customize the color scheme based on your preferences or your system’s configuration. You can also modify the LS_COLORS environment variable to change the colors associated with different file types, or you can use command-line options to disable or modify the colors displayed by the ls command.

Share
Comments
More from Cloudenv

Cloudenv

Developer Tips, Tricks and Tutorials.

Great! You’ve successfully signed up.

Welcome back! You've successfully signed in.

You've successfully subscribed to Cloudenv.

Success! Check your email for magic link to sign-in.

Success! Your billing info has been updated.

Your billing was not updated.