The file you have identified beginning with ELF, is a linux executable file which is in a binary file format since it's been compiled from the source code. ELF stands for Executable and Linkable Format.
There are tools which you can use to extract some information from it, one being the command: readelf, for example:
Code:
[flip@flop ~]$ readelf -a /sbin/fdisk
ELF Header:
Magic: 7f 45 4c 46 02 01 01 00 00 00 00 00 00 00 00 00
Class: ELF64
Data: 2's complement, little endian
Version: 1 (current)
OS/ABI: UNIX - System V
ABI Version: 0
Type: DYN (Position-Independent Executable file)
Machine: Advanced Micro Devices X86-64
Version: 0x1
Entry point address: 0x9420
Start of program headers: 64 (bytes into file)
Start of section headers: 160232 (bytes into file)
Flags: 0x0
Size of this header: 64 (bytes)
Size of program headers: 56 (bytes)
Number of program headers: 13
Size of section headers: 64 (bytes)
Number of section headers: 30
Section header string table index: 29
Section Headers:
[Nr] Name Type Address Offset
Size EntSize Flags Link Info Align
<snip>
The output is quite long and needs some knowledge to interpret fully.
In general file types can be shown by the output of the command: file.
For example:
Code:
[flip@flop ~]$ file /sbin/fdisk
/sbin/fdisk: ELF 64-bit LSB pie executable, x86-64, version 1 (SYSV), dynamir GNU/Linux 3.2.0, stripped
[flip@flop ~]$ file /usr/bin/firefox
/usr/bin/firefox: POSIX shell script, ASCII text executable
[flip@flop ~]$ file /usr/bin/firefox-esr
/usr/bin/firefox-esr: symbolic link to ../lib/firefox-esr/firefox-esr
[flip@flop ~]$ file /dev/zero
/dev/zero: character special (1/5)
[flip@flop ~]$ file /dev/gpmctl
/dev/gpmctl: socket
Files that are not in binary format, such as scripts, can be opened with a text editor and inspected, or printed to screen with the cat or less commands, For example:
Code:
[flip@flop ~]$ cat /usr/bin/firefox
#!/bin/sh
FIREFOX="$(command -v firefox)"
[ -x "$FIREFOX.real" ] && exec "$FIREFOX.real" "$@"
exec firefox-esr "$@"