Passare in runtime il numero del file-device 'pts' di un Terminale
Da Gambas-it.org - Wikipedia.
Il caso è quello in cui si deve passare al programma Gambas a linea di comando, mentre sta funzionando, il numero identificatore di un Terminale aperto [nota 1].
Per fare ciò si utilizzerà il file device dello standard input con la Proprietà ".In" della Classe File:
Public Sub Main() Dim fl As File Dim s As String ' Esegue il ciclo, finché non sarà stato inviato dal Terminale al programma Gambas un carattere tramite la tastiera: While IsNull(s) ' Intercetta quanto scritto (ossia il numero del file-device 'pts' del Terminale) nel Terminale, ove è stato lanciato il programma Gambas: Input #File.In, s fl = Open "/dev/pts" &/ s For Output ' Ricevuto quanto scritto (ossia il numero del file-device 'pts' del Terminale) nel Terminale, lo mostra nuovamente con aggiunta di altro testo nel Terminale medesimo: Print #fl, "Numero file 'pts' = " & s Wend fl.Close End
Tale codice offre una soluzione in un programma Gambas a linea di comando per fare ciò che in un'applicazione grafica l'istruzione InputBox consente di fare: inviare dati al programma mentre è in funzione.
Note
[1] Ovviamente con il codice esposto in questa pagina è possibile passare al programma Gambas a linea di comando dal Terminale, ove esso è stato lanciato, qualunque dato in formato stringa di caratteri.