How to know which interpreter it uses when execve() executes a file on Debian Linux, from its strace syscall logs?
For example, how to know a file is executed as a bash script (#!/bin/bash), or a python script (#!/usr/bin/env python), or a pure ELF file?
Assume we do not have the correct file suffix so we cannot simply tell from execve()'s arguments.
If it is not fetch-able from strace syscall logs, what other methods can be used?