Linux determines a file's type via code in the file's header. This process doesn't depend on file extensions to know which software to use for opening the file.
(That's what I remember from my education. Please correct me in case I'm wrong!)
Working a bit with Ubuntu systems recently: I see a lot of files on the systems which have extensions like .sh
, .txt
, .o
, .c
.
Now I'm wondering: Is the purpose of these extensions to merely help people understand what sort of file they happen to be looking at? Or do they have some purpose for the operating system also?