Leggere il file fstab per avere informazioni sui vari filesystem montati
Il file di configurazione di sistema "/etc/fstab" contiene informazioni relative ai vari tipi di filesystem presenti nel sistema.
Indice
Leggere il file /etc/fstab mediante le sole risorse di Gambas
E' possibile accedere al file /etc/fstab, e dunque alle informazioni di sistema in esso contenute, semplicemente utilizzando le risorse di Gambas.
Mostriamo un semplice esempio:
Public Sub Main() Dim fstab As String Dim ss As String[] Dim b As Byte fstab = File.Load("/etc/fstab") ss = Split(fstab, "\n") Print "<file system> <mount point> <type> <options> <dump> <pass>\n" While True If IsNull(ss[b]) Then Break If ss[b] Not Begins "#" Then Print ss[b] Inc b Wend End
Leggere il file /etc/fstab mediante le risorse della libreria libc.so.6
E' possibile accedere al file /etc/fstab, e dunque alle informazioni di sistema in esso contenute, mediante le risorse della libreria /usr/include/fstab.h. Si utilizzerà in Gambas la libreria libc.so.6 .
Mostriamo di seguito un semplice esempio pratico:
Library "libc:6" Public Struct fstab fs_spec As Pointer fs_file As Pointer fs_vfstype As Pointer fs_mntops As Pointer fs_type As Pointer fs_freq As Integer fs_passno As Integer End Struct ' struct fstab *getfsent (void) ' Parses the next line from the file. Private Extern getfsent() As Pointer Public Sub Main() Dim fs As New Fstab Dim p As Pointer While True p = getfsent() If IsNull(p) Then Exit fs = p With fs Print "Dispositivo: ", String@(.fs_spec) Print "Punto di montaggio: ", String@(.fs_file) Print "Tipo di filesystem: ", String@(.fs_vfstype) Print "Opzioni montaggio: ", String@(.fs_mntops) Print "Tipo di montaggio: ", String@(.fs_type) Print "Uso comando Dump: ", .fs_freq Print "Ordine di Controllo:", .fs_passno End With Print Wend End
Leggere il file /etc/fstab mediante le risorse della libreria libMonoPosixHelper.so
Analogamente al paragrafo precedente, è possibile accedere al file /etc/fstab mediante le risorse della libreria: libMonoPosixHelper.so .
Mostriamo di seguito un semplice esempio pratico:
Library "libMonoPosixHelper" Public Struct fstab fs_spec As Pointer fs_file As Pointer fs_vfstype As Pointer fs_mntops As Pointer fs_type As Pointer fs_freq As Integer fs_passno As Integer End Struct ' struct fstab *getfsent (void) ' Parses the next line from the file. Private Extern getfsent() As Pointer Public Sub Main() Dim fs As New Fstab Dim p As Pointer While True p = getfsent() If IsNull(p) Then Exit fs = p With fs Print "Dispositivo: ", String@(.fs_spec) Print "Punto di montaggio: ", String@(.fs_file) Print "Tipo di filesystem: ", String@(.fs_vfstype) Print "Opzioni montaggio: ", String@(.fs_mntops) Print "Tipo di montaggio: ", String@(.fs_type) Print "Uso comando Dump: ", .fs_freq Print "Ordine di Controllo:", .fs_passno End With Print Wend End