Comm: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Ianezz (discussione | contributi)
m Uso: wikilink a "output"
 
(39 versioni intermedie di 22 utenti non mostrate)
Riga 1:
{{Titolo minuscolo}}
'''comm''' (abbreviazione dall'inglese '''''comm'''on'', ''in comune'') è un comando dei [[Sistema operativo|sistemi operativi]] [[Unix]] e [[Unix-like]] che, dati due [[file di testo]] le cui linee sono ordinate, mostra sullo ''[[standard output]]'' le linee in comune e le linee presenti solo in uno dei due file. È un tipo di [[Filtro (Unix)|filtro]].
'''comm''' (abbreviazione dalla [[lingua inglese]] di '''''comm'''on'', ''in comune'') è 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/comm.html
|titolo=comm
|accesso=05-06-5 giugno 2008
|opera=The Open Group Base Specifications Issue 6 IEEE Std 1003.1, 2004 Edition
|lingua=en
'''comm''' (abbreviazione dall'inglese '''''comm'''on''}}</ref>, ''in comune'') è un comando dei [[Sistema operativo|sistemi operativi]] [[Unix]] e [[Unix-like]] che, datilegge due [[file di testo]] le cui linee sono ordinate, e mostra sullo ''[[standard output]]'' le linee in comune e le linee presenti solo in uno dei due file. È un tipo di [[Filtro (Unix)|filtro]].
 
Per ordinare i file da usare con ''comm'' si può usare il comando [[Sort (Unix)|sort]].
 
In generale, per trovare le differenze tra due file di testo si può usare il comando [[diff]].
 
== UsoSintassi ==
La sintassi generale di ''comm'' è la seguente:
comm [''opzioni''] [--] ''file1'' ''file2''
 
I parametri ''file'' indicano i nomi dei file da esaminare, che devono essere già ordinati. Uno dei due parametri può anche essere un trattino ("<ttkbd>-</ttkbd>"), indicando in quel caso che vanno letti i dati dallo ''[[standard input]]''.
 
Il doppio trattino <kbd>--</kbd> (facoltativo) indica che i parametri successivi non sono da considerarsi opzioni.
Il comportamento predefinito prevede di un formato di [[output]] su tre colonne, che rispettivamente contengono:
 
Il comportamento predefinito prevede di un formato di [[input/output|output]] su tre colonne, che rispettivamente contengono:
# le linee presenti solo nel primo file;
# le linee presenti solo nel secondo file.
Line 13 ⟶ 26:
 
Tra le opzioni vi sono:
* ;<ttkbd>-1</ttkbd>: Non visualizza la colonna con le linee presenti solo nel primo file.
* ;<ttkbd>-2</ttkbd>: Non visualizza la colonna con le linee presenti solo nel secondo file.
* ;<ttkbd>-3</ttkbd>: Non visualizza la colonna con le linee comuni a entrambi i file.
 
== Esempi ==
Partendo due [[file di testo]] contenenti le seguenti linee (ordinate):
{{Colonne}}
<kbd>file1.txt</kbd>:
arancio
banana
carota
{{Colonne spezza}}
<kbd>file2.txt</kbd>:
arancio
banana
banana
zucchine
{{Colonne fine}}
 
Mostra le linee presenti in solo uno dei due file e quelle presenti in entrambi (notare che <kbd>banana</kbd> è riportata sia come presente in entrambi i file che come presente solo nel secondo file, perché è ripetuta più volte nel secondo file):
$ '''comm file1.txt file2.txt'''
arancio
banana
banana
carota
zucchine
 
Mostra solo le linee presenti in entrambi i file:
$ '''comm -12 file1.txt file2.txt'''
arancio
banana
 
Mostra le linee presenti solo nel primo file:
$ '''comm -23 file1.txt file2.txt'''
carota
 
Mostra le linee presenti solo nel secondo file (<kbd>banana</kbd> viene indicato perché si riferisce alla seconda ripetizione, che non è presente nel primo file):
$ '''comm -13 file1.txt file2.txt'''
banana
zucchine
 
== Note ==
<references />
 
== Voci correlate ==
* [[Filtro (Unix)]]
* [[Cmpcmp (Unix)]]
* [[diff]]
 
== Collegamenti esterni ==
* {{cita web
|url=httphttps://www.opengroupgnu.org/onlinepubssoftware/000095399coreutils/utilitiesmanual/html_node/comm-invocation.html#comm-invocation
|titolo=comm
|accesso=05-06-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/comm-invocation.html#comm-invocation
|titolo=comm: Compare two sorted files line by line
|accesso=05-06-5 giugno 2008
|opera=GNU Coreutils manual
|lingua=en
}}
 
{{Comandi Unix}}
{{Portale|informatica}}
 
[[Categoria:SoftwareComandi Unix]]
[[Categoria:Software LinuxCoreutils]]
 
[[en:Comm]]