How to Check the File Type Using file Command

How to Check the File Type Using file Command

Hey there! 👋 Welcome to this beginner-friendly Linux tutorial. Today, we'll explore something super useful — how to check the type of a file using the file command.

Now you might be thinking: "Can't I just look at the file extension?" Well, not always! In Linux, files don’t have to have an extension. That’s where the file command becomes your best friend.

📌 What does the file command do?

The file command examines the actual contents of a file and tells you what type of data it contains — whether it’s plain text, a PNG image, a shell script, a binary executable, or something else entirely.

🛠️ Step-by-Step Example

Let’s try it out. First, let’s list the files in our directory:

ls

Let’s say you have the following files:

notes.txt  image.png  script.sh  unknown_file

Now, let’s run the file command on each of them.

1. Check a text file:

file notes.txt
notes.txt: ASCII text

2. Check an image file:

file image.png
image.png: PNG image data, 800 x 600, 8-bit/color RGBA

3. Check a shell script:

file script.sh
script.sh: Bourne-Again shell script, ASCII text executable

4. Check a file with no extension:

file unknown_file
unknown_file: ELF 64-bit LSB executable, x86-64, version 1 (SYSV)...

Wow! Even without an extension, Linux was able to identify that the last file is a compiled program (an executable).

✨ Pro Tips

  • You can check multiple files at once:
    file * 
  • This command works great on files downloaded from the internet — always check them before opening!

🎯 Summary

The file command is a quick and reliable way to determine what a file actually is, based on its contents, not just its name. It’s one of those tools every Linux user should know!

That’s it for this lesson! If you're following along in our Linux course, go ahead and try running file on different kinds of files on your system.

See you in the next tutorial! 🚀