Tach,
Naja, fast. So richtig funktioniert das nur mit Scriptsprachen - also Sprachen, die direkt interpretiert und ausgeführt werden. Was du eben genannt hast, sind aber üblicherweise Compilersprachen. Das heißt, ein Quellcode in C/C++ oder Java muss normalerweise erst in ein ausführbares Programm übersetzt ("compiliert") werden, das dann seinerseits wieder direkt von der Kommandozeile aus aufgerufen werden kann. Das ist dann ein "echtes" Programm, kein Script mehr.
aber, wenn einem langweilig ist, kann man das auch die Shell erledigen lassen:
#!/bin/bash
sed -n -e '7,$p' < "$0" | /usr/bin/gcc -x c -o "$0.$$.out" -
$0.$$.out "$0" "$@"
STATUS=$?
rm $0.$$.out
exit $STATUS
#include <stdio.h>
int main(int argc, char **argv)
{
int i;
for (i = 0; i < argc; i++)
printf("argv[%d] -> %s\n", i, argv[i]);
return 0;
}
mfg
Woodfighter