Ttyname ()

Da Gambas-it.org - Wikipedia.

La funzione ttyname(), dichiarata nel file header "/usr/include/unistd.h":

char *ttyname (int __fd)

restituisce il percorso del file-device pseudoterminale (pts) associato al file descriptor indicato nel suo unico parametro.


Volendola utilizzare direttamente in Gambas, bisognerà dichiararla con Extern, nonché dichiarare la libreria di C: libc.so.6, nella quale la funzione è contenuta:

Private Extern ttyname(__fd As Integer) As String In "libc:6"

Mostriamo un esempio di uso in Gambas:

 Library "libc:6"
 
 Private Enum STDIN = 0, STDOUT, STDERR

' char *ttyname (int __fd)
' Return the pathname of the terminal FD is open on, or NULL on errors.
Private Extern ttyname(id As Integer) As String In "libc:6"


Public Sub Main()
 
 Dim percorso As String
 Dim fl As File
 
  percorso = ttyname(STDOUT)
  
' Mostra il percorso dello pseudoterminale associato al file-descriptor passato:
  Print percorso
   
' Usa il percorso dello pseudoterminale per scrivervi una stringa:
  fl = Open percorso For Write
  
  Write #fl, "\nTesto qualsiasi"
  fl.Close
  
End



Riferimenti