Lanciare da un'applicazione Gambas un comando bash e far scrivere il risultato in un Terminale

Da Gambas-it.org - Wikipedia.

Se si intende lanciare con "Shell" un comando bash e far scrivere il suo risultato in un Terminale, si potrà porre sotto osservazione il Processo generato da "Shell" e aprire in scrittura il file speciale "/dev/pts" relativo al Terminale ed inviarvi i dati stringa intercettati dal Processo.

Mostriamo un esempio (si lanci prima il codice sottostante e subito dopo si apra un Terminale. Quindi si prema il Button, posto sul Form per ottenere il risultato).

Private fl As File


Public Sub Button1_Click()
  
 Dim pw As String

' Il numero dell'indice della funzione "Dir()" deve comunque essere quello relativo al file-device "pts" del Terminale
 fl = Open "/dev/pts" &/ Dir("/dev/pts", "*", gb.Device)[0] For Write
 
 pw = InputBox("Immettere la propria password:")

 Shell "echo " & pw & " | sudo -S fdisk -l" For Read As "processus"

End


Public Sub processus_Read()

 Dim s As String
  
 Line Input #Last, s
  
 Print #fl, s
    
End