Differenze tra le versioni di "Link()"
Riga 1: | Riga 1: | ||
− | La funzione | + | La funzione '''link()''', dichiarata nel file header "''/usr/include/unistd.h''": |
− | + | int link (const char *__from, const char *__to) | |
− | crea un nuovo collegamento ad un file conservando anche quello iniziale. Il nuovo collegamento deve assumere diverso nome, se viene creato nel medesimo percorso di quello iniziale; e può assumere identico nome a quello iniziale, se viene creato in un percorso differente | + | crea un nuovo collegamento ad un file conservando anche quello iniziale. Quindi sostanzialmente questa funzione copia un collegamento ad un file assegnandogli, a seconda dei casi, un nuovo nome e/o un nuovo percorso. Il collegamento precedente al file è conservato. |
− | + | <BR>Il nuovo collegamento deve assumere diverso nome, se viene creato nel medesimo percorso di quello iniziale; e può assumere identico nome a quello iniziale, se viene creato in un percorso differente. | |
Volendola utilizzare in Gambas, bisognerà dichiararla con ''Extern'', nonché dichiarare la libreria di C: ''libc.so.6'', nella quale la funzione è contenuta: | Volendola utilizzare in Gambas, bisognerà dichiararla con ''Extern'', nonché dichiarare la libreria di C: ''libc.so.6'', nella quale la funzione è contenuta: | ||
− | Private <FONT color=#B22222> | + | Private Extern <FONT color=#B22222>link</font>(''int link (__form As String, __to As String) As Integer In "<FONT color=#B22222>libc:6</font>" |
− | |||
− | |||
Semplice esempio di uso in Gambas: | Semplice esempio di uso in Gambas: | ||
− | <FONT | + | Library "libc:6" |
− | + | ||
+ | |||
+ | <FONT Color=gray>' ''int link (const char *__from, const char *__to)'' | ||
+ | ' ''Make a link to FROM named TO.''</font> | ||
+ | Private <FONT color=#B22222>Extern link</font>(vecchiopercorso As String, nuovopercorso As String) As Integer | ||
+ | |||
'''Public''' Sub Main() | '''Public''' Sub Main() | ||
Riga 18: | Riga 21: | ||
Dim i As Integer | Dim i As Integer | ||
− | i = link("''/percorso/del/vecchio/ | + | i = link("<FONT Color=gray>''/percorso/del/vecchio/nome/del/file''</font>", "<FONT Color=gray>''/percorso/del/nuovo/nome/del/file''</font>") |
If i = -1 Then Error.Raise("Impossibile creare un nuovo collegamento al file !") | If i = -1 Then Error.Raise("Impossibile creare un nuovo collegamento al file !") | ||
Versione delle 16:31, 22 giu 2017
La funzione link(), dichiarata nel file header "/usr/include/unistd.h":
int link (const char *__from, const char *__to)
crea un nuovo collegamento ad un file conservando anche quello iniziale. Quindi sostanzialmente questa funzione copia un collegamento ad un file assegnandogli, a seconda dei casi, un nuovo nome e/o un nuovo percorso. Il collegamento precedente al file è conservato.
Il nuovo collegamento deve assumere diverso nome, se viene creato nel medesimo percorso di quello iniziale; e può assumere identico nome a quello iniziale, se viene creato in un percorso differente.
Volendola utilizzare in Gambas, bisognerà dichiararla con Extern, nonché dichiarare la libreria di C: libc.so.6, nella quale la funzione è contenuta:
Private Extern link(int link (__form As String, __to As String) As Integer In "libc:6"
Semplice esempio di uso in Gambas:
Library "libc:6" ' int link (const char *__from, const char *__to) ' Make a link to FROM named TO. Private Extern link(vecchiopercorso As String, nuovopercorso As String) As Integer Public Sub Main() Dim i As Integer i = link("/percorso/del/vecchio/nome/del/file", "/percorso/del/nuovo/nome/del/file") If i = -1 Then Error.Raise("Impossibile creare un nuovo collegamento al file !") End
Vedi anche la funzione esterna unlink() .