Understanding Linux File Color Coding / Meaning of different Colors in “ls” command

In Linux everything present is considered as a file, so to differentiate file types from each other for better visibility to user, Linux has specific color codes for the different file types.

Below, we will try to create some of the files and know its colors.

 $ mkdir linux-color-coding 

White Color – Indicates regular files. so it can be text file, word document or pdf document etc. Lets create simple text file as,

 
$ echo "hello text file" > textfile.txt

All the normal files created / present, by default has the permission set to “664”

$ ls -alh
-rw-rw-r-- 1 myuser myuser   16 Aug 23 07:43 textfile.txt

Bright Green – Indicates file which are executable. All the executable files in Linux has “x” i.e. executable permissions set, which makes the permissions as “775”
Lets create one simple C program and compile it to generate executable as,

 $ vim helloworld.c 
#include <stdio.h>
int main(int argc, char **argv) {
        printf("hello world\n");
        return 0;
}

Compile to generate executable file as,

 $ gcc -o helloworld_exe helloworld.c 

We can check the default permissions set by above compilation for executable “helloworld_exe” is “775” as,

$ ls -alh
-rw-rw-r-- 1 myuser myuser   92 Aug 23 07:52 helloworld.c
-rwxrwxr-x 1 myuser myuser 7.2K Aug 23 07:52 helloworld_exe

Blue – Indicates its a directory. Default permissions of the newly created directory is 775

 $ mkdir directory_name 
 $ ls -alh
drwxrwxr-x 2 myuser myuser 4.0K Aug 23 09:36 directory_name

Yellow – Indicates its a device file. Most of the device files created by Linux kernel resides in /dev . Below is an example of device file which will be displayed in yellow color.

 $ ls -al /dev/console 
crw------- 1 root root 5, 1 Aug 23 09:25 /dev/console 

Cyan / greenish-blue – Indicates its a softlink to another file. We can create a softlink to our previously created executable as,

 $ ln -sf helloworld_exe helloworld_softlink 
 $ ls -alh 

-rwxrwxr-x 1 myuser myuser 7.2K Aug 23 09:59 helloworld_exe
lrwxrwxrwx 1 myuser myuser 14 Aug 23 10:00 helloworld_softlink -> helloworld_exe

SHUFFLED :   How to clone a large git repository

Red with light black background – Indicates its a broken softlink. Means, the file where the link was pointing has been deleted.
We will try to create a broken softlink as,

 $ gcc -o helloworld_exe1 helloworld.c
$ ln -sf helloworld_exe1 helloworld_softlink_broken
$ rm -rf helloworld_exe1
$ ls -alh
lrwxrwxrwx 1 myuser myuser   15 Aug 23 10:05 helloworld_softlink_broken -> helloworld_exe1

Here, helloworld_exe1 we purposefully deleted to create broken softlink.

Magneta ( a light mauvish-crimson color ) Indicates it is a “Image” or “Video” file depending on the extension of file.

 $ ls -alh
-rw-rw-r-- 1 myuser myuser  93K Aug 23 10:11 mypicture.jpg 


Red – Indicates its archive / compressed file.

We will create a simple zip with the existing files as,

$ zip -r hello.zip helloworld.c helloworld_exe 
  adding: helloworld.c (deflated 3%)
  adding: helloworld_exe (deflated 68%) 

$ ls -alh
-rw-rw-r-- 1 myuser myuser 2.8K Aug 23 10:18 hello.zip
-rw-rw-r-- 1 myuser myuser  93K Aug 23 10:11 mypicture.jpg

$ file hello.zip 
hello.zip: Zip archive data, at least v2.0 to extract

So finally this will Look Like below,

Android Android Commands Android Java Applications Application Libraries Bash / Shell Scripts Bluetooth driver Build Frameworks Commands and Packages Core Kernel C Programs Development Environment Setup Documents / Books Errors & Failures File Systems Framebuffer / Display Driver git Go Language Programs Hardware Platforms Home Kernel & Device Drivers Kernel Booting and Porting Linux, OS Concepts and Networking Linux Device Drivers Linux Host, Ubuntu, SysAdmin Linux Kernel Linux Networking Middleware Libraries, HAL NDK / Middleware / HAL Network Driver OS Concepts PHP Procfs Filesystem Programming Languages RaspberryPi Scripting and Automation Search Engine Optimisation ( SEO ) Social Media Socurce Code Management ( SCM ) System Administration, Security Testing and Debugging Uncategorized Userspace Utilities Web design and development Wordpress Yocto / Bitbake / Openembedded

Leave a Reply