これをj1という名前で保存する。
#!/usr/bin/env bash
temp=$(mktemp /tmp/JXXXXXX)
class=$(basename $temp)
outdir=$(dirname $temp)
{
echo 'public class '$class'{'
echo 'public static void main(String[] args){'
echo $@
echo ';}}'
} >> $temp.java
#cat $temp.java
{
javac $temp.java
java -cp $outdir $class < /dev/stdin
}
こうなるけど、C以上にうれしくない。
~/s/c ❯❯❯ ./j1 'System.out.println("Hello world.")'
Hello world.
普通の用途にはJava REPLとか、Nashorn,JRuby,Groovy,Clojureあたりをおすすめします。