Ln (Unix): differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Ianezz (discussione | contributi)
Nessun oggetto della modifica
+
Etichette: Modifica da mobile Modifica da web per mobile
 
(32 versioni intermedie di 19 utenti non mostrate)
Riga 1:
{{Titolo minuscolo}}
Nei [[Sistema operativo|sistemi operativi]] [[Unix]] e [[Unix-like]], '''ln''' è un comando che crea [[Collegamento simbolico|collegamenti simbolici]] e [[Collegamento fisico|collegamenti fisici]] a [[file]] e [[directory]]. Se non diversamente specificato, crea collegamenti fisici.
[[File:Diferencias entre enlaces duros y enlaces simbólicos en ambiente GNU Linux.jpg|thumb|]]
 
'''ln''' è un comando dei [[Sistema operativo|sistemi operativi]] [[Unix]] e [[Unix-like]], e più in generale dei sistemi [[POSIX]]<ref>{{cita web
|url=https://www.opengroup.org/onlinepubs/000095399/utilities/ln.html
|titolo=ln
|accesso=25-05-2008
|opera=The Open Group Base Specifications Issue 6 IEEE Std 1003.1, 2004 Edition
|lingua=en
Nei [[Sistema operativo|sistemi operativi]] [[Unix]] e [[Unix-like]]}}</ref>, '''ln''' è un comando che crea [[Collegamento simbolico|collegamenti simbolici]] e [[Collegamento fisico|collegamenti fisici]] a [[file]] e [[directory]]. Se non diversamente specificato, crea collegamenti fisici.
 
==Uso Sintassi ==
La sintassi generale di ''ln'' è la seguente:
ln [''opzioni''] [--] ''sorgente1'' [''sorgente2..''] ''destinazione''
 
I parametri ''sorgente'' indicano i nomi dei file e/o ledelle directory esistenti verso cui creare il collegamento. Se viene specificato un solo parametro ''sorgente'', il parametro ''destinazione'' indica il nome del collegamento.
 
Se vengono specificati più parametri ''sorgente'', il parametro ''destinazione'' deve necessariamente essere una directory esistente, o al più un [[collegamento simbolico]] ad una directory.
 
Il doppio trattino <kbd>--</kbd> (facoltativo) indica che i parametri successivi non sono da considerarsi opzioni.
Tra le opzioni principali troviamo:
 
* <tt>-s</tt> – Crea [[Collegamento simbolico|collegamenti simbolici]] invece di [[Collegamento fisico|collegamenti fisici]].
== Opzioni ==
* <tt>-f</tt> – Nel caso non sia possibile creare il collegamento poiché esiste già un file con lo stesso nome, tenta di levarlo di mezzo rimuovendolo.
Tra le opzioni principali troviamovi sono:
 
* ;<ttkbd>-s</ttkbd>: Crea [[Collegamento simbolico|collegamenti simbolici]] invece di [[Collegamento fisico|collegamenti fisici]]. In questo caso i nomi indicati dai parametri ''sorgente'' possono anche indicare file o directory non esistenti.
* ;<ttkbd>-f</ttkbd>: Nel caso non sia possibile creare il collegamento poiché esiste già un file con lo stesso nome, tenta di levarlo di mezzo rimuovendolorimuoverlo.
 
== Collegamenti fisici a directory ==
Alcuni sistemi, tra cui [[GNU/Linux]], vietano espressamente la creazione di collegamenti fisici a directory per motivi di sicurezza: potendoli creare è infatti possibile ottenere gerarchie nel ''[[file system]]'' che si autoincludono, e che possono quindi portare i programmi che esaminano il ''file system'' ricorsivamente (come ad esempio quelli che effettuano il ''[[backup]]'') a discendere all'infinito nella alberaturagerarchia, di fatto impedendone l'utilizzo.
 
Altri sistemi permettono questa operazione solo al ''superuser'' ([[Root (utente)|root]]).
 
== Collegamenti simbolici a file inesistenti ==
Quando si creano collegamenti simbolici (opzione <kbd>-s</kbd>) non viene verificata l'esistenza dei file e/o directory elencati nei parametri ''sorgente''; è possibile quindi creare collegamenti simbolici a file e/o directory inesistenti, nel qual caso il collegamento simbolico risulta subito orfano.
 
== Collegamenti fisici a collegamenti simbolici ==
In alcuni sistemi Unix e Unix-like (tra cui [[GNU/Linux]] e [[Solaris (sistema operativo)|Solaris]]) è possibile creare un collegamento fisico ad un collegamento simbolico (e viene incrementato il numero di riferimenti al collegamento simbolico stesso), mentre in altri (tra cui [[HP-UX]]) ciò risulta nella creazione di un collegamento fisico al file o alla directory a cui il collegamento simbolico si riferisce (per cui viene incrementato il numero di riferimenti del file o della directory).<ref>{{cita web
|url=https://lwn.net/Articles/294667
|titolo=Standards, the kernel and Postfix
|accesso=03-09-2008
|lingua=en
|autore=Jake Edge
|data=20-08-2008
|editore=Eklektix, Inc.}}</ref>
 
== Esempi ==
Crea un collegamento simbolico chiamato <kbd>softlink.txt</kbd> al file <kbd>file.txt</kbd>:
ln -s file.txt softlink.txt
 
Crea un collegamento fisico chiamato <kbd>hardlink.txt</kbd> al file <kbd>file.txt</kbd>:
ln file.txt hardlink.txt
 
== Note ==
<references />
 
== Voci correlate ==
* [[Cpcp (Unix)]]
 
== Collegamenti esterni ==
* {{cita web
|url=httphttps://www.opengroupgnu.org/onlinepubssoftware/000095399coreutils/utilitiesmanual/html_node/ln-invocation.html
|titolo=ln
|accesso=25-05-2008
|opera=The Open Group Base Specifications Issue 6 IEEE Std 1003.1, 2004 Edition
|lingua=en
}}
* {{cita web
|url=http://www.gnu.org/software/coreutils/manual/html_node/ln-invocation.html
|titolo=ln: Make links between files
|accesso=25-08-2008
Line 37 ⟶ 65:
|lingua=en
}}
 
{{Comandi Unix}}
{{Portale|Informatica}}
 
[[Categoria:Unix]]
[[Categoria:Comandi Unix/Linux]]
[[Categoria:Coreutils]]
 
[[en:Ln (Unix)]]