cd /tmp/$1 cp code.code interim.java name=$(grep -Po "(?<=\n|\A)\s*(public\s+)?(class|interface)\s+\K([^\/\\\n\s{]+)" interim.java) mv interim.java $name.java cd /tmp/$1 ; javac $name.java ; cat args.args | xargs -d '\n' timeout -s KILL 3 java $name