|
|
(24 versioni intermedie di uno stesso utente non sono mostrate) |
Riga 1: |
Riga 1: |
− | La questione è abbastanza complessa. Si tratta di capire come poter raccogliere (leggere) quanto viene mostrato all'interno di una finestra di un Terminale.
| + | #REDIRECT [[Intercettare_quanto_viene_scritto_manualmente_nella_console_o_in_un_Terminale]] |
− | | |
− | E' il caso di precisare che è <SPAN style="text-decoration:underline">non</span> si intende capire come intercettare, ma come raccogliere tutto ciò che è leggibile nel Terminale.
| |
− | | |
− | Facciamo un esempio pratico: si apra un Terminale, e si lanci per esempio il comando: ''ls''.
| |
− | | |
− | La domanda è: come raccogliere con codice Gambas il risultato visibile nel Terminale di quel comando ?
| |
− | | |
− | Allo stato attuale delle conoscenze di chi scrive, bisognerà trovare un compromesso fra comandi ''Bash'' e funzioni Gambas.
| |
− | | |
− | | |
− | ==Uso del comando "''Script''"==
| |
− | Faremo in modo da aprire una finestra di Terminale e lanciarvi all'interno il comando ''Script'':
| |
− | '''Public''' Sub Form_Open()
| |
− |
| |
− | Shell "gnome-terminal -e script"
| |
− |
| |
− | '''End'''
| |
− | Nella medesima cartella ove è posizionato l'eseguibile Gambas, sarà creato un file, chiamato: "[i]typescript[/i]". Si comincerà a scrivere e ad usare normalmente il termminale. Conclusa la scrittura, si dovrà lanciare in Terminale il comando ''Exit''. Questa fase finale chiuderà il Terminale, e procederà a copiare all'interno del file "[i]typescript[/i]" quanto scritto e ritornato nel predetto Terminale, aggiungendovi dei codici speciali, leggibili ed interpretabili solo da un Terminale.
| |
− | Quindi, tornando in Gambas, si potrà leggere agevolmente in un nuovo Terminale, quanto presente nel file "[i]typescript[/i]":
| |
− | '''Public''' Sub Button1_Click()
| |
− |
| |
− | Desktop.OpenTerminal
| |
− |
| |
− | <FONT color=#006400>' ''Attendiamo la creazione del file speciale "/dev/pts/1":''</font>
| |
− | Do
| |
− | Wait 0.01
| |
− | Loop Until Exist("/dev/pts/1")
| |
− |
| |
− | <FONT color=#006400>' ''Leggiamo dal file "[i]typescript[/i]", ed indirizziamo il contenuto al nuovo Terminale appena aperto:''</font>
| |
− | Shell "cat typescript > /dev/pts/1"
| |
− |
| |
− | '''End'''
| |