Avvio di un eseguibile Linux non dalla riga di comando


3

Se hai un file eseguibile * .out che avvii dalla GUI (diciamo premendo Alt+ F2in Fedora e digitando il suo nome), cosa succede se quel file prova a leggere o stampare su standard out / standard in ? Quale attuario accade sotto. Questi descrittori di file vengono creati anche quando non si avvia dal terminale? Sono accessibili?

Risposte:


2

Quello che succede è essenzialmente lo stesso di avviare un terminale, eseguendo la riga di comando con &alla fine per eseguirlo in background e chiudere il terminale mentre il programma è ancora in esecuzione. A seconda di come esattamente il programma viene avviato dalla GUI, potresti essere in grado di accedere all'errore standard ~/.xsession-errorso al file equivalente utilizzato dal tuo gestore di finestre.

In generale, lo standard out e lo standard in di un programma lanciato in questo modo non saranno accessibili; di solito indicheranno /dev/null. Si noti tuttavia che è possibile reindirizzare input e output utilizzando <e >, ad es program < file.in > file.out.


-1

Ovviamente - se legge da stdin la lettura fallisce Se ir scrive su stdout - viene scartato Stderr viene raccolto dove ha detto Lars.


Questo è mal punteggiato, mal scritto, leggermente offensivo (se fosse "ovvio" per rubixibuc, non avrebbe fatto la domanda), e non aggiunge nulla alla risposta di Lars. Qual è il punto?
TRiG
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.