2015-05-19 37 views
0

我有一個Fortran程序(我無法修改)在運行時需要用戶輸入(在命令行中)。該程序需要很長時間才能運行,並且我希望通過在後臺運行它來保留終端的使用。然而,由於其交互性,這是不可能的。將參數傳遞給交互式fortran程序

有沒有一種方法,使用bash腳本或其他方法,我可以將參數傳遞給程序,而無需通過命令行直接與其交互?

我不確定這是否可能;我試圖尋找它,但空了,雖然我不確定要搜索什麼。

謝謝!

ps。我正在開發一個unix系統,我無法安裝那些尚不存在的東西。

+0

根據輸入是如何讀,管道入標準輸入可能會奏效。 – 4ae1e1

+0

您無法打開另一個終端會話來執行非Fortran工作嗎? – paxdiablo

+0

我可以打開另一個終端......但有很多Fortran工作需要完成。 – user3470516

回答

2

可以通過管道將它:

$ cat delme.f90 
program delme 
    read(*, *) i, j, k 
    write(*, *) i, j, k 
end program delme 

$ echo "1 2 3" | ./delme 
      1   2   3 

$ echo "45 46 47" > delme.input 
$ ./delme < delme.input 
      45   46   47 

$ ./delme << EOF 
> 3 2 1 
> EOF 
      3   2   1 
+0

謝謝!這正是我需要的,我不知道這甚至是可能的,更不用說那麼簡單了。我特別喜歡第二種解決方案。 – user3470516