私は F90 でプログラムを作成しました。このプログラムは、テキスト ファイルからいくつかの入力配列を読み取り、それらを関数を介して 1 つの出力ファイルに結合します。入力ファイルの 1 つは、MMDDYY.tuvr を使用してデータが収集された日にちなんで名付けられ、出力ファイルは MMDDYY.fxi という名前になります。コードを手動で変更して毎回コンパイルするのではなく、プログラムの実行時にコマンド ラインでデータの MMDDYY を入力できるようにしたいので、getarg を使用しようとしていますが、適切に機能させるために。使用しようとしているコードを以下に示します(ここで問題が発生しているため、プログラム全体ではなく、get arg と open コマンドのみを示しています)。
CHARACTER(len=20) :: arg, tuvrname, fxiname
CALL getarg(1, arg)
IF(LEN_TRIM(arg) == 0) THEN
print*,'No date provided'
STOP
ELSE
tuvrname = TRIM(arg)'.tuvr'
fxiname = TRIM(arg).'fxi'
ENDIF
OPEN(1, file = tuvrname, status='old', action='read')
....
OPEN(4, file = fxiname, status='replace', action='write')
また、2 つの別個の getarg コマンドを使用して、コマンド ラインに MMDDDYY.tuvr MMDDYY.fxi と入力してみましたが、プログラムは実行されましたが、出力が空だったため、TUVR ファイルが見つからないようでした。