同様に、ライブラリルーチン getenv(3F) を使用して、実行時に環境変数の値を文字変数に読み込むことができます。この値はファイル名として解釈されます。
demo% cat testenv.f CHARACTER outfile*40 C ユニット 51 の出力ファイル名として $OUTFILE を取得する CALL getenv('OUTFILE',outfile) OPEN(51,FILE=outfile) WRITE(51,*) 'Writing to file: ', outfile END demo% f95 -o tstenv testenv.f demo% setenv OUTFILE EnvFileName demo% tstenv demo% cat EnvFileName Writing to file: EnvFileName demo% |
getarg または getenv を使用するときには、前後の空白に気をつけるようにしてください。Fortran 95 プログラムは組み込み関数 TRIM を使用でき、古い FORTRAN 77 はライブラリルーチン LNBLNK() を使用できます。この章のはじめにある例の FULLNAME 関数行を用いれば、相対パス名を利用できるようにもプログラムできます。