我使用bash腳本編譯和運行程序。程序運行時會要求輸入一些數據。我怎樣才能讓bash腳本爲程序提供輸入,這樣我就不會在屏幕上手動執行它。如何從bash腳本讀取程序輸入
這裏是我的腳本:
#!/bin/csh
gfortran -o 1coupled AMAIN_C.FOR
mv 1coupled ./chemi
cd ./chemi
./1coupled
當程序運行時它會要求提供程序的名稱,我必須在命令行輸入。我想讓它從bash腳本中讀取它。
謝謝
我使用bash腳本編譯和運行程序。程序運行時會要求輸入一些數據。我怎樣才能讓bash腳本爲程序提供輸入,這樣我就不會在屏幕上手動執行它。如何從bash腳本讀取程序輸入
這裏是我的腳本:
#!/bin/csh
gfortran -o 1coupled AMAIN_C.FOR
mv 1coupled ./chemi
cd ./chemi
./1coupled
當程序運行時它會要求提供程序的名稱,我必須在命令行輸入。我想讓它從bash腳本中讀取它。
謝謝
#!/bin/bash
標準輸入重定向從文件
./1coupled < file_of_values
,或者閱讀man page 「男人3F GETARG」,以瞭解更多有關檢索命令行參數。
以下來自:the documentation。
PROGRAM test_getarg
INTEGER :: i
CHARACTER(len=32) :: arg
DO i = 1, iargc()
CALL getarg(i, arg)
WRITE (*,*) arg
END DO
END PROGRAM
我大多用@bmargulies同意,除了功能是使用gfortran的F77擴展名,應儘量避免。
當前Fortran有一個訪問命令行參數的標準方式,名爲GET_COMMAND_ARGUMENT
。
檢查this。
這不是一個bash腳本,它是一個csh腳本。 – bmargulies 2015-02-08 19:05:08