Come posso creare uno script che apre il terminale e esegue il mio eseguibile?

3

I miei studenti e io stiamo usando gcc per compilare programmi che fanno una serie di domande e poi mostrano un risultato. In questo momento, se stiamo eseguendo un programma chiamato "main" per esempio, dobbiamo aprire una finestra di terminale e digitare: ./Programs/main

Vorremmo essere in grado di distribuirli ad altri studenti che non sanno come utilizzare il terminale, in modo che possano semplicemente fare doppio clic su un file.

Ho provato a creare un file .command o .sh che faccia questo, ma faranno "exit"; prima che il programma possa ricevere input. Ho anche provato ad usare Automator, ma questo esce anche prima che il programma possa ricevere input.

    
posta Travis Clemens 31.01.2016 - 16:17
fonte

2 risposte

1

Quando fai doppio clic su un file .command , Terminal.app si aprirà ed eseguirà /path/to/file.command ; exit; , il che significa che eseguirà il contenuto dello script file.command e THEN esci.

Se il tuo terminale sta per terminare prima che il tuo eseguibile possa ricevere input, sembra che il tuo .command non stia chiamando correttamente il tuo eseguibile, o il tuo eseguibile in qualche modo non aspetta di ricevere input prima di uscire.

Per aiutarti ulteriormente, devi fornire un esempio di file .c / .cpp da compilare e il contenuto del tuo file .command .

Io stesso ho provato con un file .command che contiene solo:

$HOME/Downloads/go.sh

E sono stato in grado di chiedere l'input in go.sh (utilizzando read -p ) prima che il terminale uscisse.

    
risposta data 03.02.2016 - 18:31
fonte
-1

Aggiungi un comando "sleep" per sospendere l'esecuzione dello script.

Sleep 5

Si fermerà per 5 secondi.

    
risposta data 31.01.2016 - 16:31
fonte

Leggi altre domande sui tag