ちょっと調べた。
- コマンドラインからソースを直接食わせられる
- -interaction=nonstopmode のときに改行を含む入力を食わせると怒られるらしい
- -jobname=hogehoge で出力が hogehoge.dvi とかになる
ということはこんなふうに preamble をスクリプトで生成してコンパイルするようなことができる。
platex -interaction=nonstopmode -jobname=$outputname "$preamble \input{$inputfile}"
一時ファイルに書き出すよりはきれいかも。