Bash Script che avvierà il secondo processo Terminale?

4

Ho bisogno di uno script che sia in grado di generare una seconda istanza di Terminal e passare un comando direttamente a quello mentre continua le proprie esecuzioni.

Avvia lo script Python che ospiterà un server mentre l'istanza principale di Terminal continuerà a eseguire la sua serie di esecuzioni per un periodo di 30 secondi (ad esempio), quindi sarebbe in grado di uccidere il PID del Python script e uccidi quel processo terminale secondario e continua fino a quando non è finito.

Qualcuno ha un'idea di come farlo? Venendo da Windows, sarebbe molto facile ottenere un file BAT per eseguire un secondo file BAT nel proprio ambiente e poi ucciderlo in una fase successiva.

    
posta Danijel-James W 28.09.2013 - 09:42
fonte

2 risposte

4

Puoi usare il comando do script di AppleScript per eseguire un comando in una nuova finestra di Terminale:

osascript -e 'tell app "Terminal" to do script "uptime"'

Tuttavia non avvia un secondo processo o istanza per Terminal. Su OS X di solito c'è solo un'istanza per ogni applicazione, anche se puoi usare open -n per aprire un'altra istanza.

    
risposta data 28.09.2013 - 10:44
fonte
1

Basandosi sulla risposta precedente, puoi usare do script per eseguire una seconda finestra di Terminale e poi anche emettere più comandi in sequenza usando -e

osascript -e 'tell app "Terminal" to do script "uptime"' -e 'tell app "Finder" to delete file "filename" on Desktop'

Quindi in questo modo puoi specificare più azioni anche in sequenza usando solo 1 linea.

    
risposta data 29.09.2013 - 11:29
fonte

Leggi altre domande sui tag