Detect-It-Easy/db/shell-script
2024-04-06 18:32:56 +03:00

24 lines
No EOL
742 B
Text
Executable file

// Retrieve the interpreter from a #! script.
var sInterpreter;
if (typeof sInterpreter === "undefined") {
sInterpreter = "";
var sLine = Binary.getString(0);
// Make the expression a little easier to deal with by translating
// something like "/usr/bin/env perl" to just "/usr/bin/perl".
sLine = sLine.replace(/\/env\s+/, "/");
var aMatch = sLine.match(/#!.*\/(.+?)(?:\.exe)?\s/);
if (aMatch) {
sInterpreter = aMatch[1];
}
}
// Check for a particular interpreter.
function isInterpreter(sString) {
if (sInterpreter == sString) {
// Found it, so blank it out to stop "script.2" picking it up again.
sInterpreter = "";
return 1;
}
return 0;
}