在 Unix 中編寫 shell 程序,使用 Open-Cobol 又稱為 GnuCOBOL 編譯器來編譯和執行 COBOL 文件

在 Unix 中編寫 shell 程序,使用 Open-Cobol 又稱為 GnuCOBOL 編譯器來編譯和執行 COBOL 文件

下面兩行是我的 UNIX shell 的內容。

cobc -free -x -o$(basename "$1" .exe) "$1"

./$(basename "$1" .exe)

當我輸入:

./myshell file.cob   

...程式運作良好。但原始的 cobolfile(無副檔名)會被編譯的系統程式碼覆蓋,因此內容看起來與 cobolfile.exe 系統程式碼完全相同。所以我只能運行該程式一次,然後一切都會丟失...如何調整我的 shell 程式以避免這種情況?

乾杯! :)

答案1

問題中的 bash 範例似乎已修正 - 儘管在 GNU/Linux 系統中呼叫可執行檔“.exe”很奇怪,不是嗎?

如果您不需要輸出文件成為可執行文件,我建議這樣做

cobc -free $1
cobcrun $(basename "$1")

相關內容