Escrevendo um programa shell no Unix para compilar e executar um arquivo COBOL usando o compilador Open-Cobol a.k.a GnuCOBOL

0

As duas linhas abaixo são o que eu tenho para o meu shell UNIX.

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

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

Quando eu digito:

./myshell file.cob   

... o programa corre bem. Mas o cobolfile original (sem extensão) é sobrescrito com código de sistema compilado, de modo que o conteúdo se parece exatamente com o código do sistema cobolfile.exe. Então eu só posso executar o programa uma vez, então tudo está perdido ... Como ajustar meu programa shell para evitar isso?

Felicidades !! :)

    
por Emily Rose Benson 05.10.2015 / 08:02

1 resposta

0

O exemplo do bash na questão parece ter sido corrigido - embora seja muito estranho chamar um arquivo executável ".exe" em um sistema GNU / Linux, não é?

Se você não precisa que o arquivo de saída seja um executável, sugiro fazer

cobc -free $1
cobcrun $(basename "$1")
    
por Simon Sobisch 23.04.2016 / 11:56